summaryrefslogtreecommitdiffstats
path: root/nova/manager.py
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2013-04-25 16:56:58 +0000
committerGerrit Code Review <review@openstack.org>2013-04-25 16:56:58 +0000
commit46e6b91984e5c4504295bae8681d6113cdaafc29 (patch)
treec2113e745d6e4055d6cd76489025ce4fa19d0a9d /nova/manager.py
parentf8dfde8e83be795fe04c4cc9687ad0cf460abb23 (diff)
parent1a546c67ee94eef2260cd64e7fcb3fb0ed44b4f6 (diff)
downloadnova-46e6b91984e5c4504295bae8681d6113cdaafc29.tar.gz
nova-46e6b91984e5c4504295bae8681d6113cdaafc29.tar.xz
nova-46e6b91984e5c4504295bae8681d6113cdaafc29.zip
Merge "Add an rpc API common to all services."
Diffstat (limited to 'nova/manager.py')
-rw-r--r--nova/manager.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/nova/manager.py b/nova/manager.py
index d6a62c509..f2a0636d1 100644
--- a/nova/manager.py
+++ b/nova/manager.py
@@ -57,6 +57,7 @@ import datetime
import eventlet
from oslo.config import cfg
+from nova import baserpc
from nova.db import base
from nova import exception
from nova.openstack.common import log as logging
@@ -195,12 +196,13 @@ class Manager(base.Base):
# Set RPC API version to 1.0 by default.
RPC_API_VERSION = '1.0'
- def __init__(self, host=None, db_driver=None):
+ def __init__(self, host=None, db_driver=None, service_name='undefined'):
if not host:
host = CONF.host
self.host = host
self.load_plugins()
self.backdoor_port = None
+ self.service_name = service_name
super(Manager, self).__init__(db_driver)
def load_plugins(self):
@@ -213,7 +215,8 @@ class Manager(base.Base):
If a manager would like to set an rpc API version, or support more than
one class as the target of rpc messages, override this method.
'''
- return rpc_dispatcher.RpcDispatcher([self])
+ base_rpc = baserpc.BaseRPCAPI(self.service_name)
+ return rpc_dispatcher.RpcDispatcher([self, base_rpc])
def periodic_tasks(self, context, raise_on_error=False):
"""Tasks to be run at a periodic interval."""
@@ -292,7 +295,8 @@ class SchedulerDependentManager(Manager):
self.last_capabilities = None
self.service_name = service_name
self.scheduler_rpcapi = scheduler_rpcapi.SchedulerAPI()
- super(SchedulerDependentManager, self).__init__(host, db_driver)
+ super(SchedulerDependentManager, self).__init__(host, db_driver,
+ service_name)
def load_plugins(self):
pluginmgr = pluginmanager.PluginManager('nova', self.service_name)