From 30a634e0a983f470e3663f93e182faed2128bbd9 Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Wed, 5 Feb 2003 04:12:41 +0000 Subject: [PATCH] SF patch #674396: Apply UserDict.DictMixin to expand dbshelve and dbojb to have a full dictionary interface. --- Lib/bsddb/dbobj.py | 3 ++- Lib/bsddb/dbshelve.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Lib/bsddb/dbobj.py b/Lib/bsddb/dbobj.py index 9268f5520e..f274d562ce 100644 --- a/Lib/bsddb/dbobj.py +++ b/Lib/bsddb/dbobj.py @@ -16,6 +16,7 @@ # import db +from UserDict import DictMixin class DBEnv: def __init__(self, *args, **kwargs): @@ -85,7 +86,7 @@ class DBEnv: return apply(self._cobj.set_encrypt, args, kwargs) -class DB: +class DB(DictMixin): def __init__(self, dbenv, *args, **kwargs): # give it the proper DBEnv C object that its expecting self._cobj = apply(db.DB, (dbenv._cobj,) + args, kwargs) diff --git a/Lib/bsddb/dbshelve.py b/Lib/bsddb/dbshelve.py index d466361eeb..34dc607dc9 100644 --- a/Lib/bsddb/dbshelve.py +++ b/Lib/bsddb/dbshelve.py @@ -30,6 +30,7 @@ storage. #------------------------------------------------------------------------ import cPickle +from UserDict import DictMixin try: # For Python 2.3 from bsddb import db @@ -75,7 +76,7 @@ def open(filename, flags=db.DB_CREATE, mode=0660, filetype=db.DB_HASH, #--------------------------------------------------------------------------- -class DBShelf: +class DBShelf(DictMixin): """ A shelf to hold pickled objects, built upon a bsddb DB object. It automatically pickles/unpickles data objects going to/from the DB. -- 2.50.1