<div dir="ltr">I am writing a simple ftp client which I am trying to dispose of. Right now I send a quit command: <div><br></div><div>(the ftp_client reference is a FTPClient built with a ClientCreator)<br><div><br></div><div>
deferred = ftp_client.quit()<br></div><div><br></div><div>And I register a callback:</div><div><br></div><div>def quitSent(response):</div><div>   print "quit acknowledged...connected?", ftp_client.transport.connected</div>
<div><br></div><div>deferred.addCallback(quitSent)</div><div><br></div><div>If I invoke the above the connection is printed as connected.</div><div><br></div><div>However if I schedule a callback to check the status later:</div>
<div><br></div><div>def status():</div><div>   print "quit acknowledged...connected?", ftp_client.transport.connected</div><div><br></div><div>reactor.callLater(1, self.status)<br></div><div><br></div><div>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.</div>
<div><br></div><div>Thanks,</div><div><br></div><div>Peter</div><div><br></div><div><br></div></div></div>