def on_response(self, response): if response.status in (200, 204): return self.fire(Event(self.channel), 'response_success', target=self.manager) secs = self._attempt * 2 self._attempt += 1 if secs < 1: secs = .2 elif secs > RETRY_INTERVAL_CAP: secs = RETRY_INTERVAL_CAP Timer(secs, Retry(), t=self).register(self)
def test_values(): event = Event() event.test_meta = 1 value = Value(event=event) value.value = 'foo' value.errors = False value.node_call_id = 1 x, id, errors, meta = load_value(dump_value(value)) assert value.value == x assert id == 1 assert not errors assert meta['test_meta'] == event.test_meta
def started(self, *args, **kwargs): self.hostname = self.root.config.get('core', 'hostname') b = self.root.config.get('core', 'persist_backend') b = b.lower() h = self.root.config.get('backend:%s' % b, 'host') p = self.root.config.get('backend:%s' % b, 'port') if b in ('http', 'https'): self._backends = backends = {} self._backend_state = {} while len(self._backends) < self._pool_count: bid = uuid4().hex backends[bid] = RetryHTTPClient(host=h, port=p, scheme=b, channel=bid).register(self) self._backend_state[bid] = IDLE else: logger.error("Invalid backend given: %s" % b) raise SystemExit Timer(CHECK_INTERVAL, Event(), 'persist', t=self, persist=True).register(self)
# To Start the Manager in ProcessMode #m.start(process=True) # Create a new instance of the Component Foo foo = Foo() #noncompfoo = NonComponentFoo() # Register foo with the Manager m += foo # Equivalent to: foo.register(m) #m += noncompfoo #m._add(a_handler, "a") """the plain function doesn't have attribute 'priority' (etc. i guess) so a no-go i figure""" # Push an Event to a Channel called "a" m.push(Event(), "a") # Send an Event to a Channel called "b" x = m.send(Event(), "b") print x # x contains: "Foo's Event Handler for 'b'" while 1: pass # Unregister foo foo.unregister() # Or: m -= foo # Stop the Manager m.stop()
mylogger.addHandler(h) m = Manager() logging.debug('manager init') m += Debugger() logging.debug('debugger init + register') #l = Logger() #Config.__dict__['__metaclass__'] = HandlerMetaClass #Config = HandlerMetaClass('Config', (_Config,), {}) c = Config(sys.argv[1]) print("\n\n") print(c.name) pprint(c._handlers) print("\n\n") #m += l m += c m.fire(Load(), target='config') #while m: m.flush() logging.debug('config init + register') p = plugin_manager(paths=sys.argv[2]) logging.debug('pm init') m += p logging.debug('pm register') #while m: m.flush() #(Manager() + Logger() + Config(sys.argv[1]) + plugin_manager(paths=sys.argv[2])).run() #while m: m.flush() m.fire(Event(collect_plugin), 'load', target='plugin_manager') #p.load(collect_plugin) logging.debug('pm load') m.run()
def _on_response(self, bid): rid = self._backend_state[bid] self.fire(Event(rid), 'remove', target=self.spool) self._backend_state[bid] = IDLE self.fire(Event(bid), 'persist', target=self)
def request(self, method, path, body=None, headers=None): conn = self._client conn.request('PUT', path, body=body, headers=headers) self.fire(Event(conn.getresponse()), 'response')