Skip to content

Commit

Permalink
Merge pull request #15 from XiaonuoGantan/master
Browse files Browse the repository at this point in the history
Allow NoSQL backends to accept an expire argument
  • Loading branch information
didip committed Nov 20, 2013
2 parents f658f64 + d14f43e commit b45b10d
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 2 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,5 @@ build
*.py?
*.egg-info
*.swp
build/
dist/
6 changes: 4 additions & 2 deletions beaker_extensions/nosql.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
log = logging.getLogger(__name__)

class NoSqlManager(NamespaceManager):
def __init__(self, namespace, url=None, data_dir=None, lock_dir=None, **params):
def __init__(self, namespace, url=None, data_dir=None, lock_dir=None, expire=None, **params):
NamespaceManager.__init__(self, namespace)

if not url:
Expand All @@ -26,6 +26,8 @@ def __init__(self, namespace, url=None, data_dir=None, lock_dir=None, **params):
if hasattr(self, 'lock_dir'):
verify_directory(self.lock_dir)

self._expiretime = int(expire) if expire else None

conn_params = {}
parts = url.split('?', 1)
url = parts[0]
Expand Down Expand Up @@ -60,7 +62,7 @@ def set_value(self, key, value):
self.db_conn[self._format_key(key)] = pickle.dumps(value, 2)

def __setitem__(self, key, value):
self.set_value(key, value)
self.set_value(key, value, self._expiretime)

def __delitem__(self, key):
del self.db_conn[self._format_key(key)]
Expand Down

0 comments on commit b45b10d

Please sign in to comment.