cloudns_sdk.slave

  1class SlaveZoneAPI:
  2    """
  3    Provides methods to manage slave zones.
  4
  5    Attributes:
  6        _auth_params (callable): Function to retrieve authentication parameters.
  7        make_request (callable): Function to make HTTP requests to the ClouDNS API.
  8    """
  9
 10    def __init__(self, auth_params, make_request):
 11        """
 12        Initializes the SlaveZoneAPI instance with authentication parameters and request function.
 13
 14        Args:
 15            auth_params (callable): Function that returns authentication parameters.
 16            make_request (callable): Function that makes HTTP requests to the ClouDNS API.
 17        """
 18        self._auth_params = auth_params
 19        self.make_request = make_request
 20
 21    def add_master_server(self, domain_name, master_ip):
 22        """
 23        Adds a master server to a slave zone.
 24
 25        Args:
 26            domain_name (str): Domain name or reverse zone name where the master server is to be added.
 27            master_ip (str): IP address of the master server.
 28
 29        Returns:
 30            dict: JSON response from the API.
 31        """
 32        params = self._auth_params({'domain-name': domain_name, 'master-ip': master_ip})
 33        return self.make_request('dns/add-master-server.json', method='GET', params=params)
 34
 35    def delete_master_server(self, domain_name, master_id):
 36        """
 37        Deletes a master server from a slave zone.
 38
 39        Args:
 40            domain_name (str): Domain name or reverse zone name from where the master server is to be deleted.
 41            master_id (int): ID of the master server, obtained from `list_master_servers`.
 42
 43        Returns:
 44            dict: JSON response from the API.
 45        """
 46        params = self._auth_params({'domain-name': domain_name, 'master-id': master_id})
 47        return self.make_request('dns/delete-master-server.json', method='GET', params=params)
 48
 49    def list_master_servers(self, domain_name):
 50        """
 51        Lists all master servers associated with a slave zone.
 52
 53        Args:
 54            domain_name (str): Domain name or reverse zone name to list master servers for.
 55
 56        Returns:
 57            dict: JSON response from the API.
 58        """
 59        params = self._auth_params({'domain-name': domain_name})
 60        return self.make_request('dns/master-servers.json', method='GET', params=params)
 61
 62    def list_transfer_servers(self, domain_name):
 63        """
 64        Lists available secondary servers for transferring a slave zone.
 65
 66        Args:
 67            domain_name (str): Domain name or reverse zone name to list available secondary servers for.
 68
 69        Returns:
 70            dict: JSON response from the API.
 71        """
 72        params = self._auth_params({'domain-name': domain_name})
 73        return self.make_request('dns/available-secondary-servers.json', method='GET', params=params)
 74
 75    def get_soa_of_server(self, domain_name, server_id):
 76        """
 77        Retrieves SOA details of a secondary server for a slave zone.
 78
 79        Args:
 80            domain_name (str): Domain name or reverse zone name to retrieve SOA details for.
 81            server_id (int): ID of the server, obtained from `list_transfer_servers`.
 82
 83        Returns:
 84            dict: JSON response from the API.
 85        """
 86        params = self._auth_params({'domain-name': domain_name, 'server-id': server_id})
 87        return self.make_request('dns/get-soa-secondary-zone.json', method='GET', params=params)
 88
 89    def export_slave_zone(self, domain_name):
 90        """
 91        Exports the configuration of a slave zone.
 92
 93        Args:
 94            domain_name (str): Domain name or reverse zone name to export configuration for.
 95
 96        Returns:
 97            dict: JSON response from the API.
 98        """
 99        params = self._auth_params({'domain-name': domain_name})
