def __init__(self, config_file=None): self.config = ApiSiteConfig(read_yaml_config(config_file)) self.api = API( self.config.create_backend(), self.config.create_auth()) self.site = build_web_site({ 'health': HealthResource(), self.config.url_path_prefix: self.api.app.resource(), })
def __init__(self, config_file=None): self.config = ApiSiteConfig(read_yaml_config(config_file)) self.api = API(self.config.create_backend(), self.config.create_auth()) self.site = build_web_site({ 'health': HealthResource(), self.config.url_path_prefix: self.api.app.resource(), })
def test_build_web_site_with_overlapping_paths(self): resource_a = Resource() resource_b = Resource() site = build_web_site({ 'foo/a': resource_a, 'foo/b': resource_b, }) self.assertEqual(self.get_resource('foo/a', site), resource_a) self.assertEqual(self.get_resource('foo/b', site), resource_b) self.assertTrue(isinstance(site, LogFilterSite))
def setup_transport(self): config = self.get_static_config() self.endpoint = config.twisted_endpoint self.resource = NetcoreResource(self) self.factory = build_web_site({ config.health_path: HttpRpcHealthResource(self), config.web_path: self.resource, }) self.server = yield self.endpoint.listen(self.factory)
def setup_worker(self): config = self.get_static_config() self._riak = yield TxRiakManager.from_config(config.riak_manager) redis = yield TxRedisManager.from_config(config.redis_manager) self.store = MessageStore(self._riak, redis) site = build_web_site({ config.web_path: MessageStoreResource(self.store), config.health_path: httprpc.HttpRpcHealthResource(self), }) self.addService( StreamServerEndpointService(config.twisted_endpoint, site))
def setup_worker(self): config = self.get_static_config() riak = yield TxRiakManager.from_config(config.riak_manager) redis = yield TxRedisManager.from_config(config.redis_manager) self.store = MessageStore(riak, redis) site = build_web_site({ config.web_path: MessageStoreResource(self.store), config.health_path: httprpc.HttpRpcHealthResource(self), }) self.addService( StreamServerEndpointService(config.twisted_endpoint, site))
def setup_worker(self): config = self.get_static_config() self.redis_manager = yield TxRedisManager.from_config( config.redis_manager) tagpool = TagpoolManager(self.redis_manager) rpc = TagpoolApiServer(tagpool) addIntrospection(rpc) site = build_web_site({ config.web_path: rpc, config.health_path: httprpc.HttpRpcHealthResource(self), }) self.addService( StreamServerEndpointService(config.twisted_endpoint, site))
def setup_transport(self): config = self.get_static_config() self.request_dict = {} self.endpoint = config.twisted_endpoint self.resource = WeChatResource(self) self.factory = build_web_site({config.health_path: HttpRpcHealthResource(self), config.web_path: self.resource}) self.redis = yield TxRedisManager.from_config(config.redis_manager) self.server = yield self.endpoint.listen(self.factory) if config.wechat_menu: # not yielding because this shouldn't block startup d = self.get_access_token() d.addCallback(self.create_wechat_menu, config.wechat_menu)
def setup_worker(self): config = self.get_static_config() self.vumi_api = yield VumiApi.from_config_async({ 'redis_manager': config.redis_manager, 'riak_manager': config.riak_manager, }) self.realm = GoUserRealm(self._rpc_resource_for_user) site = build_web_site({ config.web_path: GoUserAuthSessionWrapper( self.realm, self.vumi_api), config.health_path: httprpc.HttpRpcHealthResource(self), }) self._web_service = StreamServerEndpointService( config.twisted_endpoint, site) self._web_service.startService()
def setup_transport(self): config = self.get_static_config() self.request_dict = {} self.endpoint = config.twisted_endpoint self.resource = WeChatResource(self) self.factory = build_web_site({ config.health_path: HttpRpcHealthResource(self), config.web_path: self.resource, }) self.redis = yield TxRedisManager.from_config(config.redis_manager) self.server = yield self.endpoint.listen(self.factory) if config.wechat_menu: # not yielding because this shouldn't block startup d = self.get_access_token() d.addCallback(self.create_wechat_menu, config.wechat_menu)
def setup_transport(self): """ Transport specific setup - it sets up a connection. """ self._requests = {} self._requests_deferreds = {} self.callLater = reactor.callLater config = self.get_static_config() self.endpoint = config.twisted_endpoint self.timeout = config.timeout r_prefix = "vumi.transports.mtn_rwanda:%s" % self.transport_name self.session_manager = yield SessionManager.from_redis_config( config.redis_manager, r_prefix, config.session_timeout_period) self.factory = build_web_site({ config.health_path: HttpRpcHealthResource(self), config.web_path: MTNRwandaXMLRPCResource(self), }) self.xmlrpc_server = yield self.endpoint.listen(self.factory)
def test_build_web_site_with_custom_site_class(self): site = build_web_site({}, site_class=Site) self.assertTrue(isinstance(site, Site)) self.assertFalse(isinstance(site, LogFilterSite))
def start_web_resources(self, resources, port, site_class=None): resources = dict((path, resource) for resource, path in resources) site_factory = build_web_site(resources, site_class=site_class) return reactor.listenTCP(port, site_factory)