X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=storage.py;h=75b424dc31a553638d9daebf80ee3a3660f78825;hb=27d04395e10919fe08fb52b85ceaaa00543596de;hp=0e2b679874b3750b81d11f5e3323224e5c141fbb;hpb=c9cfb54ef36e77aee7187e4533f063d407073ad8;p=bookmarks_db.git diff --git a/storage.py b/storage.py index 0e2b679..75b424d 100644 --- a/storage.py +++ b/storage.py @@ -1,24 +1,30 @@ """Thin wrapper for module Storage. Provides "default" storage This file is a part of Bookmarks database and Internet robot. + """ -__version__ = "$Revision$"[11:-2] -__revision__ = "$Id$"[5:-2] -__date__ = "$Date$"[7:-2] __author__ = "Oleg Broytman " -__copyright__ = "Copyright (C) 1997-2011 PhiloSoft Design" +__copyright__ = "Copyright (C) 1997-2023 PhiloSoft Design" __license__ = "GNU GPL" __all__ = ['import_storage', 'storage'] from os import environ -storage_name = environ.get("BKMK_STORAGE", "pickle") +from bkmk_objects import parse_params, set_params + +storage_name, storage_params = parse_params( + environ.get("BKMK_STORAGE", "pickle")) + def import_storage(storage_name): - exec "from Storage import bkmk_st%s" % storage_name - exec "storage = bkmk_st%s.storage_%s" % (storage_name, storage_name) - return storage + ns = locals() + exec("from Storage import bkmk_st%s" % storage_name, globals(), ns) + exec("storage = bkmk_st%s.storage_%s" % + (storage_name, storage_name), globals(), ns) + return ns['storage'] + storage = import_storage(storage_name) +set_params(storage, storage_params)