X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fconfig%2Fconfig-manager%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fmanager%2Fimpl%2Fdependencyresolver%2FDependencyResolverImpl.java;h=0741dab69d8c783459baf12530bcf6153a6a2632;hb=4497e2212e73e13356447b9644bbdc935411949a;hp=4f60a673f5f711ce17815061318f2641bbda0091;hpb=b692b07e81933ff8c85a936a90a934cf778282e2;p=controller.git diff --git a/opendaylight/config/config-manager/src/main/java/org/opendaylight/controller/config/manager/impl/dependencyresolver/DependencyResolverImpl.java b/opendaylight/config/config-manager/src/main/java/org/opendaylight/controller/config/manager/impl/dependencyresolver/DependencyResolverImpl.java index 4f60a673f5..0741dab69d 100644 --- a/opendaylight/config/config-manager/src/main/java/org/opendaylight/controller/config/manager/impl/dependencyresolver/DependencyResolverImpl.java +++ b/opendaylight/config/config-manager/src/main/java/org/opendaylight/controller/config/manager/impl/dependencyresolver/DependencyResolverImpl.java @@ -45,7 +45,7 @@ import org.slf4j.LoggerFactory; */ final class DependencyResolverImpl implements DependencyResolver, Comparable { - private static final Logger logger = LoggerFactory.getLogger(DependencyResolverImpl.class); + private static final Logger LOG = LoggerFactory.getLogger(DependencyResolverImpl.class); private final ModulesHolder modulesHolder; private final ModuleIdentifier name; @@ -104,12 +104,12 @@ final class DependencyResolverImpl implements DependencyResolver, format("ObjectName should not contain " + "transaction name. %s set to %s. ", jmxAttribute, dependentReadOnlyON - ), jmxAttribute + ), jmxAttribute ); - dependentReadOnlyON = translateServiceRefIfPossible(dependentReadOnlyON); + ObjectName newDependentReadOnlyON = translateServiceRefIfPossible(dependentReadOnlyON); - ModuleIdentifier moduleIdentifier = ObjectNameUtil.fromON(dependentReadOnlyON, ObjectNameUtil + ModuleIdentifier moduleIdentifier = ObjectNameUtil.fromON(newDependentReadOnlyON, ObjectNameUtil .TYPE_MODULE); ModuleFactory foundFactory = modulesHolder.findModuleFactory(moduleIdentifier, jmxAttribute); @@ -122,7 +122,7 @@ final class DependencyResolverImpl implements DependencyResolver, + "Module name is %s : %s, expected service interface %s, dependent module ON %s , " + "attribute %s", foundFactory.getImplementationName(), foundFactory, - expectedServiceInterface, dependentReadOnlyON, + expectedServiceInterface, newDependentReadOnlyON, jmxAttribute ); throw new JmxAttributeValidationException(message, jmxAttribute); @@ -134,13 +134,14 @@ final class DependencyResolverImpl implements DependencyResolver, // translate from serviceref to module ON private ObjectName translateServiceRefIfPossible(ObjectName dependentReadOnlyON) { - if (ObjectNameUtil.isServiceReference(dependentReadOnlyON)) { - String serviceQName = ObjectNameUtil.getServiceQName(dependentReadOnlyON); - String refName = ObjectNameUtil.getReferenceName(dependentReadOnlyON); - dependentReadOnlyON = ObjectNameUtil.withoutTransactionName( // strip again of transaction name + ObjectName translatedDependentReadOnlyON = dependentReadOnlyON; + if (ObjectNameUtil.isServiceReference(translatedDependentReadOnlyON)) { + String serviceQName = ObjectNameUtil.getServiceQName(translatedDependentReadOnlyON); + String refName = ObjectNameUtil.getReferenceName(translatedDependentReadOnlyON); + translatedDependentReadOnlyON = ObjectNameUtil.withoutTransactionName( // strip again of transaction name readableRegistry.lookupConfigBeanByServiceInterfaceName(serviceQName, refName)); } - return dependentReadOnlyON; + return translatedDependentReadOnlyON; } /** @@ -155,12 +156,12 @@ final class DependencyResolverImpl implements DependencyResolver, "Null parameters not allowed, got %s %s %s", expectedType, dependentReadOnlyON, jmxAttribute)); } - dependentReadOnlyON = translateServiceRefIfPossible(dependentReadOnlyON); + ObjectName translatedDependentReadOnlyON = translateServiceRefIfPossible(dependentReadOnlyON); transactionStatus.checkCommitStarted(); transactionStatus.checkNotCommitted(); ModuleIdentifier dependentModuleIdentifier = ObjectNameUtil.fromON( - dependentReadOnlyON, ObjectNameUtil.TYPE_MODULE); + translatedDependentReadOnlyON, ObjectNameUtil.TYPE_MODULE); Module module = modulesHolder.findModule(dependentModuleIdentifier, jmxAttribute); synchronized (this) { @@ -199,7 +200,7 @@ final class DependencyResolverImpl implements DependencyResolver, if (expectedBaseClass.isAssignableFrom(deserialized)) { return (Class) deserialized; } else { - logger.error("Cannot resolve class of identity {} : deserialized class {} is not a subclass of {}.", + LOG.error("Cannot resolve class of identity {} : deserialized class {} is not a subclass of {}.", identityRef, deserialized, expectedBaseClass); throw new IllegalArgumentException("Deserialized identity " + deserialized + " cannot be cast to " + expectedBaseClass); } @@ -277,17 +278,17 @@ final class DependencyResolverImpl implements DependencyResolver, @Override public Object getAttribute(ObjectName name, String attribute) throws MBeanException, AttributeNotFoundException, InstanceNotFoundException, ReflectionException { - name = translateServiceRefIfPossible(name); + ObjectName newName = translateServiceRefIfPossible(name); // add transaction name - name = ObjectNameUtil.withTransactionName(name, transactionName); - return mBeanServer.getAttribute(name, attribute); + newName = ObjectNameUtil.withTransactionName(newName, transactionName); + return mBeanServer.getAttribute(newName, attribute); } @Override public T newMXBeanProxy(ObjectName name, Class interfaceClass) { - name = translateServiceRefIfPossible(name); + ObjectName newName = translateServiceRefIfPossible(name); // add transaction name - name = ObjectNameUtil.withTransactionName(name, transactionName); - return JMX.newMXBeanProxy(mBeanServer, name, interfaceClass); + newName = ObjectNameUtil.withTransactionName(newName, transactionName); + return JMX.newMXBeanProxy(mBeanServer, newName, interfaceClass); } }