From 9837d8155f5e460063973201bc36e2d425947d2d Mon Sep 17 00:00:00 2001 From: Isaku Yamahata Date: Fri, 22 Nov 2013 16:45:56 +0900 Subject: [PATCH] base/app_manager: context might be RyuApp The class used for context might be RyuApp. So methods of RyuApp needs to be called. Reported-by: YAMADA Hideki Signed-off-by: Isaku Yamahata Signed-off-by: YAMAMOTO Takashi Signed-off-by: FUJITA Tomonori --- ryu/base/app_manager.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ryu/base/app_manager.py b/ryu/base/app_manager.py index 1cd7e9f6..99dde027 100644 --- a/ryu/base/app_manager.py +++ b/ryu/base/app_manager.py @@ -227,13 +227,14 @@ class AppManager(object): def create_contexts(self): for key, cls in self.contexts_cls.items(): - context = cls() + if issubclass(cls, RyuApp): + # hack for dpset + context = self._instantiate(None, cls) + else: + context = cls() LOG.info('creating context %s', key) assert not key in self.contexts self.contexts[key] = context - # hack for dpset - if issubclass(context.__class__, RyuApp): - register_app(context) return self.contexts def _update_bricks(self):