def makeService(config): s = service.MultiService() if config['root']: root = config['root'] if config['indexes']: config['root'].indexNames = config['indexes'] else: # This really ought to be web.Admin or something root = demo.Test() if isinstance(root, static.File): root.registry.setComponent(interfaces.IServiceCollection, s) if config['logfile']: site = server.Site(root, logPath=config['logfile']) else: site = server.Site(root) site.displayTracebacks = not config["notracebacks"] if config['personal']: personal = strports.service( config['port'], makePersonalServerFactory(site)) personal.setServiceParent(s) else: if config['https']: from twisted.internet.ssl import DefaultOpenSSLContextFactory i = internet.SSLServer(int(config['https']), site, DefaultOpenSSLContextFactory(config['privkey'], config['certificate'])) i.setServiceParent(s) strports.service(config['port'], site).setServiceParent(s) return s
def makeService(config): s = service.MultiService() if config['root']: root = config['root'] if config['indexes']: config['root'].indexNames = config['indexes'] else: # This really ought to be web.Admin or something root = demo.Test() if isinstance(root, static.File): root.registry.setComponent(interfaces.IServiceCollection, s) if config['extraHeaders']: root = _AddHeadersResource(root, config['extraHeaders']) if config['logfile']: site = server.Site(root, logPath=config['logfile']) else: site = server.Site(root) site.displayTracebacks = not config["notracebacks"] if config['personal']: site = makePersonalServerFactory(site) for port in config['ports']: svc = strports.service(port, site) svc.setServiceParent(s) return s
def webServer(self): from twisted.web.server import Site from twisted.web import demo, static self.app = Site(demo.Test()).buildProtocol("lala") self.app = Site(static.File( os.path.abspath("."))).buildProtocol("lala") self.app.transport = self
def test_getChildWithDefault(self): """ When getChildWithDefault is invoked, it adds the headers to the response. """ resource = _AddHeadersResource( demo.Test(), [("K1", "V1"), ("K2", "V2"), ("K1", "V3")]) request = DummyRequest([]) resource.getChildWithDefault("", request) self.assertEqual( request.responseHeaders.getRawHeaders("K1"), ["V1", "V3"]) self.assertEqual(request.responseHeaders.getRawHeaders("K2"), ["V2"])
def makeService(config): s = service.MultiService() if config['root']: root = config['root'] if config['indexes']: config['root'].indexNames = config['indexes'] else: # This really ought to be web.Admin or something root = demo.Test() if isinstance(root, static.File): root.registry.setComponent(interfaces.IServiceCollection, s) if config['logfile']: site = server.Site(root, logPath=config['logfile']) else: site = server.Site(root) site.displayTracebacks = not config["notracebacks"] if config['personal']: import pwd, os pw_name, pw_passwd, pw_uid, pw_gid, pw_gecos, pw_dir, pw_shell \ = pwd.getpwuid(os.getuid()) i = internet.UNIXServer( os.path.join(pw_dir, distrib.UserDirectory.userSocketName), pb.BrokerFactory(distrib.ResourcePublisher(site))) i.setServiceParent(s) else: if config['https']: from twisted.internet.ssl import DefaultOpenSSLContextFactory i = internet.SSLServer( int(config['https']), site, DefaultOpenSSLContextFactory(config['privkey'], config['certificate'])) i.setServiceParent(s) strports.service(config['port'], site).setServiceParent(s) flashport = config.get('flashconduit', None) if flashport: from twisted.web.woven.flashconduit import FlashConduitFactory i = internet.TCPServer(int(flashport), FlashConduitFactory(site)) i.setServiceParent(s) return s
def makeService(config): s = service.MultiService() if config["root"]: root = config["root"] if config["indexes"]: config["root"].indexNames = config["indexes"] else: # This really ought to be web.Admin or something root = demo.Test() if isinstance(root, static.File): root.registry.setComponent(interfaces.IServiceCollection, s) if config["extraHeaders"]: root = _AddHeadersResource(root, config["extraHeaders"]) if config["logfile"]: site = server.Site(root, logPath=config["logfile"]) else: site = server.Site(root) if config["display-tracebacks"]: site.displayTracebacks = True # Deprecate --notracebacks/-n if config["notracebacks"]: msg = deprecate._getDeprecationWarningString( "--notracebacks", incremental.Version("Twisted", 19, 7, 0) ) warnings.warn(msg, category=DeprecationWarning, stacklevel=2) if config["personal"]: site = makePersonalServerFactory(site) for port in config["ports"]: svc = strports.service(port, site) svc.setServiceParent(s) return s