Beaker

beaker.container – Container and Namespace classes

Container and Namespace classes

Module Contents

class beaker.container.Container
class beaker.container.ContainerMeta(classname, bases, dict_)
class beaker.container.DBMContainer
class beaker.container.DBMNamespaceManager(namespace, dbmmodule=None, data_dir=None, dbm_dir=None, lock_dir=None, digest_filenames=True, **kwargs)
class beaker.container.FileContainer
class beaker.container.FileNamespaceManager(namespace, data_dir=None, file_dir=None, lock_dir=None, digest_filenames=True, **kwargs)
class beaker.container.MemoryContainer
class beaker.container.MemoryNamespaceManager(namespace, **kwargs)
class beaker.container.NamespaceManager(namespace)

Handles dictionary operations and locking for a namespace of values.

The implementation for setting and retrieving the namespace data is handled by subclasses.

NamespaceManager may be used alone, or may be privately accessed by one or more Container objects. Container objects provide per-key services like expiration times and automatic recreation of values.

Multiple NamespaceManagers created with a particular name will all share access to the same underlying datasource and will attempt to synchronize against a common mutex object. The scope of this sharing may be within a single process or across multiple processes, depending on the type of NamespaceManager used.

The NamespaceManager itself is generally threadsafe, except in the case of the DBMNamespaceManager in conjunction with the gdbm dbm implementation.

set_value(key, value, expiretime=None)

Optional set_value() method called by Value.

Allows an expiretime to be passed, for namespace implementations which can prune their collections using expiretime.

class beaker.container.OpenResourceNamespaceManager(namespace)
A NamespaceManager where read/write operations require opening/ closing of a resource which is possibly mutexed.
class beaker.container.Value(key, namespace, createfunc=None, expiretime=None, starttime=None)
has_value()

return true if the container has a value stored.

This is regardless of it being expired or not.

Table Of Contents

Previous topic

beaker.cache – Cache module

Next topic

beaker.middleware – Middleware classes

This Page