2424#
2525###############################################################################
2626import logging
27- from typing import Generic , Optional , Type
27+ from typing import Generic , Optional , Type , Union
2828
2929from nodescraper .enums import EventPriority , ExecutionStatus , SystemInteractionLevel
3030from nodescraper .generictypes import TAnalyzeArg , TCollectArg , TDataModel
@@ -64,7 +64,7 @@ def __init__(
6464 system_info : SystemInfo ,
6565 logger : Optional [logging .Logger ] = None ,
6666 connection_manager : Optional [TConnectionManager ] = None ,
67- connection_args : Optional [TConnectArg | dict ] = None ,
67+ connection_args : Optional [Union [ TConnectArg , dict ] ] = None ,
6868 task_result_hooks : Optional [list [TaskResultHook ]] = None ,
6969 log_path : Optional [str ] = None ,
7070 ** kwargs ,
@@ -127,7 +127,7 @@ def data(self) -> Optional[TDataModel]:
127127 return self ._data
128128
129129 @data .setter
130- def data (self , data : str | dict | TDataModel ):
130+ def data (self , data : Optional [ str , dict , TDataModel ] ):
131131 if isinstance (data , (str , dict )):
132132 self ._data = self .DATA_MODEL .import_model (data )
133133 elif not isinstance (data , self .DATA_MODEL ):
@@ -137,15 +137,17 @@ def data(self, data: str | dict | TDataModel):
137137
138138 def collect (
139139 self ,
140- max_event_priority_level : EventPriority | str = EventPriority .CRITICAL ,
141- system_interaction_level : SystemInteractionLevel | str = SystemInteractionLevel .INTERACTIVE ,
140+ max_event_priority_level : Optional [Union [EventPriority , str ]] = EventPriority .CRITICAL ,
141+ system_interaction_level : Optional [
142+ Union [SystemInteractionLevel , str ]
143+ ] = SystemInteractionLevel .INTERACTIVE ,
142144 preserve_connection : bool = False ,
143- collection_args : Optional [TCollectArg | dict ] = None ,
145+ collection_args : Optional [Union [ TCollectArg , dict ] ] = None ,
144146 ) -> TaskResult :
145147 """Run data collector task
146148
147149 Args:
148- max_event_priority_level (EventPriority | str, optional): priority limit for events. Defaults to EventPriority.CRITICAL.
150+ max_event_priority_level (Union[ EventPriority, str] , optional): priority limit for events. Defaults to EventPriority.CRITICAL.
149151 system_interaction_level (SystemInteractionLevel | str, optional): system interaction level. Defaults to SystemInteractionLevel.INTERACTIVE.
150152 preserve_connection (bool, optional): whether we should close the connection after data collection. Defaults to False.
151153 collection_args (Optional[TCollectArg | dict], optional): args for data collection. Defaults to None.
@@ -227,16 +229,16 @@ def collect(
227229
228230 def analyze (
229231 self ,
230- max_event_priority_level : EventPriority | str = EventPriority .CRITICAL ,
232+ max_event_priority_level : Optional [ Union [ EventPriority , str ]] = EventPriority .CRITICAL ,
231233 analysis_args : Optional [TAnalyzeArg | dict ] = None ,
232- data : Optional [str | dict | TDataModel ] = None ,
234+ data : Optional [Union [ str , dict , TDataModel ] ] = None ,
233235 ) -> TaskResult :
234236 """Run data analyzer task
235237
236238 Args:
237- max_event_priority_level (EventPriority | str, optional): priority limit for events. Defaults to EventPriority.CRITICAL.
239+ max_event_priority_level (Union[ EventPriority, str] , optional): priority limit for events. Defaults to EventPriority.CRITICAL.
238240 analysis_args (Optional[TAnalyzeArg | dict], optional): args for data analysis. Defaults to None.
239- data (Optional[str | dict | TDataModel], optional): data to analyze. Defaults to None.
241+ data (Optional[Union[ str, dict, TDataModel] ], optional): data to analyze. Defaults to None.
240242
241243 Returns:
242244 TaskResult: result of data analysis
@@ -276,10 +278,10 @@ def run(
276278 self ,
277279 collection : bool = True ,
278280 analysis : bool = True ,
279- max_event_priority_level : EventPriority | str = EventPriority .CRITICAL ,
281+ max_event_priority_level : Union [ EventPriority , str ] = EventPriority .CRITICAL ,
280282 system_interaction_level : SystemInteractionLevel | str = SystemInteractionLevel .INTERACTIVE ,
281283 preserve_connection : bool = False ,
282- data : Optional [str | dict | TDataModel ] = None ,
284+ data : Optional [Union [ str , dict , TDataModel ] ] = None ,
283285 collection_args : Optional [TCollectArg | dict ] = None ,
284286 analysis_args : Optional [TAnalyzeArg | dict ] = None ,
285287 ) -> PluginResult :
@@ -288,10 +290,10 @@ def run(
288290 Args:
289291 collection (bool, optional): Enable data collection. Defaults to True.
290292 analysis (bool, optional): Enable data analysis. Defaults to True.
291- max_event_priority_level (EventPriority | str, optional): Max priority level to assign to events. Defaults to EventPriority.CRITICAL.
293+ max_event_priority_level (Union[ EventPriority, str] , optional): Max priority level to assign to events. Defaults to EventPriority.CRITICAL.
292294 system_interaction_level (SystemInteractionLevel | str, optional): System interaction level. Defaults to SystemInteractionLevel.INTERACTIVE.
293295 preserve_connection (bool, optional): Whether to close the connection when data collection is complete. Defaults to False.
294- data (Optional[str | dict | TDataModel], optional): Input data. Defaults to None.
296+ data (Optional[Union[ str, dict, TDataModel] ], optional): Input data. Defaults to None.
295297 collection_args (Optional[TCollectArg | dict], optional): Arguments for data collection. Defaults to None.
296298 analysis_args (Optional[TAnalyzeArg | dict], optional): Arguments for data analysis. Defaults to None.
297299
0 commit comments