src/pyams_media/utility.py
changeset 76 6fd737a311f0
parent 65 d38220c1116e
equal deleted inserted replaced
75:73e3b79a71b1 76:6fd737a311f0
    15 
    15 
    16 # import standard library
    16 # import standard library
    17 
    17 
    18 # import interfaces
    18 # import interfaces
    19 from pyams_media.interfaces import IMediaConversionUtility, CONVERTER_HANDLER_KEY, CUSTOM_AUDIO_TYPES, \
    19 from pyams_media.interfaces import IMediaConversionUtility, CONVERTER_HANDLER_KEY, CUSTOM_AUDIO_TYPES, \
    20     CUSTOM_VIDEO_TYPES
    20     CUSTOM_VIDEO_TYPES, CONVERTER_AUTH_KEY
    21 from zope.intid.interfaces import IIntIds
    21 from zope.intid.interfaces import IIntIds
    22 
    22 
    23 # import packages
    23 # import packages
    24 from persistent import Persistent
    24 from persistent import Persistent
    25 from pyams_utils.registry import get_utility
    25 from pyams_utils.registry import get_utility
    61         else:
    61         else:
    62             requested_formats = ()
    62             requested_formats = ()
    63         for format in requested_formats:
    63         for format in requested_formats:
    64             self.convert(media, format)
    64             self.convert(media, format)
    65 
    65 
    66     def _get_socket(self):
    66     def get_socket(self):
    67         registry = get_current_registry()
    67         registry = get_current_registry()
    68         handler = registry.settings.get(CONVERTER_HANDLER_KEY, False)
    68         handler = registry.settings.get(CONVERTER_HANDLER_KEY, False)
    69         if handler:
    69         if handler:
    70             return zmq_socket(handler)
    70             return zmq_socket(handler, auth=registry.settings.get(CONVERTER_AUTH_KEY))
    71 
    71 
    72     def convert(self, media, format):
    72     def convert(self, media, format):
    73         """Send conversion request for given media"""
    73         """Send conversion request for given media"""
    74         socket = self._get_socket()
    74         socket = self.get_socket()
    75         if socket is None:
    75         if socket is None:
    76             return [501, "No socket handler defined in configuration file"]
    76             return [501, "No socket handler defined in configuration file"]
    77         intids = get_utility(IIntIds)
    77         intids = get_utility(IIntIds)
    78         settings = {'zodb_name': self.zodb_name,
    78         settings = {'zodb_name': self.zodb_name,
    79                     'media': intids.register(media),
    79                     'media': intids.register(media),
    81         socket.send_json(['convert', settings])
    81         socket.send_json(['convert', settings])
    82         return zmq_response(socket)
    82         return zmq_response(socket)
    83 
    83 
    84     def test_process(self):
    84     def test_process(self):
    85         """Send test request to conversion process"""
    85         """Send test request to conversion process"""
    86         socket = self._get_socket()
    86         socket = self.get_socket()
    87         if socket is None:
    87         if socket is None:
    88             return [501, "No socket handler defined in configuration file"]
    88             return [501, "No socket handler defined in configuration file"]
    89         socket.send_json(['test', {}])
    89         socket.send_json(['test', {}])
    90         return zmq_response(socket)
    90         return zmq_response(socket)