def start(): root = SiteResource() factory = Site(root) reactor.listenTCP(setting.LIAAR_PORT, factory) logger.info('Liaar is available on port %d' % setting.LIAAR_PORT) # run the twisted reactor.run()
def add_app(app_name, version, setting): ''' Add a new application to in-memory dictionary ''' apps[app_name] = {} apps[app_name][version] = {} apps[app_name][version]['resources'] = {} apps[app_name][version]['setting'] = setting # add log logger.info('Adding application `%s`' % app_name)
def add_resource(app_name, version, resource_name): ''' Add a new resource to in-memory dictionary ''' if not apps.has_key(app_name): exception.handle('Undefined `app_name`, call `add_app` before `add_resource`') if not apps[app_name].has_key(version): exception.handle('Undefined app version') apps[app_name][version]['resources'][resource_name] = {} # add log logger.info('Adding resource `%s` to application `%s`' % (resource_name, app_name))
def add_resource(app_name, version, resource_name): ''' Add a new resource to in-memory dictionary ''' if not apps.has_key(app_name): exception.handle( 'Undefined `app_name`, call `add_app` before `add_resource`') if not apps[app_name].has_key(version): exception.handle('Undefined app version') apps[app_name][version]['resources'][resource_name] = {} # add log logger.info('Adding resource `%s` to application `%s`' % (resource_name, app_name))
def add_method(app_name, version, resource_name, method_name, method_setting): ''' Add a new method to in-memory dictionary ''' if not apps.has_key(app_name): exception.handle('Undefined `app_name`, call `add_app` before `add_resource`') if not apps[app_name].has_key(version): exception.handle('Undefined app version') if not apps[app_name][version]['resources'].has_key(resource_name): exception.handle('Undefined resource name') apps[app_name][version]['resources'][resource_name][method_name] = method_setting # add log logger.info('Adding method `%s` to resource `%s`' % (method_name, resource_name))
def add_method(app_name, version, resource_name, method_name, method_setting): ''' Add a new method to in-memory dictionary ''' if not apps.has_key(app_name): exception.handle( 'Undefined `app_name`, call `add_app` before `add_resource`') if not apps[app_name].has_key(version): exception.handle('Undefined app version') if not apps[app_name][version]['resources'].has_key(resource_name): exception.handle('Undefined resource name') apps[app_name][version]['resources'][resource_name][ method_name] = method_setting # add log logger.info('Adding method `%s` to resource `%s`' % (method_name, resource_name))
def render_GET(self, request): logger.info('Processing request for %s' % request.path) route_item = route.get(request.postpath) if route_item is None: exception.handle('No route found for: %s' % request.path) route_object, route_params = route_item # set route name route_name = route_object[1] if route_name == 'root': return 'root' elif route_name == 'app': return 'app: %s' % route_params elif route_name == 'resource': return 'resource' elif route_name == 'method': return request_handler.method(request, route_params)