コード例 #1
0
ファイル: examples.py プロジェクト: radix/corotwine
def googleAMPClient():
    from twisted.internet.protocol import ClientCreator
    cc = ClientCreator(reactor, AMP)
    ampConnection = blockOn(cc.connectTCP("localhost", 1030))
    result = blockOn(ampConnection.callRemote(FetchGoogle))
    if "I'm Feeling Lucky" in result["google"]:
        print "Google AMP Client test succeeded"
    else:
        print "Google AMP client test failed :-("
    ampConnection.transport.loseConnection()
コード例 #2
0
def googleAMPClient():
    from twisted.internet.protocol import ClientCreator
    cc = ClientCreator(reactor, AMP)
    ampConnection = blockOn(cc.connectTCP("localhost", 1030))
    result = blockOn(ampConnection.callRemote(FetchGoogle))
    if "I'm Feeling Lucky" in result["google"]:
        print "Google AMP Client test succeeded"
    else:
        print "Google AMP client test failed :-("
    ampConnection.transport.loseConnection()
コード例 #3
0
ファイル: protocol.py プロジェクト: PlumpMath/corotwine
def gConnectTCP(host, port, reactor=None):
    """
    Return a L{GreenletTransport} connected to the given host and port.

    This function must NOT be called from the reactor's greenlet.
    """
    from corotwine.defer import blockOn
    current = greenlet.getcurrent()
    assert current is not MAIN, \
        "Don't run gConnectTCP from the reactor greenlet."
    if reactor is None:
        from twisted.internet import reactor
    d = Deferred()
    f = ClientFactory()
    f.protocol = lambda: _GreenletClientProtocol(d, current)
    reactor.connectTCP(host, port, f)
    return blockOn(d)
コード例 #4
0
ファイル: protocol.py プロジェクト: radix/corotwine
def gConnectTCP(host, port, reactor=None):
    """
    Return a L{GreenletTransport} connected to the given host and port.

    This function must NOT be called from the reactor's greenlet.
    """
    from corotwine.defer import blockOn
    current = greenlet.getcurrent()
    assert current is not MAIN, \
        "Don't run gConnectTCP from the reactor greenlet."
    if reactor is None:
        from twisted.internet import reactor
    d = Deferred()
    f = ClientFactory()
    f.protocol = lambda: _GreenletClientProtocol(d, current)
    reactor.connectTCP(host, port, f)
    return blockOn(d)
コード例 #5
0
ファイル: examples.py プロジェクト: radix/corotwine
 def fetchGoogle(self):
     return {"google": blockOn(getPage("http://google.com/"))}
コード例 #6
0
ファイル: examples.py プロジェクト: radix/corotwine
def fetchGoogle(transport):
    result = blockOn(getPage("http://google.com/"))
    transport.write(result)
コード例 #7
0
ファイル: test_defer.py プロジェクト: radix/corotwine
 def greeny():
     events.append("waiting")
     try:
         blockOn(deferred)
     except Exception, e:
         events.append(e)
コード例 #8
0
ファイル: test_defer.py プロジェクト: radix/corotwine
 def greeny():
     events.append("waiting")
     events.append(blockOn(deferred))
コード例 #9
0
ファイル: test_defer.py プロジェクト: radix/corotwine
 def catcher():
     events.append("waiting")
     try:
         blockOn(deferred)
     except Exception, e:
         events.append(e)
コード例 #10
0
 def fetchGoogle(self):
     return {"google": blockOn(getPage("http://google.com/"))}
コード例 #11
0
def fetchGoogle(transport):
    result = blockOn(getPage("http://google.com/"))
    transport.write(result)
コード例 #12
0
ファイル: test_defer.py プロジェクト: PlumpMath/corotwine
 def greeny():
     events.append("waiting")
     try:
         blockOn(deferred)
     except Exception, e:
         events.append(e)
コード例 #13
0
ファイル: test_defer.py プロジェクト: PlumpMath/corotwine
 def greeny():
     events.append("waiting")
     events.append(blockOn(deferred))
コード例 #14
0
ファイル: test_defer.py プロジェクト: PlumpMath/corotwine
 def catcher():
     events.append("waiting")
     try:
         blockOn(deferred)
     except Exception, e:
         events.append(e)