API docs for “spamfighter.interfaces.IDomain”

# Class s.i.IDomain(Interface):

Part of spamfighter.interfaces View Source View In Hierarchy

Домен - единица настроек, привязки локальных элементов внутренного устройства СпамоБорца.

Все домены связаны в дерево, начинающееся главным доменом (глобально известным серверу).

Домен представляет из себя набор свойств и значений, при этом если какое-то свойство отсутствует у данного домена, он обращается за ним к домену-предку. Домен позволяет установить у себя произвольные свойства, удалить (перейти на свойства главного домена).

Доступ к доменам ограничивает партнер (`IPartner`), который обозначает границы пространства доменов, доступных данному пользователю. При каждом запросе кроме указания партнера обязательно указание домена (возможно, поддомена относительно главного домена партнера).

Method | parent | Получить предка данного домена.
Method | name | Имя домена (относительно пути).
Method | key | Ключ домена. Уникальное и постоянное свойство
Method | children | Получить список "дочерних" доменов.
Method | createSubdomain | Создать дочерний поддомен.
Method | walk | "Пройти" по пути от текущего домена.
Method | get | Получить значение свойства домена.
Method | delete | Удалить свойство из домена.
Method | set | Установить значение свойства в домене.
Method | list | Получить список имён свойств домена.
Method | has | Есть ли у домена указанное свойство?

def parent(): (source)
Получить предка данного домена.

Если предка нет, будет возвращено `None`.

Returns | (type: `IDomain` )

def name(): (source)
Имя домена (относительно пути).

Если домен корневой или не содержится в пути, имя может быть `None`.

Returns | имя домена (type: `str` )

def key(): (source)
Ключ домена. Уникальное и постоянное свойство каждого домена.

Returns | ключ домена (type: `str` )

def children(): (source)
Получить список "дочерних" доменов.

Returns | Deferred, результат - хэш (имя домена: домен) (`dict(``IDomain``)`) (type: `twisted.internet.defer.Deferred` )

def createSubdomain(name): (source)
Создать дочерний поддомен.

Parameters | name | имя поддомена (type: `str` )
Returns | Deferred с созданным поддоменом, `IDomain` (type: `twisted.internet.defer.Deferred` )
Raises | DomainDuplicateError | два поддомена с одинаковым именем не могут существовать

def walk(path): (source)
"Пройти" по пути от текущего домена.

Parameters | path | путь относительно текущего домена, строка со слэшами (type: `str` )
Returns | Deferred, найденный домен (`IDomain`) (type: `twisted.internet.defer.Deferred` )

def get(property): (source)
Получить значение свойства домена.

Если текущий домен не содержит информацию о данном свойстве, будет предпринято обращение к предку домена за данным свойством.

Parameters | property | имя свойства (type: `str` )
Returns | значение свойства

def delete(property): (source)
Удалить свойство из домена.

При следующем обращении к свойству оно будет получено через предка домена, т.е. это эквивалентно сбросу на "значение по умолчанию".

Parameters | property | имя свойства (type: `str` )
Returns | Deferred о результате операции (type: `twisted.internet.defer.Deferred` )

def set(property, value): (source)
Установить значение свойства в домене.

Данный метод может также создать свойство, если оно ранее не существовало и переопределить свойство домена-предка.

Parameters | property | имя свойства (type: `str` )
| value | значение свойства
Returns | Deferred о результате операции (type: `twisted.internet.defer.Deferred` )

def list(): (source)
Получить список имён свойств домена.

Returns | список имён свойств (type: `list(str)` )

def has(property): (source)
Есть ли у домена указанное свойство?

Parameters | property | имя свойства (type: `str` )
Returns | (type: `bool` )