From 6d37733a3f7e4180a3f8d97c8b3bb0ba57b85848 Mon Sep 17 00:00:00 2001 From: Elrond Date: Tue, 19 Mar 2013 12:50:00 +0100 Subject: [PATCH] Add MediaManagerBase class. This is the base class for all new style class based media managers. --- mediagoblin/media_types/__init__.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/mediagoblin/media_types/__init__.py b/mediagoblin/media_types/__init__.py index 81acaee8..91e3443b 100644 --- a/mediagoblin/media_types/__init__.py +++ b/mediagoblin/media_types/__init__.py @@ -32,6 +32,22 @@ class InvalidFileType(Exception): pass +class MediaManagerBase(object): + "Base class for all media managers" + + # Please override in actual media managers + media_fetch_order = None + + def __init__(self, entry): + self.entry = entry + + def __getitem__(self, i): + return getattr(self, i) + + def __contains__(self, i): + return hasattr(self, i) + + class CompatMediaManager(object): def __init__(self, mm_dict, entry=None): self.mm_dict = mm_dict