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)
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.
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.
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.
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.
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.
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.
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.
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.