D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
opt
/
imunify360
/
venv
/
lib
/
python3.11
/
site-packages
/
defence360agent
/
plugins
/
Filename :
event_hook_executor.py
back
Copy
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))