converted stl media_type to plugin
[mediagoblin.git] / mediagoblin / media_types / stl / __init__.py
index 6ae8a8b9b5f926b4c98b09b32bc265617e7aacca..192b576174f4a68519c993f4616288e4498039ed 100644 (file)
 from mediagoblin.media_types import MediaManagerBase
 from mediagoblin.media_types.stl.processing import process_stl, \
     sniff_handler
+from mediagoblin.tools import pluginapi
+
+MEDIA_TYPE = 'mediagoblin.media_types.stl'
+ACCEPTED_EXTENSIONS = ["obj", "stl"]
+
+
+def setup_plugin():
+    config = pluginapi.get_config(MEDIA_TYPE)
 
 
 class STLMediaManager(MediaManagerBase):
     human_readable = "stereo lithographics"
     processor = staticmethod(process_stl)
-    sniff_handler = staticmethod(sniff_handler)
     display_template = "mediagoblin/media_displays/stl.html"
     default_thumb = "images/media_thumbs/video.jpg"
-    accepted_extensions = ["obj", "stl"]
 
 
-MEDIA_MANAGER = STLMediaManager
+def get_media_manager(media_type):
+    if media_type == MEDIA_TYPE:
+        return STLMediaManager
+
+
+def get_media_type_and_manager(ext):
+    if ext in ACCEPTED_EXTENSIONS:
+        return MEDIA_TYPE, STLMediaManager
+
+hooks = {
+    'setup': setup_plugin,
+    'get_media_type_and_manager': get_media_type_and_manager,
+    'sniff_handler': sniff_handler,
+    'get_media_manager': get_media_manager,
+}