100        return self.make_request('dns/export-secondary-zone.json', method='GET', params=params)
class SlaveZoneAPI:
  2class SlaveZoneAPI:
  3    """
  4    Provides methods to manage slave zones.
  5
  6    Attributes:
  7        _auth_params (callable): Function to retrieve authentication parameters.
  8        make_request (callable): Function to make HTTP requests to the ClouDNS API.
  9    """
 10
 11    def __init__(self, auth_params, make_request):
 12        """
 13        Initializes the SlaveZoneAPI instance with authentication parameters and request function.
 14
 15        Args:
 16            auth_params (callable): Function that returns authentication parameters.
 17            make_request (callable): Function that makes HTTP requests to the ClouDNS API.
 18        """
 19        self._auth_params = auth_params
 20        self.make_request = make_request
 21
 22    def add_master_server(self, domain_name, master_ip):
 23        """
 24        Adds a master server to a slave zone.
 25
 26        Args:
 27            domain_name (str): Domain name or reverse zone name where the master server is to be added.
 28            master_ip (str): IP address of the master server.
 29
 30        Returns:
 31            dict: JSON response from the API.
 32        """
 33        params = self._auth_params({'domain-name': domain_name, 'master-ip': master_ip})
 34        return self.make_request('dns/add-master-server.json', method='GET', params=params)
 35
 36    def delete_master_server(self, domain_name, master_id):
 37        """
 38        Deletes a master server from a slave zone.
 39
 40        Args:
 41            domain_name (str): Domain name or reverse zone name from where the master server is to be deleted.
 42            master_id (int): ID of the master server, obtained from `list_master_servers`.
 43
 44        Returns:
 45            dict: JSON response from the API.
 46        """
 47        params = self._auth_params({'domain-name': domain_name, 'master-id': master_id})
 48        return self.make_request('dns/delete-master-server.json', method='GET', params=params)
 49
 50    def list_master_servers(self, domain_name):
 51        """
 52        Lists all master servers associated with a slave zone.
 53
 54        Args:
 55            domain_name (str): Domain name or reverse zone name to list master servers for.
 56
 57        Returns:
 58            dict: JSON response from the API.
 59        """
 60        params = self._auth_params({'domain-name': domain_name})
 61        return self.make_request('dns/master-servers.json', method='GET', params=params)
 62
 63    def list_transfer_servers(self, domain_name):
 64        """
 65        Lists available secondary servers for transferring a slave zone.
 66
 67        Args:
 68            domain_name (str): Domain name or reverse zone name to list available secondary servers for.
 69
 70        Returns:
 71            dict: JSON response from the API.
 72        """
 73        params = self._auth_params({'domain-name': domain_name})
 74        return self.make_request('dns/available-secondary-servers.json', method='GET', params=params)
 75
 76    def get_soa_of_server(self, domain_name, server_id):
 77        """
 78        Retrieves SOA details of a secondary server for a slave zone.
 79
 80        Args:
 81            domain_name (str): Domain name or reverse zone name to retrieve SOA details for.
 82            server_id (int): ID of the server, obtained from `list_transfer_servers`.
 83
 84        Returns:
 85            dict: JSON response from the API.
 86        """
 87        params = self._auth_params({'domain-name': domain_name, 'server-id': server_id})
 88        return self.make_request('dns/get-soa-secondary-zone.json', method='GET', params=params)
 89
 90    def export_slave_zone(self, domain_name):
 91        """
 92        Exports the configuration of a slave zone.
 93
 94        Args:
 95            domain_name (str): Domain name or reverse zone name to export configuration for.
 96
 97        Returns:
 98            dict: JSON response from the API.
 99        """
100        params = self._auth_params({'domain-name': domain_name})
101        return self.make_request('dns/export-secondary-zone.json', method='GET', params=params)

Provides methods to manage slave zones.

Attributes: _auth_params (callable): Function to retrieve authentication parameters. make_request (callable): Function to make HTTP requests to the ClouDNS API.

SlaveZoneAPI(auth_params, make_request)
11    def __init__(self, auth_params, make_request):
12        """
13        Initializes the SlaveZoneAPI instance with authentication parameters and request function.
14
15        Args:
16            auth_params (callable): Function that returns authentication parameters.
17            make_request (callable): Function that makes HTTP requests to the ClouDNS API.
18        """
19        self._auth_params = auth_params
20        self.make_request = make_request

Initializes the SlaveZoneAPI instance with authentication parameters and request function.

Args: auth_params (callable): Function that returns authentication parameters. make_request (callable): Function that makes HTTP requests to the ClouDNS API.

