def __init__(self, log, zepRawEvent): self._zepRawEvent = zepRawEvent self._event = self._zepRawEvent.event self._eventProxy = ZepRawEventProxy(self._zepRawEvent) # If this event is for a device, it will be attached here self._deviceObject = None self._componentObject = None self.log = EventLoggerAdapter(log, {'event_uuid': self._event.uuid})
class EventContext(object): """ Maintains the event context while processing. """ def __init__(self, log, zepRawEvent): self._zepRawEvent = zepRawEvent self._event = self._zepRawEvent.event self._eventProxy = ZepRawEventProxy(self._zepRawEvent) # If this event is for a device, it will be attached here self._deviceObject = None self._componentObject = None self.log = EventLoggerAdapter(log, {'event_uuid': self._event.uuid}) def setDeviceObject(self, device): self._deviceObject = device def refreshClearClasses(self): self._eventProxy._refreshClearClasses() @property def deviceObject(self): return self._deviceObject def setComponentObject(self, component): self._componentObject = component @property def componentObject(self): return self._componentObject @property def zepRawEvent(self): return self._zepRawEvent @property def event(self): return self._event @property def eventProxy(self): """ A EventProxy that wraps the event protobuf and makes it look like an old style event. """ return self._eventProxy
def test_0_TagUpdates(self): eventproto = from_dict(ZepRawEvent, self.initialEvent) proxy = ZepRawEventProxy(eventproto) proxy.tags.addAll('TAG_TYPE_1', ['value%d' % i for i in range(10)]) proxy.tags.addAll('TAG_TYPE_2', [ 'value0', ]) proxy.tags.addAll('TAG_TYPE_3', ['value0', 'value1']) self.assertEqual(self._countTags(eventproto.event), 13) proxy.tags.clearType('TAG_TYPE_1') self.assertEqual(self._countTags(eventproto.event), 3) self.assertEqual(len(proxy.tags.getByType('TAG_TYPE_3')), 2) proxy.tags.clearType('TAG_TYPE_3') self.assertEquals(self._countTags(eventproto.event), 1) self.assertEqual(len(proxy.tags.getByType('TAG_TYPE_2')), 1)