aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/media_types
diff options
context:
space:
mode:
authorSebastian Spaeth <Sebastian@SSpaeth.de>2012-12-04 09:57:56 +0100
committerSebastian Spaeth <Sebastian@SSpaeth.de>2012-12-04 15:15:41 +0100
commit5f8b4ae895ecb228c5f5d615818ffe0a06a30473 (patch)
tree2ead38386621af120360ae9f1b5b59e235bc060a /mediagoblin/media_types
parentc39b9afc83d5e0bfd9312d762a7b16955ba949ca (diff)
downloadmediagoblin-5f8b4ae895ecb228c5f5d615818ffe0a06a30473.tar.lz
mediagoblin-5f8b4ae895ecb228c5f5d615818ffe0a06a30473.tar.xz
mediagoblin-5f8b4ae895ecb228c5f5d615818ffe0a06a30473.zip
make media_manager a property of MediaEntry in mixin.py
In all cases where get_media_manager(_media_type_as_string) was called in our code base we ultimately passed in a "MediaEntry().media_type" to get the matching MEDIA_MANAGER. It so makes sense to make this a function of the MediaEntry rather than a global function in mediagoblin.media_types and passing around media_entry.media_type as arguments all the time. It saves a few import statements and arguments. I also made it so the Media_manager property is cached for subsequent calls, although I am not too sure that this is needed (there are other cases for which this would make more sense) Also add a get_media_manager test to the media submission tests. It submits an image and checks that both media.media_type and media.media_manager return the right thing. Not sure if these tests could not be merged with an existing submission test, but it can't hurt to have things explicit. TODO: Right now we iterate through all existing media_managers to find the right one based on the string of its module name. This should be made a simple dict lookup to avoid all the extra work. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
Diffstat (limited to 'mediagoblin/media_types')
-rw-r--r--mediagoblin/media_types/__init__.py19
1 files changed, 0 insertions, 19 deletions
diff --git a/mediagoblin/media_types/__init__.py b/mediagoblin/media_types/__init__.py
index 5bf0124c..06763510 100644
--- a/mediagoblin/media_types/__init__.py
+++ b/mediagoblin/media_types/__init__.py
@@ -78,25 +78,6 @@ def get_media_managers():
yield media_type, sys.modules[media_type].MEDIA_MANAGER
-def get_media_manager(_media_type):
- '''
- Get the MEDIA_MANAGER based on a media type string
-
- Example::
- get_media_type('mediagoblin.media_types.image')
- '''
- if not _media_type:
- return False
-
- for media_type, manager in get_media_managers():
- if media_type in _media_type:
- return manager
-
- # Nope? Then raise an error
- raise FileTypeNotSupported(
- "MediaManager not in enabled types. Check media_types in config?")
-
-
def get_media_type_and_manager(filename):
'''
Try to find the media type based on the file name, extension