Your IP : 3.147.73.117
from defence360agent.contracts.hook_events import HookEvent
from defence360agent.contracts.plugins import (
MessageSink,
MessageSource,
expect,
)
from defence360agent.hooks.execute import execute_hooks
EVENTS = (
HookEvent.AgentStarted,
HookEvent.AgentMisconfig,
HookEvent.LicenseExpired,
HookEvent.LicenseExpiring,
HookEvent.LicenseRenewed,
)
class EventHookExecutor(MessageSink, MessageSource):
PROCESSING_ORDER = MessageSink.ProcessingOrder.EVENT_HOOK
async def create_sink(self, loop):
self._loop = loop
async def create_source(self, loop, sink):
self._loop = loop
self._sink = sink
@expect(*EVENTS)
async def receive_event(self, event):
self._loop.create_task(execute_hooks(event))