http: Move MopidyHttpRouter into handlers module
This commit is contained in:
parent
252eb4d735
commit
684a64405d
@ -34,7 +34,8 @@ class Extension(ext.Extension):
|
||||
raise exceptions.ExtensionError('tornado library not found', e)
|
||||
|
||||
def setup(self, registry):
|
||||
from .actor import HttpFrontend, MopidyHttpRouter
|
||||
from .actor import HttpFrontend
|
||||
from .handlers import MopidyHttpRouter
|
||||
|
||||
HttpFrontend.routers = registry['http:router']
|
||||
|
||||
|
||||
@ -11,15 +11,13 @@ import tornado.ioloop
|
||||
import tornado.web
|
||||
import tornado.websocket
|
||||
|
||||
from mopidy import http, models, zeroconf
|
||||
from mopidy import models, zeroconf
|
||||
from mopidy.core import CoreListener
|
||||
from mopidy.http import handlers
|
||||
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
mopidy_data_dir = os.path.join(os.path.dirname(__file__), 'data')
|
||||
|
||||
|
||||
class HttpFrontend(pykka.ThreadingActor, CoreListener):
|
||||
routers = []
|
||||
@ -65,8 +63,9 @@ class HttpFrontend(pykka.ThreadingActor, CoreListener):
|
||||
def _get_request_handlers(self):
|
||||
# Either default Mopidy or user defined path to files
|
||||
static_dir = self.config['http']['static_dir']
|
||||
data_dir = os.path.join(os.path.dirname(__file__), 'data')
|
||||
root_dir = (r'/(.*)', handlers.StaticFileHandler, {
|
||||
'path': static_dir if static_dir else mopidy_data_dir,
|
||||
'path': static_dir if static_dir else data_dir,
|
||||
'default_filename': 'index.html'
|
||||
})
|
||||
|
||||
@ -122,16 +121,3 @@ class HttpFrontend(pykka.ThreadingActor, CoreListener):
|
||||
|
||||
if self.zeroconf_mopidy_http_service:
|
||||
self.zeroconf_mopidy_http_service.unpublish()
|
||||
|
||||
|
||||
class MopidyHttpRouter(http.Router):
|
||||
name = 'mopidy'
|
||||
|
||||
def get_request_handlers(self):
|
||||
return [
|
||||
(r'/ws/?', handlers.WebSocketHandler, {'core': self.core}),
|
||||
(r'/rpc', handlers.JsonRpcHandler, {'core': self.core}),
|
||||
(r'/(.*)', handlers.StaticFileHandler, {
|
||||
'path': mopidy_data_dir, 'default_filename': 'mopidy.html'
|
||||
}),
|
||||
]
|
||||
|
||||
@ -1,19 +1,34 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
import tornado.escape
|
||||
import tornado.web
|
||||
import tornado.websocket
|
||||
|
||||
import mopidy
|
||||
from mopidy import core, models
|
||||
from mopidy import core, http, models
|
||||
from mopidy.utils import jsonrpc
|
||||
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class MopidyHttpRouter(http.Router):
|
||||
name = 'mopidy'
|
||||
|
||||
def get_request_handlers(self):
|
||||
data_dir = os.path.join(os.path.dirname(__file__), 'data')
|
||||
return [
|
||||
(r'/ws/?', WebSocketHandler, {'core': self.core}),
|
||||
(r'/rpc', JsonRpcHandler, {'core': self.core}),
|
||||
(r'/(.*)', StaticFileHandler, {
|
||||
'path': data_dir, 'default_filename': 'mopidy.html'
|
||||
}),
|
||||
]
|
||||
|
||||
|
||||
def make_jsonrpc_wrapper(core_actor):
|
||||
inspector = jsonrpc.JsonRpcInspector(
|
||||
objects={
|
||||
|
||||
@ -7,7 +7,7 @@ import tornado.wsgi
|
||||
|
||||
import mopidy
|
||||
from mopidy import http
|
||||
from mopidy.http import actor
|
||||
from mopidy.http import actor, handlers
|
||||
|
||||
|
||||
class HttpServerTest(tornado.testing.AsyncHTTPTestCase):
|
||||
@ -25,7 +25,7 @@ class HttpServerTest(tornado.testing.AsyncHTTPTestCase):
|
||||
core.get_version.return_value = mopidy.__version__
|
||||
|
||||
http_frontend = actor.HttpFrontend(config=config, core=core)
|
||||
http_frontend.routers = [actor.MopidyHttpRouter]
|
||||
http_frontend.routers = [handlers.MopidyHttpRouter]
|
||||
|
||||
return tornado.web.Application(http_frontend._get_request_handlers())
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user