def _cbSend(self, result, rid): body, elements = result self.requests.pop(0) self.window += 1 if body.hasAttribute('type') and body['type'] == 'terminate': reactor.close() for e in elements: if self.rawDataInFn: try: self.rawDataInFn(e.toXml()) except: pass if e.name == 'features': #self.onFeatures(e) features = {} for feature in e.children: features[(feature.uri, feature.name)] = feature self.authenticator.xmlstream.features = features self.authenticator.initializeStream() self.recieved_features = False else: self.onElement(e) # if no elements lets send out another poll if len(self.requests)==0: self.send()
def _cbSend(self, result): body, elements = result if body.hasAttribute('type') and body['type'] == 'terminate': reactor.close() self.requests.pop(0) for e in elements: if self.rawDataInFn: self.rawDataInFn(str(e.toXml())) if e.name == 'features': self.onFeatures(e) else: self.onElement(e) # if no elements lets send out another poll if len(self.requests)==0: self.send()
def _cbSend(self, result): body, elements = result if body.hasAttribute('type') and body['type'] == 'terminate': reactor.close() self.requests.pop(0) for e in elements: if self.rawDataInFn: self.rawDataInFn(e.toXml()) if e.name == 'features': self.onFeatures(e) else: self.onElement(e) # if no elements lets send out another poll if len(self.requests) == 0: self.send()
""" server.py: Script that starts DND server """ __author__ = "Runtov Constantin, Mandrila Daniel" __copyright__ = "Copyright 2020, The Earth" __credits__ = ["Runtov Constantin", "Mandrila Daniel"] __license__ = "USM" __version__ = "0.2" __maintainer__ = "Gheorghe Latul" __email__ = "*****@*****.**" __status__ = "Developing" from twisted.internet import reactor from src.Server import ServerFactory from src.Logging.Logger import Log if __name__ == '__main__': log_file = Log( class_name=__name__ ) reactor.listenTCP(1309, ServerFactory()) try: log_file.log_all(3, "Started") reactor.run() except KeyboardInterrupt as e: reactor.close() log_file.log_all(3, "Stopped")
def server_end(): reactor.close()