twisted.persisted.dirdbm.DirDBM

Package twisted :: Package persisted :: Module dirdbm :: Class DirDBM |
[frames | no frames]

## Class DirDBM

Known Subclasses:
  `Shelf`

A directory with a DBM interface.

This class presents a hash-like interface to a directory of small, flat files. It can only use strings as keys or values.

Method Summary
| ``__init__`(self, name)`
| ``__contains__`(self, key)` `key in dirdbm`
| ``__delitem__`(self, k)` `del dirdbm[foo]` Delete a file in this directory.
| ``__getitem__`(self, k)` `dirdbm[k]` Get the contents of a file in this directory as a string.
| ``__len__`(self)` Return the number of key/value pairs in this Shelf
| ``__setitem__`(self, k, v)` `dirdbm[k] = v` Create or modify a textfile in this directory
| ``_decode`(self, k)` Decode a filename to get the key.
| ``_encode`(self, k)` Encode a key so it can be used as a filename.
| ``_readFile`(self, path)` Read in the contents of a file.
| ``_writeFile`(self, path, data)` Write data to a file.
| ``clear`(self)` Delete all key/value pairs in this dirdbm.
| ``close`(self)` Close this dbm: no-op, for dbm-style interface compliance.
`DirDBM` | ``copyTo`(self, path)` Copy the contents of this dirdbm to the dirdbm at `path`.
| ``get`(self, key, default)` Return the value associated with `key` or `default` if not `self.has_key(key)`
| ``getModificationTime`(self, key)` Returns modification time of an entry.
| ``has_key`(self, key)` Return a true value if this dirdbm has the specified key, a faluse value otherwise.
| ``items`(self)` Return a `list` of 2-tuples containing key/value pairs.
| ``keys`(self)` Return a `list` of filenames (keys).
| ``setdefault`(self, key, value)`
| ``update`(self, dict)` Add all the key/value pairs in `dict` to this dirdbm.
| ``values`(self)` Return a `list` of file-contents (values).

Method Details

### __init__(self, name) (Constructor) Parameters: `name` - Base path to use for the directory storage. (type=str)

### __contains__(self, key) (In operator) `key in dirdbm` Parameters: `key` - The key to test (type=str) Returns: A true value if `self.has_key(key)`, a false value otherwise.

### __delitem__(self, k) (Index deletion operator) `del dirdbm[foo]` Delete a file in this directory. Parameters: `k` - key to delete (type=str) Raises: `KeyError` - Raised when there is no such key

### __getitem__(self, k) (Indexing operator) `dirdbm[k]` Get the contents of a file in this directory as a string. Parameters: `k` - key to lookup (type=str) Returns: The value associated with `k` Raises: `KeyError` - Raised when there is no such key

### __len__(self) (Length operator) Returns: The number of key/value pairs in this Shelf

### __setitem__(self, k, v) (Index assignment operator) `dirdbm[k] = v` Create or modify a textfile in this directory Parameters: `k` - key to set (type=str) `v` - value to associate with `k` (type=str)

### _decode(self, k) Decode a filename to get the key.

### _encode(self, k) Encode a key so it can be used as a filename.

### _readFile(self, path) Read in the contents of a file. Override in subclasses to e.g. provide transparently encrypted dirdbm.

### _writeFile(self, path, data) Write data to a file. Override in subclasses to e.g. provide transparently encrypted dirdbm.

### clear(self) Delete all key/value pairs in this dirdbm.

### close(self) Close this dbm: no-op, for dbm-style interface compliance.

### copyTo(self, path) Copy the contents of this dirdbm to the dirdbm at `path`. Parameters: `path` - The path of the dirdbm to copy to. If a dirdbm exists at the destination path, it is cleared first. (type=`str`) Returns: The dirdbm this dirdbm was copied to. (type=`DirDBM`)

### get(self, key, default=None) Parameters: `key` - The key to lookup (type=str) `default` - The value to return if the given key does not exist Returns: The value associated with `key` or `default` if not `self.has_key(key)`

### getModificationTime(self, key) Returns modification time of an entry. Returns: Last modification date (seconds since epoch) of entry `key` Raises: `KeyError` - Raised when there is no such key

### has_key(self, key) Parameters: `key` - The key to test (type=str) Returns: A true value if this dirdbm has the specified key, a faluse value otherwise.

### items(self) Returns: a `list` of 2-tuples containing key/value pairs.

### keys(self) Returns: a `list` of filenames (keys).

### setdefault(self, key, value) Parameters: `key` - The key to lookup (type=str) `value` - The value to associate with key if key is not already associated with a value.

### update(self, dict) Add all the key/value pairs in `dict` to this dirdbm. Any conflicting keys will be overwritten with the values from `dict`. Parameters: `dict` - A mapping of key/value pairs to add to this dirdbm. (type=mapping)

### values(self) Returns: a `list` of file-contents (values).

Generated by Epydoc 2.0 on Sat May 15 20:08:46 2004 | http://epydoc.sf.net