/* * Copyright (c) 2013 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, * and is available at http://www.eclipse.org/legal/epl-v10.html */ package org.opendaylight.controller.config.util; import java.util.Map; import java.util.Set; import javax.management.InstanceAlreadyExistsException; import javax.management.InstanceNotFoundException; import javax.management.ObjectName; import org.opendaylight.controller.config.api.ValidationException; import org.opendaylight.controller.config.api.jmx.ConfigTransactionControllerMXBean; import org.opendaylight.controller.config.api.jmx.ObjectNameUtil; import com.google.common.collect.Sets; public class TestingConfigTransactionController implements ConfigTransactionControllerMXBean { public final ObjectName conf1, conf2, conf3; public static final String moduleName1 = "moduleA"; public static final String moduleName2 = "moduleB"; public static final String instName1 = "instA"; public static final String instName2 = "instB"; public TestingConfigTransactionController() throws Exception { conf1 = ObjectNameUtil.createON(ObjectNameUtil.ON_DOMAIN + ":type=Module," + ObjectNameUtil.MODULE_FACTORY_NAME_KEY + "=" + moduleName1); conf2 = ObjectNameUtil.createON(ObjectNameUtil.ON_DOMAIN + ":type=Module," + ObjectNameUtil.MODULE_FACTORY_NAME_KEY + "=" + moduleName1 + "," + ObjectNameUtil.INSTANCE_NAME_KEY + "=" + instName1); conf3 = ObjectNameUtil.createON(ObjectNameUtil.ON_DOMAIN + ":type=Module," + ObjectNameUtil.MODULE_FACTORY_NAME_KEY + "=" + moduleName2 + "," + ObjectNameUtil.INSTANCE_NAME_KEY + "=" + instName2); } @Override public ObjectName createModule(String moduleName, String instanceName) throws InstanceAlreadyExistsException { return null; } @Override public void destroyModule(ObjectName objectName) throws InstanceNotFoundException { } @Override public void abortConfig() { } @Override public void validateConfig() throws ValidationException { } @Override public String getTransactionName() { return null; } @Override public Set getAvailableModuleNames() { return null; } @Override public Set lookupConfigBeans() { return Sets.newHashSet(conf1, conf2, conf3); } @Override public Set lookupConfigBeans(String moduleName) { if (moduleName.equals(moduleName1)) { return Sets.newHashSet(conf1, conf2); } else if (moduleName.equals(moduleName2)) { return Sets.newHashSet(conf3); } else { return null; } } @Override public ObjectName lookupConfigBean(String moduleName, String instanceName) throws InstanceNotFoundException { if (moduleName.equals(InstanceNotFoundException.class.getSimpleName())) { throw new InstanceNotFoundException(); } return conf3; } @Override public Set lookupConfigBeans(String moduleName, String instanceName) { if (moduleName.equals(moduleName1) && instanceName.equals(instName1)) { return Sets.newHashSet(conf2); } else if (moduleName.equals(moduleName2) && instanceName.equals(instName2)) { return Sets.newHashSet(conf3); } else { return null; } } @Override public void checkConfigBeanExists(ObjectName objectName) throws InstanceNotFoundException { throw new UnsupportedOperationException(); } @Override public void saveServiceReference(String serviceInterfaceName, String refName, ObjectName objectName) throws InstanceNotFoundException { throw new UnsupportedOperationException(); } @Override public boolean removeServiceReference(String serviceInterfaceName, String refName) { throw new UnsupportedOperationException(); } @Override public void removeAllServiceReferences() { throw new UnsupportedOperationException(); } @Override public ObjectName lookupConfigBeanByServiceInterfaceName(String serviceInterfaceName, String refName) { throw new UnsupportedOperationException(); } @Override public Map> getServiceMapping() { throw new UnsupportedOperationException(); } @Override public Map lookupServiceReferencesByServiceInterfaceName(String serviceInterfaceName) { throw new UnsupportedOperationException(); } @Override public Set lookupServiceInterfaceNames(ObjectName objectName) throws InstanceNotFoundException { throw new UnsupportedOperationException(); } @Override public String getServiceInterfaceName(String namespace, String localName) { throw new UnsupportedOperationException(); } @Override public boolean removeServiceReferences(ObjectName objectName) throws InstanceNotFoundException { throw new UnsupportedOperationException(); } @Override public Set getAvailableModuleFactoryQNames() { throw new UnsupportedOperationException(); } }