MCPcopy Create free account
hub / github.com/StackStorm/st2 / SensorService

Class SensorService

st2reactor/st2reactor/container/sensor_wrapper.py:63–162  ·  view source on GitHub ↗

Instance of this class is passed to the sensor instance and exposes "public" methods which can be called by the sensor.

Source from the content-addressed store, hash-verified

61
62
63class SensorService(object):
64 """
65 Instance of this class is passed to the sensor instance and exposes "public"
66 methods which can be called by the sensor.
67 """
68
69 def __init__(self, sensor_wrapper):
70 self._sensor_wrapper = sensor_wrapper
71 self._logger = self._sensor_wrapper._logger
72
73 self._trigger_dispatcher_service = TriggerDispatcherService(
74 logger=sensor_wrapper._logger
75 )
76 self._datastore_service = SensorDatastoreService(
77 logger=self._logger,
78 pack_name=self._sensor_wrapper._pack,
79 class_name=self._sensor_wrapper._class_name,
80 api_username="sensor_service",
81 )
82
83 self._client = None
84
85 @property
86 def datastore_service(self):
87 return self._datastore_service
88
89 def get_logger(self, name):
90 """
91 Retrieve an instance of a logger to be used by the sensor class.
92 """
93 logger_name = "%s.%s" % (self._sensor_wrapper._logger.name, name)
94 logger = logging.getLogger(logger_name)
95 logger.propagate = True
96
97 return logger
98
99 ##################################
100 # General methods
101 ##################################
102
103 def get_user_info(self):
104 return self._datastore_service.get_user_info()
105
106 ##################################
107 # Sensor related methods
108 ##################################
109
110 def dispatch(self, trigger, payload=None, trace_tag=None):
111 # Provided by the parent BaseTriggerDispatcherService class
112 return self._trigger_dispatcher_service.dispatch(
113 trigger=trigger,
114 payload=payload,
115 trace_tag=trace_tag,
116 throw_on_validation_error=False,
117 )
118
119 def dispatch_with_context(self, trigger, payload=None, trace_context=None):
120 """

Callers 2

setUpMethod · 0.90
_get_sensor_instanceMethod · 0.85

Calls

no outgoing calls

Tested by 1

setUpMethod · 0.72