diff options
| author | Devendra | 2014-06-18 01:02:15 +0530 |
|---|---|---|
| committer | Devendra | 2014-06-18 01:02:15 +0530 |
| commit | a1ee7f8bd90b463318bfa75f7ee4f58d458d2a24 (patch) | |
| tree | 9e260902f960f792a93fa25e3b619c42ecb5f4d4 /python-twisted/unassembled | |
| parent | bfd5c64bdf7ed45f21207cb53c653e7220e39eff (diff) | |
| parent | 083127cde127dd78fc88ffe2b3b82144b2c07038 (diff) | |
| download | pubnub-python-a1ee7f8bd90b463318bfa75f7ee4f58d458d2a24.tar.bz2 | |
Merge branch 'master' into develop
Diffstat (limited to 'python-twisted/unassembled')
| -rw-r--r-- | python-twisted/unassembled/Platform.py | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/python-twisted/unassembled/Platform.py b/python-twisted/unassembled/Platform.py deleted file mode 100644 index 7318703..0000000 --- a/python-twisted/unassembled/Platform.py +++ /dev/null @@ -1,84 +0,0 @@ -from twisted.web.client import getPage -from twisted.internet import reactor -from twisted.internet.defer import Deferred -from twisted.internet.protocol import Protocol -from twisted.web.client import Agent, ContentDecoderAgent, RedirectAgent, GzipDecoder -from twisted.web.client import HTTPConnectionPool -from twisted.web.http_headers import Headers -from twisted.internet.ssl import ClientContextFactory -from twisted.internet.task import LoopingCall - -pnconn_pool = HTTPConnectionPool(reactor, persistent=True) -pnconn_pool.maxPersistentPerHost = 100 -pnconn_pool.cachedConnectionTimeout = 310 - -class Pubnub(PubnubCoreAsync): - - def start(self): reactor.run() - def stop(self): reactor.stop() - def timeout( self, delay, callback ): - reactor.callLater( delay, callback ) - - def __init__( - self, - publish_key, - subscribe_key, - secret_key = False, - cipher_key = False, - ssl_on = False, - origin = 'pubsub.pubnub.com' - ) : - super(Pubnub, self).__init__( - publish_key=publish_key, - subscribe_key=subscribe_key, - secret_key=secret_key, - cipher_key=cipher_key, - ssl_on=ssl_on, - origin=origin, - ) - self.headers = {} - self.headers['User-Agent'] = ['Python-Twisted'] - #self.headers['Accept-Encoding'] = [self.accept_encoding] - self.headers['V'] = [self.version] - - def _request( self, request, callback ) : - global pnconn_pool - - ## Build URL - ''' - url = self.origin + '/' + "/".join([ - "".join([ ' ~`!@#$%^&*()+=[]\\{}|;\':",./<>?'.find(ch) > -1 and - hex(ord(ch)).replace( '0x', '%' ).upper() or - ch for ch in list(bit) - ]) for bit in request]) - ''' - url = self.getUrl(request) - agent = ContentDecoderAgent(RedirectAgent(Agent( - reactor, - contextFactory = WebClientContextFactory(), - pool = self.ssl and None or pnconn_pool - )), [('gzip', GzipDecoder)]) - request = agent.request( 'GET', url, Headers(self.headers), None ) - - def received(response): - finished = Deferred() - response.deliverBody(PubNubResponse(finished)) - return finished - - def complete(data): - callback(eval(data)) - - request.addCallback(received) - request.addBoth(complete) - -class WebClientContextFactory(ClientContextFactory): - def getContext(self, hostname, port): - return ClientContextFactory.getContext(self) - -class PubNubResponse(Protocol): - def __init__( self, finished ): - self.finished = finished - - def dataReceived( self, bytes ): - self.finished.callback(bytes) - |
