Class s.c.s.d.DBMStorage(object):

Part of spamfighter.core.storage.dbm View Source View In Hierarchy

Надежное хранилище ключей. Элементы хранилища хранятся в BDB (anydbm) базе данных на локальном диске. Поддерживается интерфейс expire-ключей (удаляемых по истечение некоторого времени).
Instance Variablesdbссылка на базу данных anydbm
Method __init__ Конструктор.
Method set Записать (перезаписать) значение ключа.
Method get Получить значения ключа.
Method add Добавить ключ в хранилище.
Method append Дописать в конец значения ключа еще один элемент.
Method incr Увеличить значение ключа на единицу (тип значения - целое число).
Method delete Удалить ключ из хранилища.
Method _fetch Получить значение ключа.
def __init__(self, dir, name): (source)
Конструктор.
Parametersdirподкаталог, в котором должны храниться файлы БД (type: str )
nameимя БД (type: str )
def _fetch(self, key): (source)
Получить значение ключа.
Parameterskeyключ (type: str )
Returnsпара (срок_годности, значение), если ключ есть в БД или (None, None), если он отсутствует
def set(self, key, value, expire): (source)
Записать (перезаписать) значение ключа.
Parameterskeyключ (type: str )
valueзначение (type: str или int )
expireвремя жизни ключа в секундах, 0 - хранить "вечно" (type: int )
ReturnsDeferred о завершении операции (type: twisted.internet.Deferred )
def get(self, key): (source)
Получить значения ключа.

Если ключ не найден (не существует, потерян, истекло время жизни), возвращается исключение KeyError.

Parameterskeyключ (type: str )
ReturnsDeferred значение ключа, str или int (type: twisted.internet.Deferred )
def add(self, key, value, expire): (source)
Добавить ключ в хранилище.

Операция аналогична set, но если ключ уже существует, будет возвращена ошибка KeyError.

Parameterskeyключ (type: str )
valueзначение
expireвремя жизни ключа в секундах, 0 - хранить "вечно" (type: int )
ReturnsDeferred о завершении операции (type: twisted.internet.Deferred )
def append(self, key, value): (source)
Дописать в конец значения ключа еще один элемент. Работает только над существующими ключами, если ключ не существует, будет возвращена ошибка KeyError.
Parameterskeyключ (type: str )
valueдописываемое значение
ReturnsDeferred о завершении операции (type: twisted.internet.Deferred )
def incr(self, key, value=1): (source)
Увеличить значение ключа на единицу (тип значения - целое число). Работает только над существующими ключами, если ключ не существует, будет возвращена ошибка KeyError.
Parameterskeyключ (type: str )
valueвеличина инкремента (type: int )
ReturnsDeferred с новым значением ключа, int (type: twisted.internet.Deferred )
def delete(self, key): (source)
Удалить ключ из хранилища.

Если ключ не найден, возвращается исключение KeyError.

Parameterskeyключ (type: str )
ReturnsDeferred о завершении операции (type: twisted.internet.Deferred )
API Documentation for SpamFighter, generated by pydoctor at 2009-02-27 11:58:37.