from mgrctl.api.base import BaseAPI, BaseAuthAPI, BaseDnsProxyAPI, BaseIpAPI


class AuthAPI(BaseAuthAPI):
    pass


class BackupAPI(BaseAPI):
    def __init__(self):
        super().__init__()
        self.API_VERSION = 'v4'
        self.API_DEFINITION = 'backup'


class DnsProxyAPI(BaseDnsProxyAPI):
    pass


class EserviceAPI(BaseAPI):
    def __init__(self):
        super().__init__()
        self.API_DEFINITION = 'eservice'


class IsoAPI(BaseAPI):
    def __init__(self):
        super().__init__()
        self.API_DEFINITION = 'iso'


class IpmiAPI(BaseAPI):
    def __init__(self):
        super().__init__()
        self.API_DEFINITION = 'ipmiproxy'


class IpAPI(BaseIpAPI):
    pass


class ReportAPI(BaseAPI):
    def __init__(self):
        super().__init__()
        self.API_VERSION = 'v4'
        self.API_DEFINITION = 'report'


class UpdaterAPI(BaseAPI):
    def __init__(self):
        super().__init__()
        self.API_DEFINITION = 'updater'