mirror of
https://github.com/faucetsdn/ryu.git
synced 2026-05-05 12:26:11 +02:00
controller.handler: simplify code
and use consistent variable names. no functional changes. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
This commit is contained in:
parent
d27deb34be
commit
77e82d3111
@ -336,21 +336,21 @@ class AppManager(object):
|
||||
for _k, m in inspect.getmembers(i, inspect.ismethod):
|
||||
if not hasattr(m, 'callers'):
|
||||
continue
|
||||
for e in m.callers.values():
|
||||
if not e.ev_source:
|
||||
for ev_cls, c in m.callers.iteritems():
|
||||
if not c.ev_source:
|
||||
continue
|
||||
# name is module name of ev_cls
|
||||
name = e.ev_source.split('.')[-1]
|
||||
name = c.ev_source.split('.')[-1]
|
||||
if name in SERVICE_BRICKS:
|
||||
brick = SERVICE_BRICKS[name]
|
||||
brick.register_observer(
|
||||
e.ev_cls, i.name, e.dispatchers)
|
||||
ev_cls, i.name, c.dispatchers)
|
||||
|
||||
# allow RyuApp and Event class are in different module
|
||||
for brick in SERVICE_BRICKS.itervalues():
|
||||
if e.ev_cls in brick._EVENTS:
|
||||
brick.register_observer(e.ev_cls, i.name,
|
||||
e.dispatchers)
|
||||
if ev_cls in brick._EVENTS:
|
||||
brick.register_observer(ev_cls, i.name,
|
||||
c.dispatchers)
|
||||
|
||||
@staticmethod
|
||||
def _report_brick(name, app):
|
||||
|
||||
@ -31,10 +31,9 @@ class _Caller(object):
|
||||
"""Describe how to handle an event class.
|
||||
"""
|
||||
|
||||
def __init__(self, ev_cls, dispatchers, ev_source):
|
||||
def __init__(self, dispatchers, ev_source):
|
||||
"""Initialize _Caller.
|
||||
|
||||
:param ev_cls: The event class to accept.
|
||||
:param dispatchers: A list of states or a state, in which this
|
||||
is in effect.
|
||||
None and [] mean all states.
|
||||
@ -42,7 +41,6 @@ class _Caller(object):
|
||||
ev_cls.__module__ for set_ev_cls.
|
||||
None for set_ev_handler.
|
||||
"""
|
||||
self.ev_cls = ev_cls
|
||||
self.dispatchers = dispatchers
|
||||
self.ev_source = ev_source
|
||||
|
||||
@ -53,8 +51,7 @@ def set_ev_cls(ev_cls, dispatchers=None):
|
||||
if 'callers' not in dir(handler):
|
||||
handler.callers = {}
|
||||
for e in _listify(ev_cls):
|
||||
c = _Caller(e, _listify(dispatchers), e.__module__)
|
||||
handler.callers[e] = c
|
||||
handler.callers[e] = _Caller(_listify(dispatchers), e.__module__)
|
||||
return handler
|
||||
return _set_ev_cls_dec
|
||||
|
||||
@ -64,8 +61,7 @@ def set_ev_handler(ev_cls, dispatchers=None):
|
||||
if 'callers' not in dir(handler):
|
||||
handler.callers = {}
|
||||
for e in _listify(ev_cls):
|
||||
c = _Caller(e, _listify(dispatchers), None)
|
||||
handler.callers[e] = c
|
||||
handler.callers[e] = _Caller(_listify(dispatchers), None)
|
||||
return handler
|
||||
return _set_ev_cls_dec
|
||||
|
||||
@ -86,16 +82,16 @@ def register_instance(i):
|
||||
for _k, m in inspect.getmembers(i, inspect.ismethod):
|
||||
# LOG.debug('instance %s k %s m %s', i, _k, m)
|
||||
if _has_caller(m):
|
||||
for c in m.callers.values():
|
||||
i.register_handler(c.ev_cls, m)
|
||||
for ev_cls, c in m.callers.iteritems():
|
||||
i.register_handler(ev_cls, m)
|
||||
|
||||
|
||||
def get_dependent_services(cls):
|
||||
services = []
|
||||
for _k, m in inspect.getmembers(cls, inspect.ismethod):
|
||||
if _has_caller(m):
|
||||
for c in m.callers.values():
|
||||
service = getattr(sys.modules[c.ev_cls.__module__],
|
||||
for ev_cls, c in m.callers.iteritems():
|
||||
service = getattr(sys.modules[ev_cls.__module__],
|
||||
'_SERVICE_NAME', None)
|
||||
if service:
|
||||
# avoid cls that registers the own events (like
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user