app_manager: Stop checking h.callers in get_handlers()

dynamically registered handlers (vs. ones registered via
set_ev_cls/handler decorators) do not necessarily have h.callers.

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:
YAMAMOTO Takashi 2014-06-16 19:18:53 +09:00 committed by FUJITA Tomonori
parent ba9621627d
commit 4f19fc54cd

View File

@ -226,9 +226,10 @@ class RyuApp(object):
return handlers
def test(h):
if ev_cls not in h.callers:
# this handler does not listen the event.
return False
if not hasattr(h, 'callers') or ev_cls not in h.callers:
# dynamically registered handlers does not have
# h.callers element for the event.
return True
states = h.callers[ev_cls].dispatchers
if not states:
# empty states means all states