From: Christopher Allan Webber Date: Sun, 17 Apr 2011 14:18:12 +0000 (-0500) Subject: Encourage storage systems to passively accept extraneous keyword X-Git-Url: https://vcs.fsf.org/?a=commitdiff_plain;h=5afb92275cddb1c971a80a4516c9a42de475c2d5;p=mediagoblin.git Encourage storage systems to passively accept extraneous keyword arguments w/ **kwargs. Also did that for BasicFileStorage. --- diff --git a/mediagoblin/storage.py b/mediagoblin/storage.py index c39f5325..d9a57c2a 100644 --- a/mediagoblin/storage.py +++ b/mediagoblin/storage.py @@ -65,9 +65,17 @@ class StorageInterface(object): It is important to note that the storage API idea of a "filepath" is actually like ['dir1', 'dir2', 'file.jpg'], so keep that in mind while reading method documentation. + + You should set up your __init__ method with whatever keyword + arguments are appropriate to your storage system, but you should + also passively accept all extraneous keyword arguments like: + + def __init__(self, **kwargs): + pass + + See BasicFileStorage as a simple implementation of the + StorageInterface. """ - # def __init__(self, *args, **kwargs): - # pass def __raise_not_implemented(self): """ @@ -142,7 +150,7 @@ class BasicFileStorage(StorageInterface): Basic local filesystem implementation of storage API """ - def __init__(self, base_dir, base_url=None): + def __init__(self, base_dir, base_url=None, **kwargs): """ Keyword arguments: - base_dir: Base directory things will be served out of. MUST