hydrus/include/ClientLocalServer.py

56 lines
2.5 KiB
Python
Raw Normal View History

2019-01-09 22:59:03 +00:00
from . import ClientLocalServerResources
from . import HydrusServer
2019-02-06 22:41:35 +00:00
from twisted.web.resource import NoResource
2015-08-05 18:42:35 +00:00
2019-01-30 22:14:54 +00:00
class HydrusClientService( HydrusServer.HydrusService ):
def __init__( self, service, allow_non_local_connections ):
if allow_non_local_connections:
self._client_requests_domain = HydrusServer.REMOTE_DOMAIN
else:
self._client_requests_domain = HydrusServer.LOCAL_DOMAIN
HydrusServer.HydrusService.__init__( self, service )
class HydrusServiceBooru( HydrusClientService ):
2015-08-05 18:42:35 +00:00
def _InitRoot( self ):
2019-01-30 22:14:54 +00:00
root = HydrusClientService._InitRoot( self )
2015-08-05 18:42:35 +00:00
2019-01-30 22:14:54 +00:00
root.putChild( b'gallery', ClientLocalServerResources.HydrusResourceBooruGallery( self._service, self._client_requests_domain ) )
root.putChild( b'page', ClientLocalServerResources.HydrusResourceBooruPage( self._service, self._client_requests_domain ) )
root.putChild( b'file', ClientLocalServerResources.HydrusResourceBooruFile( self._service, self._client_requests_domain ) )
root.putChild( b'thumbnail', ClientLocalServerResources.HydrusResourceBooruThumbnail( self._service, self._client_requests_domain ) )
2019-01-09 22:59:03 +00:00
root.putChild( b'style.css', ClientLocalServerResources.local_booru_css )
2015-08-05 18:42:35 +00:00
return root
2019-01-30 22:14:54 +00:00
class HydrusServiceClientAPI( HydrusClientService ):
2015-08-05 18:42:35 +00:00
def _InitRoot( self ):
2019-01-30 22:14:54 +00:00
root = HydrusClientService._InitRoot( self )
2015-08-05 18:42:35 +00:00
2019-02-06 22:41:35 +00:00
root.putChild( b'api_version', ClientLocalServerResources.HydrusResourceClientAPIVersion( self._service, self._client_requests_domain ) )
root.putChild( b'request_new_permissions', ClientLocalServerResources.HydrusResourceClientAPIPermissionsRequest( self._service, self._client_requests_domain ) )
root.putChild( b'verify_access_key', ClientLocalServerResources.HydrusResourceClientAPIVerify( self._service, self._client_requests_domain ) )
add_urls = NoResource()
root.putChild( b'add_urls', add_urls )
add_urls.putChild( b'get_url_info', ClientLocalServerResources.HydrusResourceClientAPIRestrictedAddURLsGetURLParsingCapability( self._service, self._client_requests_domain ) )
add_urls.putChild( b'add_url', ClientLocalServerResources.HydrusResourceClientAPIRestrictedAddURLsImportURL( self._service, self._client_requests_domain ) )
2015-08-05 18:42:35 +00:00
return root
2017-03-02 02:14:56 +00:00