groupbasedpolicy:groupbasedpolicy-impl
</type>
<name>groupbasedpolicy-impl</name>
-
- <data-broker>
- <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-async-data-broker</type>
- <name>binding-data-broker</name>
- </data-broker>
-
- <rpc-registry>
- <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-rpc-registry</type>
- <name>binding-rpc-broker</name>
- </rpc-registry>
-
- <policy-validator-registry>
- <type xmlns:groupbasedpolicy="urn:opendaylight:params:xml:ns:yang:controller:config:groupbasedpolicy">groupbasedpolicy:policy-validator-registry</type>
- <name>policy-validator-registry</name>
- </policy-validator-registry>
</module>
<module>
<type xmlns:groupbasedpolicy="urn:opendaylight:params:xml:ns:yang:controller:config:groupbasedpolicy">
groupbasedpolicy:policy-validator-registry-impl
</type>
<name>policy-validator-registry</name>
-
- <data-broker>
- <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-async-data-broker</type>
- <name>binding-data-broker</name>
- </data-broker>
</module>
<module>
<type xmlns:groupbasedpolicy="urn:opendaylight:params:xml:ns:yang:controller:config:groupbasedpolicy">
groupbasedpolicy:ep-renderer-augmentation-registry-impl
</type>
<name>ep-renderer-augmentation-registry</name>
-
- <data-broker>
- <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-async-data-broker</type>
- <name>binding-data-broker</name>
- </data-broker>
-
- <rpc-registry>
- <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-rpc-registry</type>
- <name>binding-rpc-broker</name>
- </rpc-registry>
</module>
<module>
<type xmlns:groupbasedpolicy="urn:opendaylight:params:xml:ns:yang:controller:config:groupbasedpolicy">
groupbasedpolicy:domain-specific-registry-impl
</type>
<name>domain-specific-registry</name>
-
- <data-broker>
- <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-async-data-broker</type>
- <name>binding-data-broker</name>
- </data-broker>
-
- <rpc-registry>
- <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-rpc-registry</type>
- <name>binding-rpc-broker</name>
- </rpc-registry>
</module>
<module>
<type xmlns:groupbasedpolicy="urn:opendaylight:params:xml:ns:yang:controller:config:groupbasedpolicy">
groupbasedpolicy:statistics-manager-impl
</type>
<name>statistics-manager-impl</name>
-
- <data-broker>
- <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-async-data-broker</type>
- <name>binding-data-broker</name>
- </data-broker>
</module>
</modules>
--- /dev/null
+/*
+ * Copyright (c) 2016 Cisco Systems, Inc. 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.yang.config.groupbasedpolicy;
+
+import java.util.concurrent.Future;
+
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.groupbasedpolicy.api.DomainSpecificRegistry;
+import org.opendaylight.groupbasedpolicy.api.EndpointAugmentorRegistry;
+import org.opendaylight.groupbasedpolicy.api.NetworkDomainAugmentorRegistry;
+import org.opendaylight.groupbasedpolicy.base_endpoint.BaseEndpointServiceImpl;
+import org.opendaylight.groupbasedpolicy.base_endpoint.EndpointAugmentorRegistryImpl;
+import org.opendaylight.groupbasedpolicy.forwarding.NetworkDomainAugmentorRegistryImpl;
+import org.opendaylight.groupbasedpolicy.renderer.RendererManager;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.BaseEndpointService;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.RegisterEndpointInput;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.base_endpoint.rev160427.UnregisterEndpointInput;
+import org.opendaylight.yangtools.yang.common.RpcResult;
+
+public class DomainSpecificRegistryInstance implements DomainSpecificRegistry, BaseEndpointService, AutoCloseable {
+
+ private final EndpointAugmentorRegistryImpl endpointAugmentorRegistryImpl;
+ private final NetworkDomainAugmentorRegistryImpl netDomainAugmentorRegistryImpl;
+ private final BaseEndpointServiceImpl baseEndpointServiceImpl;
+ private final RendererManager rendererManager;
+
+ public DomainSpecificRegistryInstance(DataBroker dataProvider) {
+ endpointAugmentorRegistryImpl = new EndpointAugmentorRegistryImpl();
+ netDomainAugmentorRegistryImpl = new NetworkDomainAugmentorRegistryImpl();
+ baseEndpointServiceImpl = new BaseEndpointServiceImpl(dataProvider, endpointAugmentorRegistryImpl);
+ rendererManager = new RendererManager(dataProvider, netDomainAugmentorRegistryImpl, endpointAugmentorRegistryImpl);
+ }
+
+ @Override
+ public void close() throws Exception {
+ baseEndpointServiceImpl.close();
+ rendererManager.close();
+ }
+
+ @Override
+ public EndpointAugmentorRegistry getEndpointAugmentorRegistry() {
+ return endpointAugmentorRegistryImpl;
+ }
+
+ @Override
+ public NetworkDomainAugmentorRegistry getNetworkDomainAugmentorRegistry() {
+ return netDomainAugmentorRegistryImpl;
+ }
+
+ @Override
+ public Future<RpcResult<Void>> unregisterEndpoint(UnregisterEndpointInput input) {
+ return baseEndpointServiceImpl.unregisterEndpoint(input);
+ }
+
+ @Override
+ public Future<RpcResult<Void>> registerEndpoint(RegisterEndpointInput input) {
+ return baseEndpointServiceImpl.registerEndpoint(input);
+ }
+
+}
package org.opendaylight.controller.config.yang.config.groupbasedpolicy;
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;
+import org.opendaylight.controller.config.api.osgi.WaitingServiceTracker;
import org.opendaylight.groupbasedpolicy.api.DomainSpecificRegistry;
import org.opendaylight.groupbasedpolicy.api.EndpointAugmentorRegistry;
import org.opendaylight.groupbasedpolicy.api.NetworkDomainAugmentorRegistry;
-import org.opendaylight.groupbasedpolicy.base_endpoint.BaseEndpointServiceImpl;
-import org.opendaylight.groupbasedpolicy.base_endpoint.EndpointAugmentorRegistryImpl;
-import org.opendaylight.groupbasedpolicy.forwarding.NetworkDomainAugmentorRegistryImpl;
-import org.opendaylight.groupbasedpolicy.renderer.RendererManager;
+import org.osgi.framework.BundleContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class DomainSpecificRegistryModule extends org.opendaylight.controller.config.yang.config.groupbasedpolicy.AbstractDomainSpecificRegistryModule {
private static final Logger LOG = LoggerFactory.getLogger(DomainSpecificRegistryModule.class);
+ private BundleContext bundleContext;
public DomainSpecificRegistryModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
super(identifier, dependencyResolver);
@Override
public java.lang.AutoCloseable createInstance() {
- final DataBroker dataProvider = getDataBrokerDependency();
- final RpcProviderRegistry rpcRegistry = getRpcRegistryDependency();
- Instance instance = new Instance(dataProvider, rpcRegistry);
- LOG.info("{} successfully started.", DomainSpecificRegistryModule.class.getCanonicalName());
- return instance;
- }
-
- private static class Instance implements DomainSpecificRegistry, AutoCloseable {
-
- private final EndpointAugmentorRegistryImpl endpointAugmentorRegistryImpl;
- private final NetworkDomainAugmentorRegistryImpl netDomainAugmentorRegistryImpl;
- private final BaseEndpointServiceImpl baseEndpointServiceImpl;
- private final RendererManager rendererManager;
-
- Instance(DataBroker dataProvider, RpcProviderRegistry rpcRegistry) {
- endpointAugmentorRegistryImpl = new EndpointAugmentorRegistryImpl();
- netDomainAugmentorRegistryImpl = new NetworkDomainAugmentorRegistryImpl();
- baseEndpointServiceImpl = new BaseEndpointServiceImpl(dataProvider, rpcRegistry, endpointAugmentorRegistryImpl);
- rendererManager = new RendererManager(dataProvider, netDomainAugmentorRegistryImpl, endpointAugmentorRegistryImpl);
- }
-
- @Override
- public void close() throws Exception {
- baseEndpointServiceImpl.close();
- rendererManager.close();
- }
-
- @Override
- public EndpointAugmentorRegistry getEndpointAugmentorRegistry() {
- return endpointAugmentorRegistryImpl;
- }
-
- @Override
- public NetworkDomainAugmentorRegistry getNetworkDomainAugmentorRegistry() {
- return netDomainAugmentorRegistryImpl;
+ final WaitingServiceTracker<DomainSpecificRegistry> tracker = WaitingServiceTracker.create(
+ DomainSpecificRegistry.class, bundleContext);
+ final DomainSpecificRegistry service = tracker.waitForService(WaitingServiceTracker.FIVE_MINUTES);
+
+ final class Instance implements DomainSpecificRegistry, AutoCloseable {
+ @Override
+ public void close() {
+ tracker.close();
+ }
+
+ @Override
+ public EndpointAugmentorRegistry getEndpointAugmentorRegistry() {
+ return service.getEndpointAugmentorRegistry();
+ }
+
+ @Override
+ public NetworkDomainAugmentorRegistry getNetworkDomainAugmentorRegistry() {
+ return service.getNetworkDomainAugmentorRegistry();
+ }
}
+ return new Instance();
}
+ void setBundleContext(BundleContext bundleContext) {
+ this.bundleContext = bundleContext;
+ }
}
*/
package org.opendaylight.controller.config.yang.config.groupbasedpolicy;
+
+import org.opendaylight.controller.config.api.DependencyResolver;
+import org.osgi.framework.BundleContext;
+
public class DomainSpecificRegistryModuleFactory extends org.opendaylight.controller.config.yang.config.groupbasedpolicy.AbstractDomainSpecificRegistryModuleFactory {
+ @Override
+ public DomainSpecificRegistryModule instantiateModule(String instanceName, DependencyResolver dependencyResolver,
+ DomainSpecificRegistryModule oldModule, AutoCloseable oldInstance, BundleContext bundleContext) {
+ DomainSpecificRegistryModule module = super.instantiateModule(instanceName, dependencyResolver, oldModule,
+ oldInstance, bundleContext);
+ module.setBundleContext(bundleContext);
+ return module;
+ }
+
+ @Override
+ public DomainSpecificRegistryModule instantiateModule(String instanceName, DependencyResolver dependencyResolver,
+ BundleContext bundleContext) {
+ DomainSpecificRegistryModule module = super.instantiateModule(instanceName, dependencyResolver, bundleContext);
+ module.setBundleContext(bundleContext);
+ return module;
+ }
}
--- /dev/null
+/*
+ * Copyright (c) 2016 Cisco Systems, Inc. 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.yang.config.groupbasedpolicy;
+
+import java.util.concurrent.Future;
+
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.groupbasedpolicy.api.EpRendererAugmentation;
+import org.opendaylight.groupbasedpolicy.api.EpRendererAugmentationRegistry;
+import org.opendaylight.groupbasedpolicy.endpoint.EndpointRpcRegistry;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.EndpointService;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.RegisterEndpointInput;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.RegisterL3PrefixEndpointInput;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.SetEndpointGroupConditionsInput;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.UnregisterEndpointInput;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.UnsetEndpointGroupConditionsInput;
+import org.opendaylight.yangtools.yang.common.RpcResult;
+
+public class EpRendererAugmentationRegistryImplInstance implements EpRendererAugmentationRegistry, EndpointService, AutoCloseable{
+
+
+ private final EndpointRpcRegistry endpointRpcRegistry;
+
+ public EpRendererAugmentationRegistryImplInstance(DataBroker dataProvider) {
+ endpointRpcRegistry = new EndpointRpcRegistry(dataProvider);
+ }
+ @Override
+ public void close() throws Exception {
+ endpointRpcRegistry.close();
+ }
+
+ @Override
+ public void register(EpRendererAugmentation epRendererAugmentation) {
+ endpointRpcRegistry.register(epRendererAugmentation);
+ }
+
+ @Override
+ public void unregister(EpRendererAugmentation epRendererAugmentation) {
+ endpointRpcRegistry.unregister(epRendererAugmentation);
+ }
+ @Override
+ public Future<RpcResult<Void>> unsetEndpointGroupConditions(UnsetEndpointGroupConditionsInput input) {
+ return endpointRpcRegistry.unsetEndpointGroupConditions(input);
+ }
+ @Override
+ public Future<RpcResult<Void>> registerEndpoint(RegisterEndpointInput input) {
+ return endpointRpcRegistry.registerEndpoint(input);
+ }
+ @Override
+ public Future<RpcResult<Void>> setEndpointGroupConditions(SetEndpointGroupConditionsInput input) {
+ return endpointRpcRegistry.setEndpointGroupConditions(input);
+ }
+ @Override
+ public Future<RpcResult<Void>> registerL3PrefixEndpoint(RegisterL3PrefixEndpointInput input) {
+ return endpointRpcRegistry.registerL3PrefixEndpoint(input);
+ }
+ @Override
+ public Future<RpcResult<Void>> unregisterEndpoint(UnregisterEndpointInput input) {
+ return endpointRpcRegistry.unregisterEndpoint(input);
+ }
+
+
+}
package org.opendaylight.controller.config.yang.config.groupbasedpolicy;
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;
-import org.opendaylight.groupbasedpolicy.endpoint.EndpointRpcRegistry;
+import org.opendaylight.controller.config.api.osgi.WaitingServiceTracker;
+import org.opendaylight.groupbasedpolicy.api.EpRendererAugmentation;
+import org.opendaylight.groupbasedpolicy.api.EpRendererAugmentationRegistry;
+import org.osgi.framework.BundleContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class EpRendererAugmentationRegistryImplModule extends org.opendaylight.controller.config.yang.config.groupbasedpolicy.AbstractEpRendererAugmentationRegistryImplModule {
private static final Logger LOG = LoggerFactory.getLogger(EpRendererAugmentationRegistryImplModule.class);
+ private BundleContext bundleContext;
public EpRendererAugmentationRegistryImplModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
super(identifier, dependencyResolver);
@Override
public java.lang.AutoCloseable createInstance() {
- final DataBroker dataProvider = getDataBrokerDependency();
- final RpcProviderRegistry rpcRegistry = getRpcRegistryDependency();
+ final WaitingServiceTracker<EpRendererAugmentationRegistry> tracker = WaitingServiceTracker.create(
+ EpRendererAugmentationRegistry.class, bundleContext);
+ final EpRendererAugmentationRegistry service = tracker.waitForService(WaitingServiceTracker.FIVE_MINUTES);
- EndpointRpcRegistry endpointRpcRegistry = new EndpointRpcRegistry(dataProvider, rpcRegistry);
- LOG.info("{} successfully started.", EpRendererAugmentationRegistryImplModule.class.getCanonicalName());
- return endpointRpcRegistry;
+ final class Instance implements EpRendererAugmentationRegistry, AutoCloseable {
+ @Override
+ public void close() {
+ tracker.close();
+ }
+
+ @Override
+ public void register(EpRendererAugmentation epRendererAugmentation) {
+ service.register(epRendererAugmentation);
+ }
+
+ @Override
+ public void unregister(EpRendererAugmentation epRendererAugmentation) {
+ service.unregister(epRendererAugmentation);
+ }
+ }
+
+ return new Instance();
}
+ void setBundleContext(BundleContext bundleContext) {
+ this.bundleContext = bundleContext;
+ }
}
* Do not modify this file unless it is present under src/main directory
*/
package org.opendaylight.controller.config.yang.config.groupbasedpolicy;
+
+import org.opendaylight.controller.config.api.DependencyResolver;
+import org.osgi.framework.BundleContext;
+
public class EpRendererAugmentationRegistryImplModuleFactory extends org.opendaylight.controller.config.yang.config.groupbasedpolicy.AbstractEpRendererAugmentationRegistryImplModuleFactory {
+ @Override
+ public EpRendererAugmentationRegistryImplModule instantiateModule(String instanceName, DependencyResolver dependencyResolver,
+ EpRendererAugmentationRegistryImplModule oldModule, AutoCloseable oldInstance, BundleContext bundleContext) {
+ EpRendererAugmentationRegistryImplModule module = super.instantiateModule(instanceName, dependencyResolver, oldModule,
+ oldInstance, bundleContext);
+ module.setBundleContext(bundleContext);
+ return module;
+ }
+
+ @Override
+ public EpRendererAugmentationRegistryImplModule instantiateModule(String instanceName, DependencyResolver dependencyResolver,
+ BundleContext bundleContext) {
+ EpRendererAugmentationRegistryImplModule module = super.instantiateModule(instanceName, dependencyResolver, bundleContext);
+ module.setBundleContext(bundleContext);
+ return module;
+ }
}
--- /dev/null
+/*
+ * Copyright (c) 2016 Cisco Systems, Inc. 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.yang.config.groupbasedpolicy;
+
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
+import org.opendaylight.groupbasedpolicy.api.PolicyValidatorRegistry;
+import org.opendaylight.groupbasedpolicy.location.resolver.LocationResolver;
+import org.opendaylight.groupbasedpolicy.resolver.ForwardingResolver;
+import org.opendaylight.groupbasedpolicy.sf.SubjectFeatureDefinitionProvider;
+import org.opendaylight.groupbasedpolicy.sf.SupportedActionDefinitionListener;
+import org.opendaylight.groupbasedpolicy.sf.SupportedClassifierDefinitionListener;
+
+public class GroupbasedpolicyInstance implements AutoCloseable {
+
+ private final SubjectFeatureDefinitionProvider sfdp;
+ private final SupportedClassifierDefinitionListener supportedClassifierDefinitionListener;
+ private final SupportedActionDefinitionListener supportedActionDefinitionListener;
+ private final LocationResolver locationResolver;
+ private final ForwardingResolver forwardingResolver;
+
+ public GroupbasedpolicyInstance(DataBroker dataProvider, PolicyValidatorRegistry validatorRegistry)
+ throws TransactionCommitFailedException {
+ sfdp = new SubjectFeatureDefinitionProvider(dataProvider);
+ supportedClassifierDefinitionListener =
+ new SupportedClassifierDefinitionListener(dataProvider, validatorRegistry);
+ supportedActionDefinitionListener = new SupportedActionDefinitionListener(dataProvider);
+ locationResolver = new LocationResolver(dataProvider);
+ forwardingResolver = new ForwardingResolver(dataProvider);
+ }
+
+ @Override
+ public void close() throws Exception {
+ sfdp.close();
+ supportedClassifierDefinitionListener.close();
+ supportedActionDefinitionListener.close();
+ locationResolver.close();
+ forwardingResolver.close();
+ }
+}
package org.opendaylight.controller.config.yang.config.groupbasedpolicy;
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
-import org.opendaylight.groupbasedpolicy.api.PolicyValidatorRegistry;
-import org.opendaylight.groupbasedpolicy.location.resolver.LocationResolver;
-import org.opendaylight.groupbasedpolicy.resolver.ForwardingResolver;
-import org.opendaylight.groupbasedpolicy.sf.SubjectFeatureDefinitionProvider;
-import org.opendaylight.groupbasedpolicy.sf.SupportedActionDefinitionListener;
-import org.opendaylight.groupbasedpolicy.sf.SupportedClassifierDefinitionListener;
+import org.opendaylight.controller.sal.common.util.NoopAutoCloseable;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
*/
@Override
public java.lang.AutoCloseable createInstance() {
- DataBroker dataProvider = getDataBrokerDependency();
- PolicyValidatorRegistry validatorRegistry = getPolicyValidatorRegistryDependency();
-
- try {
- Instance instance = new Instance(dataProvider, validatorRegistry);
- LOG.info("{} successfully started.", GroupbasedpolicyModule.class.getCanonicalName());
- return instance;
- } catch (TransactionCommitFailedException e) {
- LOG.error(
- "Error creating instance of SubjectFeatureDefinitionProvider; Subject Feature Definitions were not put to Datastore");
- throw new RuntimeException(e);
- }
+ return NoopAutoCloseable.INSTANCE;
}
-
- private static class Instance implements AutoCloseable {
-
- private final SubjectFeatureDefinitionProvider sfdp;
- private final SupportedClassifierDefinitionListener supportedClassifierDefinitionListener;
- private final SupportedActionDefinitionListener supportedActionDefinitionListener;
- private final LocationResolver locationResolver;
- private final ForwardingResolver forwardingResolver;
-
- Instance(DataBroker dataProvider, PolicyValidatorRegistry validatorRegistry) throws TransactionCommitFailedException {
- sfdp = new SubjectFeatureDefinitionProvider(dataProvider);
- supportedClassifierDefinitionListener = new SupportedClassifierDefinitionListener(dataProvider, validatorRegistry);
- supportedActionDefinitionListener = new SupportedActionDefinitionListener(dataProvider);
- locationResolver = new LocationResolver(dataProvider);
- forwardingResolver = new ForwardingResolver(dataProvider);
- }
-
- @Override
- public void close() throws Exception {
- sfdp.close();
- supportedClassifierDefinitionListener.close();
- supportedActionDefinitionListener.close();
- locationResolver.close();
- forwardingResolver.close();
- }
- }
-
}
--- /dev/null
+/*
+ * Copyright (c) 2016 Cisco Systems, Inc. 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.yang.config.groupbasedpolicy;
+
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.groupbasedpolicy.api.PolicyValidatorRegistry;
+import org.opendaylight.groupbasedpolicy.api.Validator;
+import org.opendaylight.groupbasedpolicy.resolver.PolicyResolver;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.ActionDefinitionId;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.ClassifierDefinitionId;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.tenants.tenant.policy.subject.feature.instances.ActionInstance;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.tenants.tenant.policy.subject.feature.instances.ClassifierInstance;
+
+public class PolicyValidatorRegistryInstance implements PolicyValidatorRegistry, AutoCloseable {
+
+ private final PolicyResolver policyResolver;
+
+ public PolicyValidatorRegistryInstance (DataBroker dataBroker) {
+ this.policyResolver = new PolicyResolver(dataBroker);
+ }
+
+ @Override
+ public void close() throws Exception {
+ policyResolver.close();
+ }
+
+ @Override
+ public void register(ActionDefinitionId actionDefinitionId, Validator<ActionInstance> validator) {
+ policyResolver.register(actionDefinitionId, validator);
+ }
+
+ @Override
+ public void unregister(ActionDefinitionId actionDefinitionId, Validator<ActionInstance> validator) {
+ policyResolver.unregister(actionDefinitionId, validator);
+ }
+
+ @Override
+ public void register(ClassifierDefinitionId classifierDefinitionId, Validator<ClassifierInstance> validator) {
+ policyResolver.register(classifierDefinitionId, validator);
+ }
+
+ @Override
+ public void unregister(ClassifierDefinitionId classifierDefinitionId, Validator<ClassifierInstance> validator) {
+ policyResolver.unregister(classifierDefinitionId, validator);
+ }
+}
package org.opendaylight.controller.config.yang.config.groupbasedpolicy;
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.groupbasedpolicy.resolver.PolicyResolver;
+import org.opendaylight.controller.config.api.osgi.WaitingServiceTracker;
+import org.opendaylight.groupbasedpolicy.api.PolicyValidatorRegistry;
+import org.opendaylight.groupbasedpolicy.api.Validator;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.ActionDefinitionId;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.ClassifierDefinitionId;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.tenants.tenant.policy.subject.feature.instances.ActionInstance;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.tenants.tenant.policy.subject.feature.instances.ClassifierInstance;
+import org.osgi.framework.BundleContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class PolicyValidatorRegistryModule extends org.opendaylight.controller.config.yang.config.groupbasedpolicy.AbstractPolicyValidatorRegistryModule {
private static final Logger LOG = LoggerFactory.getLogger(PolicyValidatorRegistryModule.class);
+ private BundleContext bundleContext;
public PolicyValidatorRegistryModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
super(identifier, dependencyResolver);
@Override
public java.lang.AutoCloseable createInstance() {
- final DataBroker dataProvider = getDataBrokerDependency();
+ final WaitingServiceTracker<PolicyValidatorRegistry> tracker = WaitingServiceTracker.create(
+ PolicyValidatorRegistry.class, bundleContext);
+ final PolicyValidatorRegistry service = tracker.waitForService(WaitingServiceTracker.FIVE_MINUTES);
- PolicyResolver policyResolver = new PolicyResolver(dataProvider);
- LOG.info("{} successfully started.", PolicyValidatorRegistryModule.class.getCanonicalName());
- return policyResolver;
+ final class Instance implements PolicyValidatorRegistry, AutoCloseable {
+ @Override
+ public void close() {
+ tracker.close();
+ }
+
+ @Override
+ public void register(ActionDefinitionId actionDefinitionId, Validator<ActionInstance> validator) {
+ service.register(actionDefinitionId, validator);
+ }
+
+ @Override
+ public void unregister(ActionDefinitionId actionDefinitionId, Validator<ActionInstance> validator) {
+ service.unregister(actionDefinitionId, validator);
+ }
+
+ @Override
+ public void register(ClassifierDefinitionId classifierDefinitionId,
+ Validator<ClassifierInstance> validator) {
+ service.register(classifierDefinitionId, validator);
+ }
+
+ @Override
+ public void unregister(ClassifierDefinitionId classifierDefinitionId,
+ Validator<ClassifierInstance> validator) {
+ service.unregister(classifierDefinitionId, validator);
+ }
+ }
+
+ return new Instance();
}
+ void setBundleContext(BundleContext bundleContext) {
+ this.bundleContext = bundleContext;
+ }
}
* Do not modify this file unless it is present under src/main directory
*/
package org.opendaylight.controller.config.yang.config.groupbasedpolicy;
+
+import org.opendaylight.controller.config.api.DependencyResolver;
+import org.osgi.framework.BundleContext;
+
public class PolicyValidatorRegistryModuleFactory extends org.opendaylight.controller.config.yang.config.groupbasedpolicy.AbstractPolicyValidatorRegistryModuleFactory {
+ @Override
+ public PolicyValidatorRegistryModule instantiateModule(String instanceName, DependencyResolver dependencyResolver,
+ PolicyValidatorRegistryModule oldModule, AutoCloseable oldInstance, BundleContext bundleContext) {
+ PolicyValidatorRegistryModule module = super.instantiateModule(instanceName, dependencyResolver, oldModule,
+ oldInstance, bundleContext);
+ module.setBundleContext(bundleContext);
+ return module;
+ }
+
+ @Override
+ public PolicyValidatorRegistryModule instantiateModule(String instanceName, DependencyResolver dependencyResolver,
+ BundleContext bundleContext) {
+ PolicyValidatorRegistryModule module = super.instantiateModule(instanceName, dependencyResolver, bundleContext);
+ module.setBundleContext(bundleContext);
+ return module;
+ }
}
--- /dev/null
+/*
+ * Copyright (c) 2016 Cisco Systems, Inc. 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.yang.config.groupbasedpolicy;
+
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.groupbasedpolicy.api.StatisticsManager;
+import org.opendaylight.groupbasedpolicy.statistics.StatisticsManagerImpl;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.statistics.rev151215.statistic.records.StatRecords;
+
+public class StatisticsManagerImplInstance implements StatisticsManager, AutoCloseable {
+
+ private final StatisticsManagerImpl statsManager;
+
+ public StatisticsManagerImplInstance (DataBroker dataBroker) {
+ statsManager = new StatisticsManagerImpl(dataBroker);
+ }
+
+ @Override
+ public void close() throws Exception {
+ statsManager.close();
+ }
+
+ @Override
+ public boolean writeStat(StatRecords record) {
+ return statsManager.writeStat(record);
+ }
+
+ @Override
+ public StatRecords readStats() {
+ return statsManager.readStats();
+ }
+
+}
*/
package org.opendaylight.controller.config.yang.config.groupbasedpolicy;
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.groupbasedpolicy.statistics.StatisticsManagerImpl;
+import org.opendaylight.controller.config.api.osgi.WaitingServiceTracker;
+import org.opendaylight.groupbasedpolicy.api.StatisticsManager;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.statistics.rev151215.statistic.records.StatRecords;
+import org.osgi.framework.BundleContext;
public class StatisticsManagerImplModule extends org.opendaylight.controller.config.yang.config.groupbasedpolicy.AbstractStatisticsManagerImplModule {
+
+ private BundleContext bundleContext;
+
public StatisticsManagerImplModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
super(identifier, dependencyResolver);
}
@Override
public java.lang.AutoCloseable createInstance() {
- DataBroker broker = getDataBrokerDependency();
- StatisticsManagerImpl manager = new StatisticsManagerImpl(broker);
- return manager;
+ final WaitingServiceTracker<StatisticsManager> tracker = WaitingServiceTracker.create(
+ StatisticsManager.class, bundleContext);
+ final StatisticsManager service = tracker.waitForService(WaitingServiceTracker.FIVE_MINUTES);
+
+ final class Instance implements StatisticsManager, AutoCloseable {
+ @Override
+ public void close() {
+ tracker.close();
+ }
+
+ @Override
+ public boolean writeStat(StatRecords record) {
+ return service.writeStat(record);
+ }
+
+ @Override
+ public StatRecords readStats() {
+ return service.readStats();
+ }
+ }
+
+ return new Instance();
+ }
+
+ void setBundleContext(BundleContext bundleContext) {
+ this.bundleContext = bundleContext;
}
}
* Do not modify this file unless it is present under src/main directory
*/
package org.opendaylight.controller.config.yang.config.groupbasedpolicy;
+
+import org.opendaylight.controller.config.api.DependencyResolver;
+import org.osgi.framework.BundleContext;
+
public class StatisticsManagerImplModuleFactory extends org.opendaylight.controller.config.yang.config.groupbasedpolicy.AbstractStatisticsManagerImplModuleFactory {
+ @Override
+ public StatisticsManagerImplModule instantiateModule(String instanceName, DependencyResolver dependencyResolver,
+ StatisticsManagerImplModule oldModule, AutoCloseable oldInstance, BundleContext bundleContext) {
+ StatisticsManagerImplModule module = super.instantiateModule(instanceName, dependencyResolver, oldModule,
+ oldInstance, bundleContext);
+ module.setBundleContext(bundleContext);
+ return module;
+ }
+
+ @Override
+ public StatisticsManagerImplModule instantiateModule(String instanceName, DependencyResolver dependencyResolver,
+ BundleContext bundleContext) {
+ StatisticsManagerImplModule module = super.instantiateModule(instanceName, dependencyResolver, bundleContext);
+ module.setBundleContext(bundleContext);
+ return module;
+ }
}
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.controller.md.sal.binding.api.ReadWriteTransaction;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker;
-import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;
import org.opendaylight.groupbasedpolicy.api.EndpointAugmentor;
import org.opendaylight.groupbasedpolicy.util.DataStoreHelper;
import org.opendaylight.groupbasedpolicy.util.EndpointUtils;
private static final Logger LOG = LoggerFactory.getLogger(BaseEndpointServiceImpl.class);
private final DataBroker dataProvider;
- private final BindingAwareBroker.RpcRegistration<BaseEndpointService> rpcRegistration;
private final EndpointAugmentorRegistryImpl epAugRegistry;
private static final Function<Void, RpcResult<Void>> TO_SUCCESS_RPC_RESULT = new Function<Void, RpcResult<Void>>() {
}
};
- public BaseEndpointServiceImpl(DataBroker dataProvider, RpcProviderRegistry rpcRegistry,
- EndpointAugmentorRegistryImpl epAugRegistry) {
+ public BaseEndpointServiceImpl(DataBroker dataProvider, EndpointAugmentorRegistryImpl epAugRegistry) {
this.epAugRegistry = Preconditions.checkNotNull(epAugRegistry);
this.dataProvider = Preconditions.checkNotNull(dataProvider);
- Preconditions.checkNotNull(rpcRegistry);
- this.rpcRegistration = rpcRegistry.addRpcImplementation(BaseEndpointService.class, this);
}
/**
}
@Override
- public void close() throws Exception {
- if (rpcRegistration != null) {
- rpcRegistration.close();
- }
+ public void close() {
}
private <T> List<T> nullToEmpty(@Nullable List<T> list) {
import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker;
-import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;
import org.opendaylight.groupbasedpolicy.api.EpRendererAugmentation;
import org.opendaylight.groupbasedpolicy.api.EpRendererAugmentationRegistry;
import org.opendaylight.groupbasedpolicy.util.IidFactory;
private static final Logger LOG = LoggerFactory.getLogger(EndpointRpcRegistry.class);
private final DataBroker dataProvider;
- private final RpcProviderRegistry rpcRegistry;
-
- private final BindingAwareBroker.RpcRegistration<EndpointService> rpcRegistration;
final static ConcurrentMap<String, EpRendererAugmentation> registeredRenderers =
new ConcurrentHashMap<String, EpRendererAugmentation>();
* Constructor
*
* @param dataProvider the {@link DataBroker}
- * @param rpcRegistry the {@link RpcProviderRegistry}
*/
- public EndpointRpcRegistry(DataBroker dataProvider, RpcProviderRegistry rpcRegistry) {
+ public EndpointRpcRegistry(DataBroker dataProvider) {
this.dataProvider = dataProvider;
- this.rpcRegistry = rpcRegistry;
- if (this.rpcRegistry != null) {
- rpcRegistration = this.rpcRegistry.addRpcImplementation(EndpointService.class, this);
- LOG.debug("Added RPC Implementation Correctly");
- } else {
- rpcRegistration = null;
- }
if (dataProvider != null) {
InstanceIdentifier<Endpoints> iid = InstanceIdentifier.builder(Endpoints.class).build();
}
@Override
- public void close() throws Exception {
- if (rpcRegistration != null) {
- rpcRegistration.close();
- }
+ public void close() {
}
/**
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+ xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0"
+ odl:use-default-for-reference-types="true">
+
+ <reference id="dataBroker" interface="org.opendaylight.controller.md.sal.binding.api.DataBroker"/>
+
+ <!-- Modules /-->
+ <bean id="groupbasedpolicy" class="org.opendaylight.controller.config.yang.config.groupbasedpolicy.GroupbasedpolicyInstance"
+ destroy-method="close">
+ <argument ref="dataBroker"/>
+ <argument ref="policyValidatorRegistry"/>
+ </bean>
+ <bean id="domainSpecificRegistry" class="org.opendaylight.controller.config.yang.config.groupbasedpolicy.DomainSpecificRegistryInstance"
+ destroy-method="close">
+ <argument ref="dataBroker"/>
+ </bean>
+ <bean id="epRendererAugmentationRegistry" class="org.opendaylight.controller.config.yang.config.groupbasedpolicy.EpRendererAugmentationRegistryImplInstance"
+ destroy-method="close">
+ <argument ref="dataBroker"/>
+ </bean>
+ <bean id="statisticsManagerImpl" class="org.opendaylight.controller.config.yang.config.groupbasedpolicy.StatisticsManagerImplInstance"
+ destroy-method="close">
+ <argument ref="dataBroker"/>
+ </bean>
+ <bean id="policyValidatorRegistry" class="org.opendaylight.controller.config.yang.config.groupbasedpolicy.PolicyValidatorRegistryInstance"
+ destroy-method="close">
+ <argument ref="dataBroker"/>
+ </bean>
+
+ <!-- Services -->
+ <service ref="domainSpecificRegistry" interface="org.opendaylight.groupbasedpolicy.api.DomainSpecificRegistry" odl:type="default"/>
+ <service ref="epRendererAugmentationRegistry" interface="org.opendaylight.groupbasedpolicy.api.EpRendererAugmentationRegistry" odl:type="default"/>
+ <service ref="policyValidatorRegistry" interface="org.opendaylight.groupbasedpolicy.api.PolicyValidatorRegistry" odl:type="default"/>
+ <service ref="statisticsManagerImpl" interface="org.opendaylight.groupbasedpolicy.api.StatisticsManager" odl:type="default"/>
+
+ <!-- RPC implementations -->
+ <odl:rpc-implementation ref="domainSpecificRegistry"/>
+ <odl:rpc-implementation ref="epRendererAugmentationRegistry"/>
+</blueprint>
\ No newline at end of file
}
identity ep-renderer-augmentation-registry {
+ status deprecated;
description
"ep-renderer-augmentation-registry service definition";
base "config:service-type";
config:java-class "org.opendaylight.groupbasedpolicy.api.EpRendererAugmentationRegistry";
+ config:disable-osgi-service-registration;
}
identity domain-specific-registry {
+ status deprecated;
description
"domain-specific-registry service definition";
base "config:service-type";
config:java-class "org.opendaylight.groupbasedpolicy.api.DomainSpecificRegistry";
+ config:disable-osgi-service-registration;
}
identity policy-validator-registry {
+ status deprecated;
description
"policy-validator-registry service definition";
base "config:service-type";
config:java-class "org.opendaylight.groupbasedpolicy.api.PolicyValidatorRegistry";
+ config:disable-osgi-service-registration;
}
identity statistics-manager {
+ status deprecated;
description
"statistics-manager service definition";
base "config:service-type";
config:java-class "org.opendaylight.groupbasedpolicy.api.StatisticsManager";
+ config:disable-osgi-service-registration;
}
identity policy-validator-registry-impl {
augment "/config:modules/config:module/config:configuration" {
case groupbasedpolicy-impl {
when "/config:modules/config:module/config:type = 'groupbasedpolicy-impl'";
-
- //wires in the data-broker service
- container data-broker {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity mdsal:binding-async-data-broker;
- }
- }
- }
- //RPC Registry
- container rpc-registry {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity mdsal:binding-rpc-registry;
- }
- }
- }
- // EpRendererAugmentationRegistry service
- container policy-validator-registry {
- uses config:service-ref {
- refine type {
- config:required-identity policy-validator-registry;
- }
- }
- }
}
case policy-validator-registry-impl {
when "/config:modules/config:module/config:type = 'policy-validator-registry-impl'";
-
- //wires in the data-broker service
- container data-broker {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity mdsal:binding-async-data-broker;
- }
- }
- }
}
case ep-renderer-augmentation-registry-impl {
when "/config:modules/config:module/config:type = 'ep-renderer-augmentation-registry-impl'";
-
- //wires in the data-broker service
- container data-broker {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity mdsal:binding-async-data-broker;
- }
- }
- }
- //RPC Registry
- container rpc-registry {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity mdsal:binding-rpc-registry;
- }
- }
- }
}
case domain-specific-registry-impl {
when "/config:modules/config:module/config:type = 'domain-specific-registry-impl'";
-
- //wires in the data-broker service
- container data-broker {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity mdsal:binding-async-data-broker;
- }
- }
- }
- //RPC Registry
- container rpc-registry {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity mdsal:binding-rpc-registry;
- }
- }
- }
}
case statistics-manager-impl {
when "/config:modules/config:module/config:type = 'statistics-manager-impl'";
-
- //wires in the data-broker service
- container data-broker {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity mdsal:binding-async-data-broker;
- }
- }
- }
}
}
}
package org.opendaylight.groupbasedpolicy.base_endpoint;
-import static org.mockito.Mockito.mock;
-
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;
import org.opendaylight.groupbasedpolicy.test.CustomDataBrokerTest;
import org.opendaylight.groupbasedpolicy.util.DataStoreHelper;
import org.opendaylight.groupbasedpolicy.util.EndpointUtils;
@Before
public void init() {
dataProvider = getDataBroker();
- RpcProviderRegistry rpcRegistry = mock(RpcProviderRegistry.class);
baseEndpointRpcRegistry =
- new BaseEndpointServiceImpl(dataProvider, rpcRegistry, new EndpointAugmentorRegistryImpl());
+ new BaseEndpointServiceImpl(dataProvider, new EndpointAugmentorRegistryImpl());
}
@Test
public void testConstructor() throws Exception {
- RpcProviderRegistry rpcRegistry = mock(RpcProviderRegistry.class);
BaseEndpointServiceImpl registry =
- new BaseEndpointServiceImpl(dataProvider, rpcRegistry, new EndpointAugmentorRegistryImpl());
+ new BaseEndpointServiceImpl(dataProvider, new EndpointAugmentorRegistryImpl());
registry.close();
}
ContainmentEndpoint contEp = createBaseContEpBuilder().build();
RegisterEndpointInputBuilder inputBuilder = new RegisterEndpointInputBuilder();
setAddrEpsToBuilder(inputBuilder, l2EpWithL3Parent, l3EpWithL2Child);
- setContEpsToBuilder(inputBuilder, contEp);
+ setContEpsToBuilder(inputBuilder, contEp);
RpcResult<Void> rpcResult = baseEndpointRpcRegistry.registerEndpoint(inputBuilder.build()).get();
Assert.assertTrue(rpcResult.isSuccessful());
import java.util.ArrayList;
import java.util.List;
-import com.google.common.util.concurrent.CheckedFuture;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
-import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;
import org.opendaylight.groupbasedpolicy.api.EpRendererAugmentation;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpPrefix;
import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+import com.google.common.util.concurrent.CheckedFuture;
+
public class EndpointRpcRegistryTest {
private static final String L2_BD_ID = "l2bdId";
dataProvider = mock(DataBroker.class);
epRendererAugmentation = mock(EpRendererAugmentation.class);
WriteTransaction wt = newWriteTransactionMock();
- RpcProviderRegistry rpcRegistry = mock(RpcProviderRegistry.class);
- endpointRpcRegistry = new EndpointRpcRegistry(dataProvider, rpcRegistry);
+ endpointRpcRegistry = new EndpointRpcRegistry(dataProvider);
}
@Test
public void testConstructor() throws Exception {
- RpcProviderRegistry rpcRegistry = mock(RpcProviderRegistry.class);
- EndpointRpcRegistry other = new EndpointRpcRegistry(dataProvider, rpcRegistry);
+ EndpointRpcRegistry other = new EndpointRpcRegistry(dataProvider);
other.close();
}