def finish(self): """ Stop the source and shutdown the server. """ Source.finish(self) if not self.config.simulation: self.server.shutdown()
def __init__(self, num, config, logger, queue): Source.__init__(self, num, config, logger, queue) if self.options.has_key('filename'): try: self.file = open(self.options['filename'], 'r') except IOError, e: self.raiseException(str(e))
def __init__(self, num, config, logger, queue): Source.__init__(self, num, config, logger, queue) if self.options.has_key("eventname"): self.eventname = self.options['eventname'] else: self.raiseException("No 'eventname' specified in options.") if not self.options.has_key("interval"): self.raiseException("No 'interval' specified in options.") if not self.options['interval'].isdigit(): self.raiseException("Option 'interval': must be a number.") self.interval = int(self.options['interval'])
def __init__(self, num, config, logger, queue): Source.__init__(self, num, config, logger, queue) if self.options.has_key("address"): self.address = self.options['address'] else: self.address = "" if not self.options.has_key("port"): self.raiseException("No 'port' specified in options.") if not self.options['port'].isdigit(): self.raiseException("Option 'port': must be a number.") self.port = int(self.options['port']) # create server if self.config.simulation: # synchronous self.server = SocketServer.TCPServer((self.address, self.port), TCPHandler) else: # asynchronous, threaded self.server = ThreadedTCPServer((self.address, self.port), TCPHandler) self.server.daemon_threads = True # child threads shouldn't prevent exit self.server.parent = self