Исходный код esu.dns_record

from esu.base import BaseAPI, Field, ObjectAlreadyHasId, ObjectHasNoId


[документация]class DnsRecord(BaseAPI): """ Args: id (str): Идентификатор Dns записи dns_id (str): Объект класса :class:`esu.Dns`. Днс зона, к которому относится днс запись data (str): дата Dns записи flag (str): флаг Dns записи host (str): хост Dns записи port (str): порт Dns записи priority (str): приоритет Dns записи tag (str): тэг Dns записи ttl (str): ttl Dns записи type (str): тип Dns записи weight (str): вес Dns записи token (str): Токен для доступа к API. Если не передан, будет использована переменная окружения **ESU_API_TOKEN** .. note:: Поля ``data``, ``dns``, ``host``, ``ttl``, ``type`` необходимы для создания. """ class Meta: id = Field() dns = Field('esu.Dns') data = Field() flag = Field() host = Field() port = Field() priority = Field() tag = Field() ttl = Field() type = Field() weight = Field()
[документация] @classmethod def get_object(cls, dns, id, token=None): """ Получить объект Dns запись по его ID Args: id (str): Идентификатор Dns записи token (str): Токен для доступа к API. Если не передан, будет использована переменная окружения **ESU_API_TOKEN** Returns: object: Возвращает объект Dns :class:`esu.DnsRecord` """ dns_record = cls(token=token, id=id, dns=dns) dns_record._get_object('v1/dns/{}/record'.format(dns_record.dns.id), dns_record.id) return dns_record
[документация] def create(self): """ Создать объект Raises: ObjectAlreadyHasId: Если производится попытка создать объект, который уже существует """ if self.id is not None: raise ObjectAlreadyHasId self._commit()
[документация] def save(self): """ Сохранить изменения Raises: ObjectHasNoId: Если производится попытка сохранить несуществующий объект """ if self.id is None: raise ObjectHasNoId self._commit()
def _commit(self): self._commit_object('v1/dns/{}/record'.format(self.dns.id), data=self.data, flag=self.flag, host=self.host, port=self.port, priority=self.priority, type=self.type, tag=self.tag, ttl=self.ttl, weight=self.weight)
[документация] def destroy(self): """ Удалить объект Raises: ObjectHasNoId: Когда производится попытка удалить несуществующий объект """ if self.id is None: raise ObjectHasNoId self._destroy_object('v1/dns/{}/record'.format(self.dns.id), self.id) self.id = None