hi!

(sorry, the formatting in my last mail got screwed up. hope this time it works)

i'm currently writing a reverse proxy with twisted and i've a problem with a 
deferred function in my handleHeader method.

the code looks simplified like this (http://pastie.org/981735):

class MyProxyClient(proxy.ProxyClient):
    @defer.inlineCallbacks
    def handleHeader(self, key, value):
        if key.lower() == 'location':
            clientCreator = protocol.ClientCreator(reactor, Redis, db=3)
            redis = yield clientCreator.connectTCP("localhost", 6379)
            value = yield redis.get('myproxy:hashcode:%s' % value)
        proxy.ProxyClient.handleHeader(self,key,value)


as the handleHeader caller doesn't wait for a deferred to finish, the location 
header is added after handleResponseEnd is already called and therefore never 
makes it to the client.

is there a way to convert the non-blocking redis call to a blocking redis call?
i know that there's a blocking client library for redis but i'd rather use only 
txredis if possible.


regards,
  stefan

-- 
Stefan Grosz <[email protected]>
Stadtaustellungs-, Gemeindeausstellungs-, Stadtinformations- und 
Gemeindeinformationsplanungs GmbH
A-1100 Wien, Buchengasse 42
Mobil: +43 650 2643435
Fax: +43 7243 57435

http://www.stadtausstellung.at

_______________________________________________
Twisted-web mailing list
[email protected]
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web

Reply via email to