On 05:49 pm, pe...@peterryan.net wrote:
I am writing a simple ftp client which I am trying to dispose of. Right now
I send a quit command:

(the ftp_client reference is a FTPClient built with a ClientCreator)

deferred = ftp_client.quit()

And I register a callback:

def quitSent(response):
print "quit acknowledged...connected?", ftp_client.transport.connected

deferred.addCallback(quitSent)

If I invoke the above the connection is printed as connected.

There is no documented `connected` attribute of transports. So who knows what this is telling you. :)

However, the way you learn when a protocol's transport has disconnected is to implement the `connectionLost` method on the protocol. It is called when the transport disconnects.

Jean-Paul
However if I schedule a callback to check the status later:

def status():
print "quit acknowledged...connected?", ftp_client.transport.connected

reactor.callLater(1, self.status)

If I schedule a callback for a second later the transport is not connected.
I've searched quite a bit but I cannot determine a way to register a
callback for when the TCP transport is actually disconnected. Can anyone offer some insight? I'd like to know explicitly when the client is closed.

Thanks,

Peter

_______________________________________________
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python

Reply via email to