import logging

from .resident_socket import send_to_socket

from defence360agent.rpc_tools.lookup import RootEndpoints, bind
from defence360agent.utils import Scope, check_disabled_firewall

logger = logging.getLogger(__name__)

UpdateCustomListsTimeout = 60  # seconds


class CustomListsEndpoints(RootEndpoints):
    SCOPE = Scope.IM360

    @bind("reload-lists")
    @check_disabled_firewall
    async def reload_lists(self):
        return await send_to_socket(
            msg={
                "method": "UPDATE_CUSTOM_LISTS",
            },
            timeout=UpdateCustomListsTimeout,
            wait_for_response=False,
        )
