Example #1
0
 def __call__(self, response, exc=None):
     # the pre_request handler
     request = response._request
     if request:
         tunnel = request._tunnel
         if tunnel:
             if getattr(request, "_apply_tunnel", False):
                 # if transport is not SSL already
                 if not is_tls(response.transport.get_extra_info("socket")):
                     response._request = tunnel
                     response.bind_event("on_headers", self.on_headers)
             else:
                 # Append self again as pre_request
                 request._apply_tunnel = True
                 response.bind_event("pre_request", self)
Example #2
0
 def __call__(self, response, exc=None):
     # the pre_request handler
     request = response._request
     if request:
         tunnel = request._tunnel
         if tunnel:
             if getattr(request, '_apply_tunnel', False):
                 # if transport is not SSL already
                 if not is_tls(response.transport.get_extra_info('socket')):
                     response._request = tunnel
                     response.bind_event('on_headers', self.on_headers)
             else:
                 # Append self again as pre_request
                 request._apply_tunnel = True
                 response.bind_event('pre_request', self)
Example #3
0
 def wsgi_environ(self, stream):
     #return a the WSGI environ dictionary
     parser = self.parser
     https = True if is_tls(self.transport.sock) else False
     multiprocess = (self.cfg.concurrency == 'process')
     environ = wsgi_environ(stream, self.transport.address, self.address,
                            self._request_headers, self.headers,
                            self.SERVER_SOFTWARE,
                            https=https,
                            extra={'pulsar.connection': self.connection,
                                   'pulsar.cfg': self.cfg,
                                   'wsgi.multiprocess': multiprocess})
     self.keep_alive = keep_alive(self.headers, parser.get_version())
     self.headers.update([('Server', self.SERVER_SOFTWARE),
                          ('Date', format_date_time(time.time()))])
     return environ
Example #4
0
 def wsgi_environ(self):
     # return a the WSGI environ dictionary
     transport = self.transport
     https = True if is_tls(transport.get_extra_info('socket')) else False
     multiprocess = (self.cfg.concurrency == 'process')
     environ = wsgi_environ(self._stream,
                            transport.get_extra_info('sockname'),
                            self.address, self.headers,
                            self.SERVER_SOFTWARE,
                            https=https,
                            extra={'pulsar.connection': self.connection,
                                   'pulsar.cfg': self.cfg,
                                   'wsgi.multiprocess': multiprocess})
     self.keep_alive = keep_alive(self.headers, self.parser.get_version())
     self.headers.update([('Server', self.SERVER_SOFTWARE),
                          ('Date', format_date_time(time.time()))])
     return environ
Example #5
0
 def __call__(self, response, exc=None):
     # the pre_request handler
     request = response._request
     if request:
         tunnel = request._tunnel
         if tunnel:
             if getattr(request, '_apply_tunnel', False):
                 # if transport is not SSL already
                 transport = response.transport
                 if not transport.get_extra_info('sslcontext'):
                     if not is_tls(transport.get_extra_info('socket')):
                         response._request = tunnel
                         response.bind_event('on_headers', self.on_headers)
             else:
                 # Append self again as pre_request
                 request._apply_tunnel = True
                 response.bind_event('pre_request', self)
Example #6
0
 def wsgi_environ(self):
     # return a the WSGI environ dictionary
     transport = self.transport
     https = True if is_tls(transport.get_extra_info("socket")) else False
     multiprocess = self.cfg.concurrency == "process"
     environ = wsgi_environ(
         self._stream,
         self.parser,
         self._stream.headers,
         transport.get_extra_info("sockname"),
         self.address,
         self.headers,
         self.SERVER_SOFTWARE,
         https=https,
         extra={"pulsar.connection": self.connection, "pulsar.cfg": self.cfg, "wsgi.multiprocess": multiprocess},
     )
     self.keep_alive = keep_alive(self.headers, self.parser.get_version())
     self.headers.update([("Server", self.SERVER_SOFTWARE), ("Date", format_date_time(time.time()))])
     return environ
Example #7
0
 def wsgi_environ(self):
     # return a the WSGI environ dictionary
     transport = self.transport
     https = True if is_tls(transport.get_extra_info('socket')) else False
     multiprocess = (self.cfg.concurrency == 'process')
     environ = wsgi_environ(self._body_reader,
                            self.parser,
                            self._body_reader.headers,
                            transport.get_extra_info('sockname'),
                            self.address,
                            self.headers,
                            self.SERVER_SOFTWARE,
                            https=https,
                            extra={'pulsar.connection': self.connection,
                                   'pulsar.cfg': self.cfg,
                                   'wsgi.multiprocess': multiprocess})
     self.keep_alive = keep_alive(self.headers, self.parser.get_version())
     self.headers.update([('Server', self.SERVER_SOFTWARE),
                          ('Date', format_date_time(time.time()))])
     return environ