/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2013, 2017 Cisco Systems, Inc. and others. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
import org.osgi.framework.BundleContext;
/**
- * Responsible for creating TransactionJMXRegistrator, registering transaction and all its beans,
- * lookup of beans, closing of TransactionJMXRegistrator.
+ * Responsible for creating TransactionJMXRegistrator, registering transaction
+ * and all its beans, lookup of beans, closing of TransactionJMXRegistrator.
*/
-class ConfigTransactionLookupRegistry implements LookupRegistry, Closeable {
+class ConfigTransactionLookupRegistry implements LookupRegistry, Closeable {
private final TransactionJMXRegistrator transactionJMXRegistrator;
private final TransactionIdentifier transactionIdentifier;
private final TransactionModuleJMXRegistrator txModuleJMXRegistrator;
private final Map<String, Map.Entry<ModuleFactory, BundleContext>> allCurrentFactories;
- ConfigTransactionLookupRegistry(TransactionIdentifier transactionIdentifier,
- TransactionJMXRegistratorFactory factory, Map<String, Entry<ModuleFactory, BundleContext>> allCurrentFactories) {
+ interface TransactionJMXRegistratorFactory {
+ TransactionJMXRegistrator create();
+ }
+
+ ConfigTransactionLookupRegistry(final TransactionIdentifier transactionIdentifier,
+ final TransactionJMXRegistratorFactory factory,
+ final Map<String, Entry<ModuleFactory, BundleContext>> allCurrentFactories) {
this.transactionIdentifier = transactionIdentifier;
this.transactionJMXRegistrator = factory.create();
this.txModuleJMXRegistrator = transactionJMXRegistrator.createTransactionModuleJMXRegistrator();
this.allCurrentFactories = allCurrentFactories;
}
- private void checkTransactionName(ObjectName objectName) {
- String foundTransactionName = ObjectNameUtil
- .getTransactionName(objectName);
- if (transactionIdentifier.getName().equals(foundTransactionName) == false) {
- throw new IllegalArgumentException("Wrong transaction name "
- + objectName);
+ private void checkTransactionName(final ObjectName objectName) {
+ String foundTransactionName = ObjectNameUtil.getTransactionName(objectName);
+ if (!transactionIdentifier.getName().equals(foundTransactionName)) {
+ throw new IllegalArgumentException("Wrong transaction name " + objectName);
}
}
* {@inheritDoc}
*/
@Override
- public Set<ObjectName> lookupConfigBeans(String moduleName) {
+ public Set<ObjectName> lookupConfigBeans(final String moduleName) {
return lookupConfigBeans(moduleName, "*");
}
* {@inheritDoc}
*/
@Override
- public ObjectName lookupConfigBean(String moduleName, String instanceName)
- throws InstanceNotFoundException {
- return LookupBeansUtil.lookupConfigBean(this, moduleName, instanceName);
+ public Set<ObjectName> lookupConfigBeans(final String moduleName, final String instanceName) {
+ ObjectName namePattern = ObjectNameUtil.createModulePattern(moduleName, instanceName,
+ transactionIdentifier.getName());
+ return txModuleJMXRegistrator.queryNames(namePattern, null);
}
/**
* {@inheritDoc}
*/
@Override
- public Set<ObjectName> lookupConfigBeans(String moduleName,
- String instanceName) {
- ObjectName namePattern = ObjectNameUtil.createModulePattern(moduleName,
- instanceName, transactionIdentifier.getName());
- return txModuleJMXRegistrator.queryNames(namePattern, null);
+ public ObjectName lookupConfigBean(final String moduleName, final String instanceName)
+ throws InstanceNotFoundException {
+ return LookupBeansUtil.lookupConfigBean(this, moduleName, instanceName);
}
@Override
- public void checkConfigBeanExists(ObjectName objectName) throws InstanceNotFoundException {
+ public void checkConfigBeanExists(final ObjectName objectName) throws InstanceNotFoundException {
ObjectNameUtil.checkDomain(objectName);
ObjectNameUtil.checkType(objectName, ObjectNameUtil.TYPE_MODULE);
checkTransactionName(objectName);
// make sure exactly one match is found:
- LookupBeansUtil.lookupConfigBean(this, ObjectNameUtil.getFactoryName(objectName), ObjectNameUtil.getInstanceName(objectName));
+ LookupBeansUtil.lookupConfigBean(this, ObjectNameUtil.getFactoryName(objectName),
+ ObjectNameUtil.getInstanceName(objectName));
}
TransactionIdentifier getTransactionIdentifier() {
return txModuleJMXRegistrator;
}
+ @Override
public void close() {
transactionJMXRegistrator.close();
}
- public void registerMBean(ConfigTransactionControllerInternal transactionController, ObjectName controllerObjectName) throws InstanceAlreadyExistsException {
+ public void registerMBean(final ConfigTransactionControllerInternal transactionController,
+ final ObjectName controllerObjectName) throws InstanceAlreadyExistsException {
transactionJMXRegistrator.registerMBean(transactionController, controllerObjectName);
}
return ModuleQNameUtil.getQNames(allCurrentFactories);
}
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public Set<ObjectName> lookupRuntimeBeans() {
+ return lookupRuntimeBeans("*", "*");
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public Set<ObjectName> lookupRuntimeBeans(final String moduleName, final String instanceName) {
+ String finalModuleName = moduleName == null ? "*" : moduleName;
+ String finalInstanceName = instanceName == null ? "*" : instanceName;
+ ObjectName namePattern = ObjectNameUtil.createRuntimeBeanPattern(finalModuleName, finalInstanceName);
+ return transactionJMXRegistrator.queryNames(namePattern, null);
+ }
@Override
public String toString() {
- return "ConfigTransactionLookupRegistry{" +
- "transactionIdentifier=" + transactionIdentifier +
- '}';
+ return "ConfigTransactionLookupRegistry{" + "transactionIdentifier=" + transactionIdentifier + '}';
}
}
-
-interface TransactionJMXRegistratorFactory {
- TransactionJMXRegistrator create();
-}