make_request
def add_master_server(self, domain_name, master_ip):
22    def add_master_server(self, domain_name, master_ip):
23        """
24        Adds a master server to a slave zone.
25
26        Args:
27            domain_name (str): Domain name or reverse zone name where the master server is to be added.
28            master_ip (str): IP address of the master server.
29
30        Returns:
31            dict: JSON response from the API.
32        """
33        params = self._auth_params({'domain-name': domain_name, 'master-ip': master_ip})
34        return self.make_request('dns/add-master-server.json', method='GET', params=params)

Adds a master server to a slave zone.

Args: domain_name (str): Domain name or reverse zone name where the master server is to be added. master_ip (str): IP address of the master server.

Returns: dict: JSON response from the API.

def delete_master_server(self, domain_name, master_id):
36    def delete_master_server(self, domain_name, master_id):
37        """
38        Deletes a master server from a slave zone.
39
40        Args:
41            domain_name (str): Domain name or reverse zone name from where the master server is to be deleted.
42            master_id (int): ID of the master server, obtained from `list_master_servers`.
43
44        Returns:
45            dict: JSON response from the API.
46        """
47        params = self._auth_params({'domain-name': domain_name, 'master-id': master_id})
48        return self.make_request('dns/delete-master-server.json', method='GET', params=params)

Deletes a master server from a slave zone.

Args: domain_name (str): Domain name or reverse zone name from where the master server is to be deleted. master_id (int): ID of the master server, obtained from list_master_servers.

Returns: dict: JSON response from the API.

def list_master_servers(self, domain_name):
50    def list_master_servers(self, domain_name):
51        """
52        Lists all master servers associated with a slave zone.
53
54        Args:
55            domain_name (str): Domain name or reverse zone name to list master servers for.
56
57        Returns:
58            dict: JSON response from the API.
59        """
60        params = self._auth_params({'domain-name': domain_name})
61        return self.make_request('dns/master-servers.json', method='GET', params=params)

Lists all master servers associated with a slave zone.

Args: domain_name (str): Domain name or reverse zone name to list master servers for.

Returns: dict: JSON response from the API.

def list_transfer_servers(self, domain_name):
63    def list_transfer_servers(self, domain_name):
64        """
65        Lists available secondary servers for transferring a slave zone.
66
67        Args:
68            domain_name (str): Domain name or reverse zone name to list available secondary servers for.
69
70        Returns:
71            dict: JSON response from the API.
72        """
73        params = self._auth_params({'domain-name': domain_name})
74        return self.make_request('dns/available-secondary-servers.json', method='GET', params=params)

Lists available secondary servers for transferring a slave zone.

Args: domain_name (str): Domain name or reverse zone name to list available secondary servers for.

Returns: dict: JSON response from the API.

def get_soa_of_server(self, domain_name, server_id):
76    def get_soa_of_server(self, domain_name, server_id):
77        """
78        Retrieves SOA details of a secondary server for a slave zone.
79
80        Args:
81            domain_name (str): Domain name or reverse zone name to retrieve SOA details for.
82            server_id (int): ID of the server, obtained from `list_transfer_servers`.
83
84        Returns:
85            dict: JSON response from the API.
86        """
87        params = self._auth_params({'domain-name': domain_name, 'server-id': server_id})
88        return self.make_request('dns/get-soa-secondary-zone.json', method='GET', params=params)

Retrieves SOA details of a secondary server for a slave zone.

Args: domain_name (str): Domain name or reverse zone name to retrieve SOA details for. server_id (int): ID of the server, obtained from list_transfer_servers.

Returns: dict: JSON response from the API.

def export_slave_zone(self, domain_name):
 90    def export_slave_zone(self, domain_name):
 91        """
 92        Exports the configuration of a slave zone.
 93
 94        Args:
 95            domain_name (str): Domain name or reverse zone name to export configuration for.
 96
 97        Returns:
 98            dict: JSON response from the API.
 99        """
100        params = self._auth_params({'domain-name': domain_name})
101        return self.make_request('dns/export-secondary-zone.json', method='GET', params=params)

Exports the configuration of a slave zone.

Args: domain_name (str): Domain name or reverse zone name to export configuration for.

Returns: dict: JSON response from the API.