diff options
author | David Cramer <dcramer@gmail.com> | 2015-05-13 16:29:12 -0700 |
---|---|---|
committer | David Cramer <dcramer@gmail.com> | 2015-05-13 16:29:12 -0700 |
commit | 6f81614e66dca779ea5bbae586a1881ff5c5f64a (patch) | |
tree | d5608bfed9ece9c7f82d41e3d92a480ba9408dcf | |
parent | 824e48761b9e71fe9f11385014de88907e9c04a6 (diff) | |
download | raven-6f81614e66dca779ea5bbae586a1881ff5c5f64a.tar.gz |
Standardize transport initialization/options (Fixes GH-608)
-rw-r--r-- | raven/transport/gevent.py | 8 | ||||
-rw-r--r-- | raven/transport/http.py | 2 | ||||
-rw-r--r-- | raven/transport/requests.py | 12 | ||||
-rw-r--r-- | raven/transport/tornado.py | 7 | ||||
-rw-r--r-- | raven/transport/twisted.py | 10 |
5 files changed, 10 insertions, 29 deletions
diff --git a/raven/transport/gevent.py b/raven/transport/gevent.py index 76ac559..3f7c208 100644 --- a/raven/transport/gevent.py +++ b/raven/transport/gevent.py @@ -26,15 +26,13 @@ class GeventedHTTPTransport(AsyncTransport, HTTPTransport): scheme = ['gevent+http', 'gevent+https'] - def __init__(self, parsed_url, maximum_outstanding_requests=100): + def __init__(self, parsed_url, maximum_outstanding_requests=100, *args, **kwargs): if not has_gevent: raise ImportError('GeventedHTTPTransport requires gevent.') - self._lock = Semaphore(maximum_outstanding_requests) - super(GeventedHTTPTransport, self).__init__(parsed_url) + self._lock = Semaphore(maximum_outstanding_requests) - # remove the gevent+ from the protocol, as it is not a real protocol - self._url = self._url.split('+', 1)[-1] + super(GeventedHTTPTransport, self).__init__(parsed_url, *args, **kwargs) def async_send(self, data, headers, success_cb, failure_cb): """ diff --git a/raven/transport/http.py b/raven/transport/http.py index c6d5747..10bb0af 100644 --- a/raven/transport/http.py +++ b/raven/transport/http.py @@ -23,7 +23,7 @@ class HTTPTransport(Transport): self.check_scheme(parsed_url) self._parsed_url = parsed_url - self._url = parsed_url.geturl().split('+', 1)[-1] + self._url = parsed_url.geturl().rsplit('+', 1)[-1] if isinstance(timeout, six.string_types): timeout = int(timeout) diff --git a/raven/transport/requests.py b/raven/transport/requests.py index 29d9da4..f51c32a 100644 --- a/raven/transport/requests.py +++ b/raven/transport/requests.py @@ -7,7 +7,6 @@ raven.transport.requests """ from __future__ import absolute_import -from raven.conf import defaults from raven.transport.http import HTTPTransport try: @@ -21,18 +20,11 @@ class RequestsHTTPTransport(HTTPTransport): scheme = ['requests+http', 'requests+https'] - def __init__(self, parsed_url, timeout=defaults.TIMEOUT, verify_ssl=True, - ca_certs=defaults.CA_BUNDLE): + def __init__(self, *args, **kwargs): if not has_requests: raise ImportError('RequestsHTTPTransport requires requests.') - super(RequestsHTTPTransport, self).__init__(parsed_url, - timeout=timeout, - verify_ssl=verify_ssl, - ca_certs=ca_certs) - - # remove the requests+ from the protocol, as it is not a real protocol - self._url = self._url.split('+', 1)[-1] + super(RequestsHTTPTransport, self).__init__(*args, **kwargs) def send(self, data, headers): if self.verify_ssl: diff --git a/raven/transport/tornado.py b/raven/transport/tornado.py index 16425d8..0dcc52c 100644 --- a/raven/transport/tornado.py +++ b/raven/transport/tornado.py @@ -21,14 +21,11 @@ class TornadoHTTPTransport(HTTPTransport): scheme = ['tornado+http', 'tornado+https'] - def __init__(self, parsed_url, **kwargs): + def __init__(self, parsed_url, *args, **kwargs): if not has_tornado: raise ImportError('TornadoHTTPTransport requires tornado.') - super(TornadoHTTPTransport, self).__init__(parsed_url, **kwargs) - - # remove the tornado+ from the protocol, as it is not a real protocol - self._url = self._url.split('+', 1)[-1] + super(TornadoHTTPTransport, self).__init__(parsed_url, *args, **kwargs) def send(self, data, headers): kwargs = dict(method='POST', headers=headers, body=data) diff --git a/raven/transport/twisted.py b/raven/transport/twisted.py index c69465a..fb04272 100644 --- a/raven/transport/twisted.py +++ b/raven/transport/twisted.py @@ -8,7 +8,6 @@ raven.transport.twisted from __future__ import absolute_import import io -import logging from raven.transport.base import AsyncTransport from raven.transport.http import HTTPTransport @@ -25,18 +24,13 @@ except: class TwistedHTTPTransport(AsyncTransport, HTTPTransport): - scheme = ['twisted+http', 'twisted+https'] - def __init__(self, parsed_url): + def __init__(self, parsed_url, *args, **kwargs): if not has_twisted: raise ImportError('TwistedHTTPTransport requires twisted.web.') - super(TwistedHTTPTransport, self).__init__(parsed_url) - self.logger = logging.getLogger('sentry.errors') - - # remove the twisted+ from the protocol, as it is not a real protocol - self._url = self._url.split('+', 1)[-1] + super(TwistedHTTPTransport, self).__init__(*args, **kwargs) # Import reactor as late as possible. from twisted.internet import reactor |