This makes the "client" parameter optional for websocket connections.
_HTTPConnection(self.io_loop, self, request,
functools.partial(self._release_fetch, key),
callback,
- self.max_buffer_size)
+ self.max_buffer_size, self.resolver)
def _release_fetch(self, key):
del self.active[key]
_SUPPORTED_METHODS = set(["GET", "HEAD", "POST", "PUT", "DELETE", "PATCH", "OPTIONS"])
def __init__(self, io_loop, client, request, release_callback,
- final_callback, max_buffer_size):
+ final_callback, max_buffer_size, resolver):
self.start_time = io_loop.time()
self.io_loop = io_loop
self.client = client
self.release_callback = release_callback
self.final_callback = final_callback
self.max_buffer_size = max_buffer_size
+ self.resolver = resolver
self.code = None
self.headers = None
self.chunks = None
# so restrict to ipv4 by default.
af = socket.AF_INET
- self.client.resolver.getaddrinfo(
+ self.resolver.getaddrinfo(
host, port, af, socket.SOCK_STREAM, 0, 0,
callback=self._on_resolve)
from tornado.httputil import HTTPHeaders
from tornado.iostream import IOStream
from tornado.log import gen_log
-from tornado.netutil import ssl_options_to_context
+from tornado.netutil import ssl_options_to_context, Resolver
from tornado.simple_httpclient import SimpleAsyncHTTPClient
from tornado.testing import AsyncHTTPTestCase, AsyncHTTPSTestCase, AsyncTestCase, ExpectLog
from tornado.test.util import unittest
httpclient.HTTPRequest(self.get_url("/")),
dict(httpclient.HTTPRequest._DEFAULTS)),
None, self.stop,
- 1024 * 1024)
+ 1024 * 1024, Resolver(self.io_loop))
conn.set_request(
b"\r\n".join(headers +
[utf8("Content-Length: %d\r\n" % len(body))]) +
from tornado.ioloop import IOLoop
from tornado.iostream import IOStream, SSLIOStream
from tornado.log import gen_log, app_log
+from tornado.netutil import Resolver
from tornado import simple_httpclient
from tornado.util import bytes_type
class _WebSocketClientConnection(simple_httpclient._HTTPConnection):
- def __init__(self, io_loop, client, request):
+ def __init__(self, io_loop, request):
self.connect_future = Future()
self.read_future = None
self.read_queue = collections.deque()
})
super(_WebSocketClientConnection, self).__init__(
- io_loop, client, request, lambda: None, lambda response: None,
- 104857600)
+ io_loop, None, request, lambda: None, lambda response: None,
+ 104857600, Resolver(io_loop))
def _on_close(self):
self.on_message(None)
request = simple_httpclient.HTTPRequest(url)
request = simple_httpclient._RequestProxy(
request, simple_httpclient.HTTPRequest._DEFAULTS)
- from tornado.util import ObjectDict
- from tornado.netutil import Resolver
- # TODO: refactor _HTTPConnection's client parameter
- client = ObjectDict(resolver=Resolver(io_loop), hostname_mapping=None)
- conn = _WebSocketClientConnection(io_loop, client, request)
+ conn = _WebSocketClientConnection(io_loop, request)
if callback is not None:
io_loop.add_future(conn.connect_future, callback)
return conn.connect_future