converted stl media_type to plugin
This commit is contained in:
parent
51e4e43504
commit
239296b004
@ -17,15 +17,35 @@
|
|||||||
from mediagoblin.media_types import MediaManagerBase
|
from mediagoblin.media_types import MediaManagerBase
|
||||||
from mediagoblin.media_types.stl.processing import process_stl, \
|
from mediagoblin.media_types.stl.processing import process_stl, \
|
||||||
sniff_handler
|
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):
|
class STLMediaManager(MediaManagerBase):
|
||||||
human_readable = "stereo lithographics"
|
human_readable = "stereo lithographics"
|
||||||
processor = staticmethod(process_stl)
|
processor = staticmethod(process_stl)
|
||||||
sniff_handler = staticmethod(sniff_handler)
|
|
||||||
display_template = "mediagoblin/media_displays/stl.html"
|
display_template = "mediagoblin/media_displays/stl.html"
|
||||||
default_thumb = "images/media_thumbs/video.jpg"
|
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,
|
||||||
|
}
|
||||||
|
@ -29,6 +29,7 @@ from mediagoblin.media_types.stl import model_loader
|
|||||||
|
|
||||||
_log = logging.getLogger(__name__)
|
_log = logging.getLogger(__name__)
|
||||||
SUPPORTED_FILETYPES = ['stl', 'obj']
|
SUPPORTED_FILETYPES = ['stl', 'obj']
|
||||||
|
MEDIA_TYPE = 'mediagoblin.media_types.stl'
|
||||||
|
|
||||||
BLEND_FILE = pkg_resources.resource_filename(
|
BLEND_FILE = pkg_resources.resource_filename(
|
||||||
'mediagoblin.media_types.stl',
|
'mediagoblin.media_types.stl',
|
||||||
@ -43,13 +44,14 @@ BLEND_SCRIPT = pkg_resources.resource_filename(
|
|||||||
|
|
||||||
|
|
||||||
def sniff_handler(media_file, **kw):
|
def sniff_handler(media_file, **kw):
|
||||||
|
_log.info('Sniffing {0}'.format(MEDIA_TYPE))
|
||||||
if kw.get('media') is not None:
|
if kw.get('media') is not None:
|
||||||
name, ext = os.path.splitext(kw['media'].filename)
|
name, ext = os.path.splitext(kw['media'].filename)
|
||||||
clean_ext = ext[1:].lower()
|
clean_ext = ext[1:].lower()
|
||||||
|
|
||||||
if clean_ext in SUPPORTED_FILETYPES:
|
if clean_ext in SUPPORTED_FILETYPES:
|
||||||
_log.info('Found file extension in supported filetypes')
|
_log.info('Found file extension in supported filetypes')
|
||||||
return True
|
return MEDIA_TYPE
|
||||||
else:
|
else:
|
||||||
_log.debug('Media present, extension not found in {0}'.format(
|
_log.debug('Media present, extension not found in {0}'.format(
|
||||||
SUPPORTED_FILETYPES))
|
SUPPORTED_FILETYPES))
|
||||||
@ -57,7 +59,7 @@ def sniff_handler(media_file, **kw):
|
|||||||
_log.warning('Need additional information (keyword argument \'media\')'
|
_log.warning('Need additional information (keyword argument \'media\')'
|
||||||
' to be able to handle sniffing')
|
' to be able to handle sniffing')
|
||||||
|
|
||||||
return False
|
return None
|
||||||
|
|
||||||
|
|
||||||
def blender_render(config):
|
def blender_render(config):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user