"""Endpoints for the `kcarectl` command."""
from defence360agent.rpc_tools import lookup
from defence360agent.utils import Scope
from defence360agent.subsys.features import kernel_care

__all__ = ["KernelCareEndpoints"]


class KernelCareEndpoints(lookup.RootEndpoints):
    SCOPE = Scope.IM360

    @lookup.bind("kcarectl", "plugin-info")
    async def plugin_info(self):
        return dict(items=await kernel_care.KernelCare().get_plugin_info())

    @lookup.bind("kcarectl", "disable-auto-update")
    async def disable_auto_update(self):
        await kernel_care.KernelCare().run_kcarectl("--disable-auto-update")
        return {}

    @lookup.bind("kcarectl", "enable-auto-update")
    async def enable_auto_update(self):
        await kernel_care.KernelCare().run_kcarectl("--enable-auto-update")
        return {}
