| 3704 | |
| 3705 | class CherootServer(ServerAdapter): |
| 3706 | def run(self, handler): # pragma: no cover |
| 3707 | from cheroot import wsgi |
| 3708 | from cheroot.ssl import builtin |
| 3709 | self.options['bind_addr'] = (self.host, self.port) |
| 3710 | self.options['wsgi_app'] = handler |
| 3711 | certfile = self.options.pop('certfile', None) |
| 3712 | keyfile = self.options.pop('keyfile', None) |
| 3713 | chainfile = self.options.pop('chainfile', None) |
| 3714 | server = wsgi.Server(**self.options) |
| 3715 | if certfile and keyfile: |
| 3716 | server.ssl_adapter = builtin.BuiltinSSLAdapter( |
| 3717 | certfile, keyfile, chainfile) |
| 3718 | try: |
| 3719 | server.start() |
| 3720 | finally: |
| 3721 | server.stop() |
| 3722 | |
| 3723 | |
| 3724 | class WaitressServer(ServerAdapter): |