diff options
author | YAMAMOTO Takashi <yamamoto@valinux.co.jp> | 2013-02-08 12:28:11 +0900 |
---|---|---|
committer | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2013-02-08 22:55:16 +0900 |
commit | ea80caeec71f5da9f6a6596401ca976258ce86c8 (patch) | |
tree | 1aa19a56cec6cc46441a2ef95e236d496466d964 | |
parent | 9bd88b5a5ddcd3f93e71299249950a0357646c4e (diff) |
app_manager: add an function to register an app instance explicitly
will be used by gre_tunnel
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
-rw-r--r-- | ryu/base/app_manager.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/ryu/base/app_manager.py b/ryu/base/app_manager.py index 781798ed..2fdd28a5 100644 --- a/ryu/base/app_manager.py +++ b/ryu/base/app_manager.py @@ -34,6 +34,11 @@ def lookup_service_brick(name): return SERVICE_BRICKS.get(name) +def register_app(app): + SERVICE_BRICKS[app.name] = app + register_instance(app) + + class RyuApp(object): """ Base class for Ryu network application @@ -139,8 +144,7 @@ class AppManager(object): self.contexts[key] = context # hack for dpset if context.__class__.__base__ == RyuApp: - SERVICE_BRICKS[context.name] = context - register_instance(context) + register_app(context) return self.contexts def instantiate_apps(self, *args, **kwargs): @@ -160,9 +164,8 @@ class AppManager(object): assert app_name not in self.applications app = cls(*args, **kwargs) - register_instance(app) + register_app(app) self.applications[app_name] = app - SERVICE_BRICKS[app.name] = app for key, i in SERVICE_BRICKS.items(): for _k, m in inspect.getmembers(i, inspect.ismethod): |