from logging import getLogger

from defence360agent.contracts.messages import MessageType
from defence360agent.contracts.plugins import MessageSink, expect
from im360.plugins.sensor.generic import send_to_agent_socket

logger = getLogger(__name__)


class Repeater(MessageSink):
    async def create_sink(self, loop):
        self._loop = loop

    @expect(MessageType.MalwareRescanFiles)
    async def resend_to_simple_socket(self, msg):
        send_to_agent_socket(
            ["malware", "rescan"], params={"files": msg.files}
        )
