diff options
Diffstat (limited to 'python-twisted/unassembled/Platform.py')
| -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) - | 
