Add blueprint wiring for openstack/net-virt 06/39006/22
authorAlexis de Talhouët <adetalhouet@inocybe.com>
Tue, 17 May 2016 19:01:33 +0000 (15:01 -0400)
committerAlexis de Talhouët <adetalhouet@inocybe.com>
Thu, 30 Jun 2016 17:46:18 +0000 (17:46 +0000)
Change-Id: I0d32881db4c1ee939f87441d75e38dbe1c34374f
Signed-off-by: Alexis de Talhouët <adetalhouet@inocybe.com>
29 files changed:
features/pom.xml
features/src/main/features/features.xml
openstack/net-virt/src/main/config/default-config.xml [deleted file]
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/ConfigActivator.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/NetvirtProvider.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/impl/OvsdbInventoryServiceImpl.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/AbstractNeutronInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronFirewallInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronFirewallPolicyInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronFirewallRuleInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronFloatingIPInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronLoadBalancerHealthMonitorInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronLoadBalancerInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronLoadBalancerListenerInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronLoadBalancerPoolInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronLoadBalancerPoolMemberInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronNetworkInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronPortInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronRouterInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronSecurityGroupInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronSecurityRuleInterface.java
openstack/net-virt/src/main/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronSubnetInterface.java
openstack/net-virt/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/netvirt/impl/rev150513/NetvirtImplModule.java [deleted file]
openstack/net-virt/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/netvirt/impl/rev150513/NetvirtImplModuleFactory.java [deleted file]
openstack/net-virt/src/main/resources/org/opendaylight/blueprint/netvirt-impl.xml [new file with mode: 0644]
openstack/net-virt/src/main/yang/netvirt-impl-config.yang [new file with mode: 0644]
openstack/net-virt/src/main/yang/netvirt-impl.yang [deleted file]
openstack/net-virt/src/test/java/org/opendaylight/netvirt/openstack/netvirt/impl/OvsdbInventoryServiceImplTest.java
openstack/net-virt/src/test/java/org/opendaylight/netvirt/openstack/netvirt/translator/crud/impl/NeutronFloatingIPInterfaceTest.java

index 89d050a7aa243dc94f91f45411d3e1d6ad604595..8964c53740c580ff14fbf963c0680fc6f0286dc9 100644 (file)
@@ -170,13 +170,6 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
       <artifactId>openstack.net-virt</artifactId>
       <version>${project.version}</version>
     </dependency>
-    <dependency>
-      <groupId>${project.groupId}</groupId>
-      <artifactId>openstack.net-virt</artifactId>
-      <version>${project.version}</version>
-      <type>xml</type>
-      <classifier>config</classifier>
-    </dependency>
     <dependency>
       <groupId>${project.groupId}</groupId>
       <artifactId>openstack.net-virt-providers</artifactId>
index c562b9cb6298cec2aa602617afcf55195f361140..c2f3a3f210d316e6c0fd6828f246b8f0078cd3b8 100644 (file)
@@ -29,7 +29,6 @@
     <bundle>mvn:org.opendaylight.netvirt/openstack.net-virt/{{VERSION}}</bundle>
     <bundle>mvn:org.opendaylight.netvirt/openstack.net-virt-providers/{{VERSION}}</bundle>
     <bundle>mvn:commons-net/commons-net/{{VERSION}}</bundle>
-    <configfile finalname="etc/opendaylight/karaf/netvirt-impl-default-config.xml">mvn:org.opendaylight.netvirt/openstack.net-virt/{{VERSION}}/xml/config</configfile>
     <configfile finalname="etc/opendaylight/karaf/netvirt-providers-impl-default-config.xml">mvn:org.opendaylight.netvirt/openstack.net-virt-providers/{{VERSION}}/xml/config</configfile>
   </feature>
 
diff --git a/openstack/net-virt/src/main/config/default-config.xml b/openstack/net-virt/src/main/config/default-config.xml
deleted file mode 100644 (file)
index 5783eb5..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- vi: set et smarttab sw=4 tabstop=4: -->
-<snapshot>
-  <required-capabilities>
-    <capability>urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding?module=opendaylight-md-sal-binding&amp;revision=2013-10-28</capability>
-    <capability>urn:opendaylight:params:xml:ns:yang:netvirt:impl?module=netvirt-impl&amp;revision=2015-05-13</capability>
-  </required-capabilities>
-  <configuration>
-    <data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
-      <modules xmlns="urn:opendaylight:params:xml:ns:yang:controller:config">
-        <module>
-          <type xmlns:prefix="urn:opendaylight:params:xml:ns:yang:netvirt:impl">prefix:netvirt-impl</type>
-          <name>netvirt-default</name>
-          <conntrack-enabled>false</conntrack-enabled>
-          <int-bridge-gen-mac>true</int-bridge-gen-mac>
-          <broker>
-            <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-broker-osgi-registry</type>
-            <name>binding-osgi-broker</name>
-          </broker>
-          <clustering-entity-ownership-service>
-            <type xmlns:ns="urn:opendaylight:params:xml:ns:yang:controller:md:sal:core:spi:entity-ownership-service">ns:entity-ownership-service</type>
-            <name>entity-ownership-service</name>
-          </clustering-entity-ownership-service>
-        </module>
-      </modules>
-    </data>
-  </configuration>
-</snapshot>
index 0f8470083633a646807e9c83c87c4f450a0a734b..2f33610f8ea1c620806aaa4f6b9fad68bd0315db 100644 (file)
@@ -103,18 +103,18 @@ public class ConfigActivator implements BundleActivator {
     private static final Logger LOG = LoggerFactory.getLogger(ConfigActivator.class);
     private List<ServiceRegistration<?>> translatorCRUDRegistrations = new ArrayList<>();
     private List<Pair<Object, ServiceRegistration>> servicesAndRegistrations = new ArrayList<>();
-    private ProviderContext providerContext;
+    private final DataBroker dataBroker;
     private boolean conntrackEnabled = false;
     private boolean intBridgeGenMac = true;
 
-    public ConfigActivator(ProviderContext providerContext) {
-        this.providerContext = providerContext;
+    public ConfigActivator(final DataBroker dataBroker) {
+        this.dataBroker = dataBroker;
     }
 
     @Override
     public void start(BundleContext context) throws Exception {
         LOG.info("ConfigActivator start:");
-        registerCRUDServiceProviders(context, this.providerContext);
+        registerCRUDServiceProviders(context);
 
         ConfigurationServiceImpl configurationService = new ConfigurationServiceImpl();
         registerService(context, new String[] {ConfigurationService.class.getName()},
@@ -198,7 +198,7 @@ public class ConfigActivator implements BundleActivator {
                 new String[]{EventDispatcher.class.getName()}, null, eventDispatcher);
 
         final NeutronL3Adapter neutronL3Adapter = new NeutronL3Adapter(
-                new NeutronModelsDataStoreHelper(this.providerContext.getSALService(DataBroker.class)));
+                new NeutronModelsDataStoreHelper(dataBroker));
         registerAbstractHandlerService(context, new Class[] {NeutronL3Adapter.class, GatewayMacResolverListener.class},
                 AbstractEvent.HandlerType.NEUTRON_L3_ADAPTER, neutronL3Adapter);
 
@@ -215,11 +215,11 @@ public class ConfigActivator implements BundleActivator {
         registerService(context,
                 new String[]{MultiTenantAwareRouter.class.getName()}, null, openstackRouter);
 
-        Southbound southbound = new SouthboundImpl(providerContext.getSALService(DataBroker.class));
+        Southbound southbound = new SouthboundImpl(dataBroker);
         registerService(context,
                 new String[]{Southbound.class.getName()}, null, southbound);
 
-        HostConfigService hostConfigService = new HostConfigService(providerContext.getSALService(DataBroker.class));
+        HostConfigService hostConfigService = new HostConfigService(dataBroker);
         registerService(context,
                 new String[]{HostConfigService.class.getName()}, null, hostConfigService);
 
@@ -227,7 +227,7 @@ public class ConfigActivator implements BundleActivator {
         registerAbstractHandlerService(context, new Class[] {NodeCacheManager.class},
                 AbstractEvent.HandlerType.NODE, nodeCacheManager);
 
-        OvsdbInventoryServiceImpl ovsdbInventoryService = new OvsdbInventoryServiceImpl(providerContext);
+        OvsdbInventoryServiceImpl ovsdbInventoryService = new OvsdbInventoryServiceImpl(dataBroker);
         registerService(context,
                 new String[] {OvsdbInventoryService.class.getName()}, null, ovsdbInventoryService);
 
@@ -274,24 +274,23 @@ public class ConfigActivator implements BundleActivator {
         servicesAndRegistrations.clear();
     }
 
-    private void registerCRUDServiceProviders(BundleContext context,
-            ProviderContext providerContext) {
+    private void registerCRUDServiceProviders(BundleContext context) {
         LOG.debug("Registering CRUD service providers");
-        NeutronRouterInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronPortInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronSubnetInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronNetworkInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronSecurityGroupInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronSecurityRuleInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronFirewallInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronFirewallPolicyInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronFirewallRuleInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronLoadBalancerInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronLoadBalancerPoolInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronLoadBalancerListenerInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronLoadBalancerHealthMonitorInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronLoadBalancerPoolMemberInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
-        NeutronFloatingIPInterface.registerNewInterface(context, providerContext, translatorCRUDRegistrations);
+        NeutronRouterInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronPortInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronSubnetInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronNetworkInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronSecurityGroupInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronSecurityRuleInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronFirewallInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronFirewallPolicyInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronFirewallRuleInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronLoadBalancerInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronLoadBalancerPoolInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronLoadBalancerListenerInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronLoadBalancerHealthMonitorInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronLoadBalancerPoolMemberInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
+        NeutronFloatingIPInterface.registerNewInterface(context, dataBroker, translatorCRUDRegistrations);
     }
 
     private void trackService(BundleContext context, final Class<?> clazz, final ConfigInterface... dependents) {
index da02d2be8b9bce8a6f490963d5992f4e266f65ca..099e750ae7d9fd75fb6c0b36f3c34b66ed741bfb 100644 (file)
@@ -9,35 +9,40 @@
 package org.opendaylight.netvirt.openstack.netvirt;
 
 import com.google.common.base.Optional;
-import org.opendaylight.controller.md.sal.common.api.clustering.EntityOwnershipState;
-import org.opendaylight.netvirt.openstack.netvirt.api.Constants;
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.md.sal.common.api.clustering.Entity;
 import org.opendaylight.controller.md.sal.common.api.clustering.EntityOwnershipService;
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
-import org.opendaylight.controller.sal.binding.api.BindingAwareProvider;
+import org.opendaylight.controller.md.sal.common.api.clustering.EntityOwnershipState;
+import org.opendaylight.netvirt.openstack.netvirt.api.Constants;
 import org.osgi.framework.BundleContext;
+import org.osgi.framework.FrameworkUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
  * @author Sam Hague (shague@redhat.com)
  */
-public class NetvirtProvider implements BindingAwareProvider, AutoCloseable {
+public class NetvirtProvider implements AutoCloseable {
     private static final Logger LOG = LoggerFactory.getLogger(NetvirtProvider.class);
-    private BundleContext bundleContext = null;
-    private static DataBroker dataBroker = null;
+    private final BundleContext bundleContext;
+    private final DataBroker dataBroker;
     private ConfigActivator activator;
     private static EntityOwnershipService entityOwnershipService;
     private static final Entity ownerInstanceEntity = new Entity(
             Constants.NETVIRT_OWNER_ENTITY_TYPE, Constants.NETVIRT_OWNER_ENTITY_TYPE);
-    private boolean conntrackEnabled = false;
+    private boolean conntrackEnabled;
     private boolean intBridgeGenMac;
 
-    public NetvirtProvider(BundleContext bundleContext, EntityOwnershipService eos) {
-        LOG.info("NetvirtProvider: bundleContext: {}", bundleContext);
-        this.bundleContext = bundleContext;
-        entityOwnershipService = eos;
+    public NetvirtProvider(final DataBroker dataBroker,
+                           final EntityOwnershipService eos,
+                           final boolean conntrackEnabled,
+                           final boolean intBridgeGenMac) {
+        LOG.info("NetvirtProvider started");
+        this.dataBroker = dataBroker;
+        NetvirtProvider.entityOwnershipService = eos;
+        this.conntrackEnabled = conntrackEnabled;
+        this.intBridgeGenMac = intBridgeGenMac;
+        this.bundleContext = FrameworkUtil.getBundle(NetvirtProvider.class).getBundleContext();
     }
 
     public static boolean isMasterProviderInstance() {
@@ -59,15 +64,15 @@ public class NetvirtProvider implements BindingAwareProvider, AutoCloseable {
     @Override
     public void close() throws Exception {
         LOG.info("NetvirtProvider closed");
-        activator.stop(bundleContext);
+        if (activator != null) {
+            activator.stop(bundleContext);
+        }
     }
 
-    @Override
-    public void onSessionInitiated(ProviderContext providerContext) {
-        dataBroker = providerContext.getSALService(DataBroker.class);
+    public void start() {
         LOG.info("NetvirtProvider: onSessionInitiated dataBroker: {}", dataBroker);
         LOG.info("NetvirtProvider: onSessionInitiated isConntrackEnabled: {}", this.conntrackEnabled);
-        this.activator = new ConfigActivator(providerContext);
+        this.activator = new ConfigActivator(dataBroker);
         activator.setConntrackEnabled(this.conntrackEnabled);
         activator.setIntBridgeGenMac(this.intBridgeGenMac);
         try {
index aa82c13868a5b4048b88f0e7202a7e1af70073f1..95ba77395d49f0f0db169ad2470b63d03fd25076 100644 (file)
@@ -46,13 +46,13 @@ import org.slf4j.LoggerFactory;
  */
 public class OvsdbInventoryServiceImpl implements ConfigInterface, OvsdbInventoryService {
     private static final Logger LOG = LoggerFactory.getLogger(OvsdbInventoryServiceImpl.class);
-    private static DataBroker dataBroker = null;
+    private final DataBroker dataBroker;
     private static Set<OvsdbInventoryListener> ovsdbInventoryListeners = Sets.newCopyOnWriteArraySet();
     private OvsdbDataChangeListener ovsdbDataChangeListener = null;
     private static ClusterAwareMdsalUtils mdsalUtils = null;
 
-    public OvsdbInventoryServiceImpl(ProviderContext providerContext) {
-        dataBroker = providerContext.getSALService(DataBroker.class);
+    public OvsdbInventoryServiceImpl(final DataBroker dataBroker) {
+        this.dataBroker = dataBroker;
         LOG.info("OvsdbInventoryServiceImpl initialized");
         ovsdbDataChangeListener = new OvsdbDataChangeListener(dataBroker);
         mdsalUtils = new ClusterAwareMdsalUtils(dataBroker);
index 5986d1400b6164c50073229532e2463c9704691b..ec6d02f3b31ab3822f7c8d7befc9efeb29859631 100644 (file)
@@ -8,16 +8,17 @@
 
 package org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl;
 
+import com.google.common.base.Optional;
+import com.google.common.base.Preconditions;
+import com.google.common.util.concurrent.CheckedFuture;
 import java.lang.reflect.Method;
 import java.util.concurrent.ExecutionException;
-
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 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.md.sal.common.api.data.ReadFailedException;
 import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
 import org.opendaylight.netvirt.openstack.netvirt.translator.INeutronObject;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
 import org.opendaylight.yangtools.yang.binding.DataObject;
@@ -25,10 +26,6 @@ import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.common.base.Optional;
-import com.google.common.base.Preconditions;
-import com.google.common.util.concurrent.CheckedFuture;
-
 
 public abstract class AbstractNeutronInterface<T extends DataObject, S extends INeutronObject> implements AutoCloseable {
     private static final Logger LOGGER = LoggerFactory.getLogger(AbstractNeutronInterface.class);
@@ -39,10 +36,10 @@ public abstract class AbstractNeutronInterface<T extends DataObject, S extends I
     private static final int DEDASHED_UUID_DIV3 = 16;
     private static final int DEDASHED_UUID_DIV4 = 20;
 
-    private DataBroker db;
+    private final DataBroker db;
 
-    AbstractNeutronInterface(ProviderContext providerContext) {
-        this.db = providerContext.getSALService(DataBroker.class);
+    AbstractNeutronInterface(final DataBroker dataBroker) {
+        this.db = dataBroker;
     }
 
     public DataBroker getDataBroker() {
index 92d42b0635877436181d199367ff22386d6a90af..26ced10b05816fbcf414d3cf0191845f8a38f30b 100644 (file)
@@ -9,11 +9,10 @@
 package org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl;
 
 import java.util.List;
-
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.netvirt.openstack.netvirt.translator.INeutronObject;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronFirewall;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronFirewallCRUD;
-import org.opendaylight.netvirt.openstack.netvirt.translator.INeutronObject;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.osgi.framework.BundleContext;
@@ -21,14 +20,14 @@ import org.osgi.framework.ServiceRegistration;
 
 public class NeutronFirewallInterface extends AbstractNeutronInterface implements INeutronFirewallCRUD {
 
-    NeutronFirewallInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronFirewallInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronFirewallInterface neutronFirewallInterface = new NeutronFirewallInterface(providerContext);
+        NeutronFirewallInterface neutronFirewallInterface = new NeutronFirewallInterface(dataBroker);
         ServiceRegistration<INeutronFirewallCRUD> neutronFirewallInterfaceRegistration = context.registerService(INeutronFirewallCRUD.class, neutronFirewallInterface, null);
         if(neutronFirewallInterfaceRegistration != null) {
             registrations.add(neutronFirewallInterfaceRegistration);
index a970cf77b48696833914fd6ca7b783811bd48b79..a4f4fa8080f6122bb6c6dc79331e6f0d9e785c19 100644 (file)
@@ -9,11 +9,10 @@
 package org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl;
 
 import java.util.List;
-
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
-import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronFirewallPolicyCRUD;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.netvirt.openstack.netvirt.translator.INeutronObject;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronFirewallPolicy;
+import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronFirewallPolicyCRUD;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.osgi.framework.BundleContext;
@@ -24,8 +23,8 @@ import org.osgi.framework.ServiceRegistration;
 
 public class NeutronFirewallPolicyInterface extends AbstractNeutronInterface implements INeutronFirewallPolicyCRUD {
 
-    NeutronFirewallPolicyInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronFirewallPolicyInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     @Override
@@ -90,9 +89,9 @@ public class NeutronFirewallPolicyInterface extends AbstractNeutronInterface imp
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronFirewallPolicyInterface neutronFirewallPolicyInterface = new NeutronFirewallPolicyInterface(providerContext);
+        NeutronFirewallPolicyInterface neutronFirewallPolicyInterface = new NeutronFirewallPolicyInterface(dataBroker);
         ServiceRegistration<INeutronFirewallPolicyCRUD> neutronFirewallPolicyInterfaceRegistration = context.registerService(INeutronFirewallPolicyCRUD.class, neutronFirewallPolicyInterface, null);
         if(neutronFirewallPolicyInterfaceRegistration != null) {
             registrations.add(neutronFirewallPolicyInterfaceRegistration);
index f54a2221c043bded2959941f6207f124462c307f..54c4259ca7e4fcf3fcfce69604b1ed010b4b4501 100644 (file)
@@ -9,10 +9,9 @@
 package org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl;
 
 import java.util.List;
-
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
-import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronFirewallRule;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.netvirt.openstack.netvirt.translator.INeutronObject;
+import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronFirewallRule;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronFirewallRuleCRUD;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
@@ -21,8 +20,8 @@ import org.osgi.framework.ServiceRegistration;
 
 public class NeutronFirewallRuleInterface extends AbstractNeutronInterface implements INeutronFirewallRuleCRUD {
 
-    NeutronFirewallRuleInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronFirewallRuleInterface(DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     @Override
@@ -87,9 +86,9 @@ public class NeutronFirewallRuleInterface extends AbstractNeutronInterface imple
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronFirewallRuleInterface neutronFirewallRuleInterface = new NeutronFirewallRuleInterface(providerContext);
+        NeutronFirewallRuleInterface neutronFirewallRuleInterface = new NeutronFirewallRuleInterface(dataBroker);
         ServiceRegistration<INeutronFirewallRuleCRUD> neutronFirewallRuleInterfaceRegistration = context.registerService(INeutronFirewallRuleCRUD.class, neutronFirewallRuleInterface, null);
         if(neutronFirewallRuleInterfaceRegistration != null) {
             registrations.add(neutronFirewallRuleInterfaceRegistration);
index a706438466f5c87aba2b21aca60aa27d176e7486..f0ff374662a42562e889468e0872650820a4e7a8 100644 (file)
@@ -12,7 +12,7 @@ import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
-
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronFloatingIP;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronFloatingIPCRUD;
@@ -30,8 +30,8 @@ import org.slf4j.LoggerFactory;
 public class NeutronFloatingIPInterface extends AbstractNeutronInterface<Floatingip, NeutronFloatingIP> implements INeutronFloatingIPCRUD {
     private static final Logger LOGGER = LoggerFactory.getLogger(NeutronFloatingIPInterface.class);
 
-    NeutronFloatingIPInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronFloatingIPInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     // IfNBFloatingIPCRUD interface methods
@@ -173,9 +173,9 @@ public class NeutronFloatingIPInterface extends AbstractNeutronInterface<Floatin
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronFloatingIPInterface neutronFloatingIPInterface = new NeutronFloatingIPInterface(providerContext);
+        NeutronFloatingIPInterface neutronFloatingIPInterface = new NeutronFloatingIPInterface(dataBroker);
         ServiceRegistration<INeutronFloatingIPCRUD> neutronFloatingIPInterfaceRegistration = context.registerService(INeutronFloatingIPCRUD.class, neutronFloatingIPInterface, null);
         if (neutronFloatingIPInterfaceRegistration != null) {
             registrations.add(neutronFloatingIPInterfaceRegistration);
index 5dea34924c3b44c4e2ed5ea08b6b7f783410f402..81ba7bc925d051c8c3a16d9f80fa37f49283e400 100644 (file)
@@ -9,7 +9,7 @@
 package org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl;
 
 import java.util.List;
-
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronLoadBalancerHealthMonitor;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronLoadBalancerHealthMonitorCRUD;
@@ -20,8 +20,8 @@ import org.osgi.framework.ServiceRegistration;
 
 public class NeutronLoadBalancerHealthMonitorInterface extends AbstractNeutronInterface<Healthmonitors, NeutronLoadBalancerHealthMonitor> implements INeutronLoadBalancerHealthMonitorCRUD {
 
-    NeutronLoadBalancerHealthMonitorInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronLoadBalancerHealthMonitorInterface(DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     @Override
@@ -89,9 +89,9 @@ public class NeutronLoadBalancerHealthMonitorInterface extends AbstractNeutronIn
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronLoadBalancerHealthMonitorInterface neutronLoadBalancerHealthMonitorInterface = new NeutronLoadBalancerHealthMonitorInterface(providerContext);
+        NeutronLoadBalancerHealthMonitorInterface neutronLoadBalancerHealthMonitorInterface = new NeutronLoadBalancerHealthMonitorInterface(dataBroker);
         ServiceRegistration<INeutronLoadBalancerHealthMonitorCRUD> neutronLoadBalancerHealthMonitorInterfaceRegistration = context.registerService(INeutronLoadBalancerHealthMonitorCRUD.class, neutronLoadBalancerHealthMonitorInterface, null);
         if(neutronLoadBalancerHealthMonitorInterfaceRegistration != null) {
             registrations.add(neutronLoadBalancerHealthMonitorInterfaceRegistration);
index 3820afa65cd2a8d239f0d5f8eb2f9182c6544d89..bb3e55190ceab3f9e7152ff62f0e4b5063c7ba82 100644 (file)
@@ -15,8 +15,7 @@ import java.util.Map.Entry;
 import java.util.Set;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentMap;
-
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronLoadBalancer;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronLoadBalancerCRUD;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.IpAddress;
@@ -40,8 +39,8 @@ public class NeutronLoadBalancerInterface extends AbstractNeutronInterface<Loadb
     private ConcurrentMap<String, NeutronLoadBalancer> loadBalancerDB  = new ConcurrentHashMap<>();
 
 
-    NeutronLoadBalancerInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronLoadBalancerInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     @Override
@@ -148,9 +147,9 @@ public class NeutronLoadBalancerInterface extends AbstractNeutronInterface<Loadb
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronLoadBalancerInterface neutronLoadBalancerInterface = new NeutronLoadBalancerInterface(providerContext);
+        NeutronLoadBalancerInterface neutronLoadBalancerInterface = new NeutronLoadBalancerInterface(dataBroker);
         ServiceRegistration<INeutronLoadBalancerCRUD> neutronLoadBalancerInterfaceRegistration = context.registerService(INeutronLoadBalancerCRUD.class, neutronLoadBalancerInterface, null);
         if(neutronLoadBalancerInterfaceRegistration != null) {
             registrations.add(neutronLoadBalancerInterfaceRegistration);
index 1d8d064d59381bfc91b7da9a08250dfb500d85d0..9f506640d27e96da94616614301859d54f71d949 100644 (file)
@@ -9,7 +9,7 @@
 package org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl;
 
 import java.util.List;
-
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronLoadBalancerListener;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronLoadBalancerListenerCRUD;
@@ -20,8 +20,8 @@ import org.osgi.framework.ServiceRegistration;
 
 public class NeutronLoadBalancerListenerInterface extends AbstractNeutronInterface<Listeners, NeutronLoadBalancerListener> implements INeutronLoadBalancerListenerCRUD {
 
-    NeutronLoadBalancerListenerInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronLoadBalancerListenerInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     @Override
@@ -89,9 +89,9 @@ public class NeutronLoadBalancerListenerInterface extends AbstractNeutronInterfa
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronLoadBalancerListenerInterface neutronLoadBalancerListenerInterface = new NeutronLoadBalancerListenerInterface(providerContext);
+        NeutronLoadBalancerListenerInterface neutronLoadBalancerListenerInterface = new NeutronLoadBalancerListenerInterface(dataBroker);
         ServiceRegistration<INeutronLoadBalancerListenerCRUD> neutronLoadBalancerListenerInterfaceRegistration = context.registerService(INeutronLoadBalancerListenerCRUD.class, neutronLoadBalancerListenerInterface, null);
         if(neutronLoadBalancerListenerInterfaceRegistration != null) {
             registrations.add(neutronLoadBalancerListenerInterfaceRegistration);
index fa4d56d5738319ebf9fdc4a868b0bf1ea94ea4c3..0a05ee2a1a5915c35521680b445dd923e0c632bb 100644 (file)
@@ -8,6 +8,7 @@
 
 package org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl;
 
+import com.google.common.collect.ImmutableBiMap;
 import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
@@ -15,12 +16,11 @@ import java.util.Map.Entry;
 import java.util.Set;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentMap;
-
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronLoadBalancerPool;
+import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronLoadBalancer_SessionPersistence;
 import org.opendaylight.netvirt.openstack.netvirt.translator.Neutron_ID;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronLoadBalancerPoolCRUD;
-import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronLoadBalancer_SessionPersistence;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.ProtocolBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.ProtocolHttp;
@@ -37,8 +37,6 @@ import org.osgi.framework.ServiceRegistration;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.common.collect.ImmutableBiMap;
-
 /**
  * TODO: Migrate this to consume the MD-SAL data store, so that it can read all the data from data store.
  * No need to worry about the write/update related methods here. OVSDB net-virt will use these CRUD Interface
@@ -56,8 +54,8 @@ public class NeutronLoadBalancerPoolInterface extends AbstractNeutronInterface<P
             .put(ProtocolTcp.class,"TCP")
             .build();
 
-    NeutronLoadBalancerPoolInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronLoadBalancerPoolInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     @Override
@@ -181,9 +179,9 @@ public class NeutronLoadBalancerPoolInterface extends AbstractNeutronInterface<P
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronLoadBalancerPoolInterface neutronLoadBalancerPoolInterface = new NeutronLoadBalancerPoolInterface(providerContext);
+        NeutronLoadBalancerPoolInterface neutronLoadBalancerPoolInterface = new NeutronLoadBalancerPoolInterface(dataBroker);
         ServiceRegistration<INeutronLoadBalancerPoolCRUD> neutronLoadBalancerPoolInterfaceRegistration = context.registerService(INeutronLoadBalancerPoolCRUD.class, neutronLoadBalancerPoolInterface, null);
         if(neutronLoadBalancerPoolInterfaceRegistration != null) {
             registrations.add(neutronLoadBalancerPoolInterfaceRegistration);
index ef8530c469b4392436bc156e99dd1de3d1501d93..fe4584a75aff0790ad02dce1330e49a20d896c10 100644 (file)
@@ -9,8 +9,7 @@
 package org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl;
 
 import java.util.List;
-
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronLoadBalancerPoolMember;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronLoadBalancerPoolMemberCRUD;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.lbaasv2.rev150712.lbaas.attributes.pools.pool.Members;
@@ -21,8 +20,8 @@ import org.osgi.framework.ServiceRegistration;
 public class NeutronLoadBalancerPoolMemberInterface extends
         AbstractNeutronInterface<Members, NeutronLoadBalancerPoolMember> implements INeutronLoadBalancerPoolMemberCRUD {
 
-    NeutronLoadBalancerPoolMemberInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronLoadBalancerPoolMemberInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     @Override
@@ -89,9 +88,9 @@ public class NeutronLoadBalancerPoolMemberInterface extends
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronLoadBalancerPoolMemberInterface neutronLoadBalancerPoolMemberInterface = new NeutronLoadBalancerPoolMemberInterface(providerContext);
+        NeutronLoadBalancerPoolMemberInterface neutronLoadBalancerPoolMemberInterface = new NeutronLoadBalancerPoolMemberInterface(dataBroker);
         ServiceRegistration<INeutronLoadBalancerPoolMemberCRUD> neutronLoadBalancerPoolMemberInterfaceRegistration = context.registerService(INeutronLoadBalancerPoolMemberCRUD.class, neutronLoadBalancerPoolMemberInterface, null);
         if(neutronLoadBalancerPoolMemberInterfaceRegistration != null) {
             registrations.add(neutronLoadBalancerPoolMemberInterfaceRegistration);
index 834256da2d89bb2102cf6d4773c68f2e489cb8fa..23a1ef9cd47398ccb7102504ffe9306f9fe1a4a5 100644 (file)
@@ -12,7 +12,7 @@ import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
-
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronNetwork;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronNetworkCRUD;
@@ -51,8 +51,8 @@ public class NeutronNetworkInterface extends AbstractNeutronInterface<Network,Ne
             .put(NetworkTypeVxlan.class,"vxlan")
             .build();
 
-    NeutronNetworkInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronNetworkInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     // IfNBNetworkCRUD methods
@@ -253,9 +253,9 @@ public class NeutronNetworkInterface extends AbstractNeutronInterface<Network,Ne
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronNetworkInterface neutronNetworkInterface = new NeutronNetworkInterface(providerContext);
+        NeutronNetworkInterface neutronNetworkInterface = new NeutronNetworkInterface(dataBroker);
         ServiceRegistration<INeutronNetworkCRUD> neutronNetworkInterfaceRegistration = context.registerService(INeutronNetworkCRUD.class, neutronNetworkInterface, null);
         if(neutronNetworkInterfaceRegistration != null) {
             registrations.add(neutronNetworkInterfaceRegistration);
index 5cb2854d5d48659d9dab459281744eee37308da8..7151ba3ef4251c0c863a13e41e2d2cf4dc60a046 100644 (file)
@@ -14,17 +14,16 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
-
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronPort;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronPort_AllowedAddressPairs;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronPort_ExtraDHCPOption;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronPort_VIFDetail;
+import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronSecurityGroup;
+import org.opendaylight.netvirt.openstack.netvirt.translator.Neutron_IPs;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronPortCRUD;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronSecurityGroupCRUD;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.NeutronCRUDInterfaces;
-import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronPort;
-import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronSecurityGroup;
-import org.opendaylight.netvirt.openstack.netvirt.translator.Neutron_IPs;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.IpAddress;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
@@ -54,8 +53,8 @@ import org.slf4j.LoggerFactory;
 public class NeutronPortInterface extends AbstractNeutronInterface<Port, NeutronPort> implements INeutronPortCRUD {
     private static final Logger LOGGER = LoggerFactory.getLogger(NeutronPortInterface.class);
 
-    NeutronPortInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronPortInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     // IfNBPortCRUD methods
@@ -334,9 +333,9 @@ public class NeutronPortInterface extends AbstractNeutronInterface<Port, Neutron
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronPortInterface neutronPortInterface = new NeutronPortInterface(providerContext);
+        NeutronPortInterface neutronPortInterface = new NeutronPortInterface(dataBroker);
         ServiceRegistration<INeutronPortCRUD> neutronPortInterfaceRegistration = context.registerService(INeutronPortCRUD.class, neutronPortInterface, null);
         if(neutronPortInterfaceRegistration != null) {
             registrations.add(neutronPortInterfaceRegistration);
index 12c53647a48ce96878586828d1200443736bb105..26ec1ddb4988bf2f45853992ad00e7d1f333e76d 100644 (file)
@@ -9,15 +9,11 @@
 package org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl;
 
 import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
 import java.util.Set;
-
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronRouterCRUD;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronRouter;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronRouter_NetworkReference;
 import org.opendaylight.netvirt.openstack.netvirt.translator.Neutron_IPs;
@@ -42,8 +38,8 @@ public class NeutronRouterInterface extends  AbstractNeutronInterface<Router, Ne
     // methods needed for creating caches
 
 
-    NeutronRouterInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronRouterInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
 
@@ -225,14 +221,15 @@ public class NeutronRouterInterface extends  AbstractNeutronInterface<Router, Ne
 
         return result;
     }
-    
+
     public static void registerNewInterface(BundleContext context,
-            ProviderContext providerContext,
+            final DataBroker dataBroker,
             List<ServiceRegistration<?>> registrations) {
-       NeutronRouterInterface neutronRouterInterface = new NeutronRouterInterface(providerContext);
-       ServiceRegistration<INeutronRouterCRUD> neutronRouterInterfaceRegistration = context.registerService(INeutronRouterCRUD.class, neutronRouterInterface, null);
-       if(neutronRouterInterfaceRegistration != null) {
-               registrations.add(neutronRouterInterfaceRegistration);
-       }
-       }
+        NeutronRouterInterface neutronRouterInterface = new NeutronRouterInterface(dataBroker);
+        ServiceRegistration<INeutronRouterCRUD> neutronRouterInterfaceRegistration = context
+                .registerService(INeutronRouterCRUD.class,neutronRouterInterface, null);
+        if (neutronRouterInterfaceRegistration != null) {
+            registrations.add(neutronRouterInterfaceRegistration);
+        }
+    }
 }
index b1a645bb2da90edeea8bc35a46bdf1a3cb7f0e03..b8290a6fdad05f7108b92de6bf798509d44b5a35 100644 (file)
@@ -12,12 +12,11 @@ import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
-
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
-import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronSecurityRuleCRUD;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronSecurityGroup;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronSecurityRule;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronSecurityGroupCRUD;
+import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronSecurityRuleCRUD;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.NeutronCRUDInterfaces;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.rev150712.Neutron;
@@ -35,8 +34,8 @@ public class NeutronSecurityGroupInterface extends AbstractNeutronInterface<Secu
 
     private static final Logger LOGGER = LoggerFactory.getLogger(NeutronSecurityGroupInterface.class);
 
-    NeutronSecurityGroupInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronSecurityGroupInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     @Override
@@ -156,9 +155,9 @@ public class NeutronSecurityGroupInterface extends AbstractNeutronInterface<Secu
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronSecurityGroupInterface neutronSecurityGroupInterface = new NeutronSecurityGroupInterface(providerContext);
+        NeutronSecurityGroupInterface neutronSecurityGroupInterface = new NeutronSecurityGroupInterface(dataBroker);
         ServiceRegistration<INeutronSecurityGroupCRUD> neutronSecurityGroupInterfaceRegistration = context.registerService(INeutronSecurityGroupCRUD.class, neutronSecurityGroupInterface, null);
         if(neutronSecurityGroupInterfaceRegistration != null) {
             registrations.add(neutronSecurityGroupInterfaceRegistration);
index 7e968e44250bdaa4331b569df2d5e7dd28928454..8074dacf2709b8935b4ba798b608a8e5074ce11a 100644 (file)
@@ -8,16 +8,16 @@
 
 package org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl;
 
+import com.google.common.collect.ImmutableBiMap;
 import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
-
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
-import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronSecurityRuleCRUD;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronSecurityGroup;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronSecurityRule;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronSecurityGroupCRUD;
+import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronSecurityRuleCRUD;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.NeutronCRUDInterfaces;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.IpPrefix;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.DirectionBase;
@@ -43,8 +43,6 @@ import org.osgi.framework.ServiceRegistration;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.common.collect.ImmutableBiMap;
-
 
 public class NeutronSecurityRuleInterface extends AbstractNeutronInterface<SecurityRule, NeutronSecurityRule> implements INeutronSecurityRuleCRUD {
 
@@ -62,8 +60,8 @@ public class NeutronSecurityRuleInterface extends AbstractNeutronInterface<Secur
             EthertypeV4.class, NeutronSecurityRule.ETHERTYPE_IPV4,
             EthertypeV6.class, NeutronSecurityRule.ETHERTYPE_IPV6);
 
-    NeutronSecurityRuleInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronSecurityRuleInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     @Override
@@ -234,9 +232,9 @@ public class NeutronSecurityRuleInterface extends AbstractNeutronInterface<Secur
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronSecurityRuleInterface neutronSecurityRuleInterface = new NeutronSecurityRuleInterface(providerContext);
+        NeutronSecurityRuleInterface neutronSecurityRuleInterface = new NeutronSecurityRuleInterface(dataBroker);
         ServiceRegistration<INeutronSecurityRuleCRUD> neutronSecurityRuleInterfaceRegistration = context.registerService(INeutronSecurityRuleCRUD.class, neutronSecurityRuleInterface, null);
         if(neutronSecurityRuleInterfaceRegistration != null) {
             registrations.add(neutronSecurityRuleInterfaceRegistration);
index 7b91d77d213c4e3a29fd371afe06fbdc6e2e726f..3fd4889f6542ea3e2ff5f3c7f33b083c83e00a1d 100644 (file)
@@ -8,17 +8,17 @@
 
 package org.opendaylight.netvirt.openstack.netvirt.translator.crud.impl;
 
+import com.google.common.collect.ImmutableBiMap;
 import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
-
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
-import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronSubnetIPAllocationPool;
-import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronPortCRUD;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronPort;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronSubnet;
+import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronSubnetIPAllocationPool;
 import org.opendaylight.netvirt.openstack.netvirt.translator.Neutron_IPs;
+import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronPortCRUD;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.INeutronSubnetCRUD;
 import org.opendaylight.netvirt.openstack.netvirt.translator.crud.NeutronCRUDInterfaces;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.IpAddress;
@@ -43,8 +43,6 @@ import org.osgi.framework.ServiceRegistration;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.common.collect.ImmutableBiMap;
-
 public class NeutronSubnetInterface extends AbstractNeutronInterface<Subnet, NeutronSubnet> implements INeutronSubnetCRUD {
     private static final Logger LOGGER = LoggerFactory.getLogger(NeutronSubnetInterface.class);
 
@@ -62,8 +60,8 @@ public class NeutronSubnetInterface extends AbstractNeutronInterface<Subnet, Neu
             .put(Dhcpv6Stateless.class,"dhcpv6-stateless")
             .build();
 
-    NeutronSubnetInterface(ProviderContext providerContext) {
-        super(providerContext);
+    NeutronSubnetInterface(final DataBroker dataBroker) {
+        super(dataBroker);
     }
 
     // IfNBSubnetCRUD methods
@@ -277,9 +275,9 @@ public class NeutronSubnetInterface extends AbstractNeutronInterface<Subnet, Neu
     }
 
     public static void registerNewInterface(BundleContext context,
-                                            ProviderContext providerContext,
+                                            final DataBroker dataBroker,
                                             List<ServiceRegistration<?>> registrations) {
-        NeutronSubnetInterface neutronSubnetInterface = new NeutronSubnetInterface(providerContext);
+        NeutronSubnetInterface neutronSubnetInterface = new NeutronSubnetInterface(dataBroker);
         ServiceRegistration<INeutronSubnetCRUD> neutronSubnetInterfaceRegistration = context.registerService(INeutronSubnetCRUD.class, neutronSubnetInterface, null);
         if(neutronSubnetInterfaceRegistration != null) {
             registrations.add(neutronSubnetInterfaceRegistration);
diff --git a/openstack/net-virt/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/netvirt/impl/rev150513/NetvirtImplModule.java b/openstack/net-virt/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/netvirt/impl/rev150513/NetvirtImplModule.java
deleted file mode 100644 (file)
index 610f6c1..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.netvirt.impl.rev150513;
-
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker;
-import org.opendaylight.netvirt.openstack.netvirt.NetvirtProvider;
-import org.osgi.framework.BundleContext;
-
-public class NetvirtImplModule extends org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.netvirt.impl.rev150513.AbstractNetvirtImplModule {
-    private BundleContext bundleContext = null;
-
-    public NetvirtImplModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
-        super(identifier, dependencyResolver);
-    }
-
-    public NetvirtImplModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver, org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.netvirt.impl.rev150513.NetvirtImplModule oldModule, java.lang.AutoCloseable oldInstance) {
-        super(identifier, dependencyResolver, oldModule, oldInstance);
-    }
-
-    @Override
-    public void customValidation() {
-        // add custom validation form module attributes here.
-    }
-
-    @Override
-    public java.lang.AutoCloseable createInstance() {
-        NetvirtProvider provider = new NetvirtProvider(bundleContext, getClusteringEntityOwnershipServiceDependency());
-        provider.setConntrackEnabled(getConntrackEnabled());
-        provider.setIntBridgeGenMac(getIntBridgeGenMac());
-        BindingAwareBroker localBroker = getBrokerDependency();
-        localBroker.registerProvider(provider);
-        return provider;
-    }
-
-    public void setBundleContext(BundleContext bundleContext) {
-        this.bundleContext = bundleContext;
-    }
-}
diff --git a/openstack/net-virt/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/netvirt/impl/rev150513/NetvirtImplModuleFactory.java b/openstack/net-virt/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/netvirt/impl/rev150513/NetvirtImplModuleFactory.java
deleted file mode 100644 (file)
index 15bf334..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
-* Generated file
-*
-* Generated from: yang module name: netvirt-impl yang module local name: netvirt-impl
-* Generated by: org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator
-* Generated at: Mon May 18 13:02:40 EDT 2015
-*
-* Do not modify this file unless it is present under src/main directory
-*/
-package org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.netvirt.impl.rev150513;
-
-import org.opendaylight.controller.config.api.DependencyResolver;
-import org.opendaylight.controller.config.api.DynamicMBeanWithInstance;
-import org.opendaylight.controller.config.spi.Module;
-import org.osgi.framework.BundleContext;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class NetvirtImplModuleFactory extends org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.netvirt.impl.rev150513.AbstractNetvirtImplModuleFactory {
-    private static final Logger LOG = LoggerFactory.getLogger(NetvirtImplModuleFactory.class);
-
-    @Override
-    public Module createModule(String instanceName,
-                               DependencyResolver dependencyResolver,
-                               DynamicMBeanWithInstance old, BundleContext bundleContext)
-            throws Exception {
-        Module module =  super.createModule(instanceName, dependencyResolver, old, bundleContext);
-        setModuleBundleContext(bundleContext, module);
-        return module;
-    }
-
-    @Override
-    public Module createModule(String instanceName,
-                               DependencyResolver dependencyResolver, BundleContext bundleContext) {
-        Module module = super.createModule(instanceName, dependencyResolver, bundleContext);
-        setModuleBundleContext(bundleContext, module);
-        return module;
-    }
-
-    private void setModuleBundleContext(BundleContext bundleContext,
-                                        Module module) {
-        if (module instanceof NetvirtImplModule) {
-            ((NetvirtImplModule)module).setBundleContext(bundleContext);
-        } else {
-            LOG.warn("Module is of type {} expected type {}",
-                    module.getClass(), NetvirtImplModule.class);
-        }
-    }
-}
diff --git a/openstack/net-virt/src/main/resources/org/opendaylight/blueprint/netvirt-impl.xml b/openstack/net-virt/src/main/resources/org/opendaylight/blueprint/netvirt-impl.xml
new file mode 100644 (file)
index 0000000..821de54
--- /dev/null
@@ -0,0 +1,28 @@
+<?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" />
+  <reference id="entityOwnershipService"
+    interface="org.opendaylight.controller.md.sal.common.api.clustering.EntityOwnershipService" />
+
+  <odl:clustered-app-config id="netvirtImplConfig"
+    binding-class="org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.netvirt.impl.config.rev160517.NetvirtImplConfig">
+  </odl:clustered-app-config>
+
+  <bean id="netvirtProvider"
+    class="org.opendaylight.netvirt.openstack.netvirt.NetvirtProvider"
+    init-method="start" destroy-method="close">
+    <argument ref="dataBroker" />
+    <argument ref="entityOwnershipService" />
+    <argument>
+      <bean factory-ref="netvirtImplConfig" factory-method="isConntrackEnabled" />
+    </argument>
+    <argument>
+      <bean factory-ref="netvirtImplConfig" factory-method="getIntBridgeGenMac" />
+    </argument>
+  </bean>
+
+</blueprint>
\ No newline at end of file
diff --git a/openstack/net-virt/src/main/yang/netvirt-impl-config.yang b/openstack/net-virt/src/main/yang/netvirt-impl-config.yang
new file mode 100644 (file)
index 0000000..474f630
--- /dev/null
@@ -0,0 +1,24 @@
+module netvirt-impl-config {
+    yang-version 1;
+    namespace "urn:opendaylight:params:xml:ns:yang:netvirt:impl:config";
+    prefix "netvirt-impl-config";
+
+    description
+        "Configuration for Netvirt Impl.";
+
+    revision "2016-05-17" {
+        description
+                "Initial revision.";
+    }
+
+    container netvirt-impl-config {
+        leaf conntrack-enabled {
+            type boolean;
+            default false;
+        }
+        leaf int-bridge-gen-mac {
+            type boolean;
+            default true;
+        }
+    }
+}
diff --git a/openstack/net-virt/src/main/yang/netvirt-impl.yang b/openstack/net-virt/src/main/yang/netvirt-impl.yang
deleted file mode 100644 (file)
index 6883edc..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-module netvirt-impl {
-    yang-version 1;
-    namespace "urn:opendaylight:params:xml:ns:yang:netvirt:impl";
-    prefix "netvirt-impl";
-
-    import config { prefix config; revision-date 2013-04-05; }
-    import opendaylight-md-sal-binding { prefix md-sal-binding; revision-date 2013-10-28;}
-    import opendaylight-entity-ownership-service {prefix eos; revision-date 2015-08-10;}
-
-    description
-        "Service definition for netvirt project";
-
-    revision "2015-05-13" {
-        description
-            "Initial revision";
-    }
-
-    identity netvirt-impl {
-        base config:module-type;
-        config:java-name-prefix netvirtImpl;
-    }
-
-    augment "/config:modules/config:module/config:configuration" {
-        case netvirt-impl {
-            when "/config:modules/config:module/config:type = 'netvirt-impl'";
-            container broker {
-                uses config:service-ref {
-                    refine type {
-                        mandatory true;
-                        config:required-identity md-sal-binding:binding-broker-osgi-registry;
-                    }
-                }
-            }
-            container clustering-entity-ownership-service {
-                uses config:service-ref {
-                    refine type {
-                        mandatory true;
-                        config:required-identity eos:entity-ownership-service;
-                    }
-                }
-            }
-            leaf conntrack-enabled {
-                type boolean;
-            }
-
-            leaf int-bridge-gen-mac {
-                type boolean;
-            }
-        }
-    }
-}
\ No newline at end of file
index 82a84841df999ff99bc24e1ff84a461f1bb3e510..5c3b922fde429ddf4bcc9c1e31ab05e85359abc3 100644 (file)
@@ -12,12 +12,11 @@ import static org.junit.Assert.assertEquals;
 import static org.mockito.Mockito.mock;
 
 import java.util.Set;
-
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.runners.MockitoJUnitRunner;
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.netvirt.openstack.netvirt.api.OvsdbInventoryListener;
 
 /**
@@ -26,7 +25,7 @@ import org.opendaylight.netvirt.openstack.netvirt.api.OvsdbInventoryListener;
 @RunWith(MockitoJUnitRunner.class)
 public class OvsdbInventoryServiceImplTest {
 
-    @InjectMocks private OvsdbInventoryServiceImpl ovsdbInventoryServiceImpl = new OvsdbInventoryServiceImpl(mock(ProviderContext.class));
+    @InjectMocks private OvsdbInventoryServiceImpl ovsdbInventoryServiceImpl = new OvsdbInventoryServiceImpl(mock(DataBroker.class));
 
 
     @Test
index fdb01e2da62593baf05810b13e789c2dba320263..5946762edce47025ff66f06de926850e1a3e4459 100644 (file)
@@ -14,19 +14,13 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-
 import java.util.List;
-
 import org.junit.Test;
-
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
 import org.opendaylight.controller.md.sal.binding.test.AbstractDataBrokerTest;
 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.ProviderContext;
 import org.opendaylight.netvirt.openstack.netvirt.translator.NeutronFloatingIP;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.IpAddress;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
@@ -55,9 +49,7 @@ public class NeutronFloatingIPInterfaceTest extends AbstractDataBrokerTest {
     private static final String STATUS = "ACTIVE";
 
     private NeutronFloatingIPInterface getTestInterface(DataBroker broker) {
-        ProviderContext providerContext = mock(ProviderContext.class);
-        when(providerContext.getSALService(DataBroker.class)).thenReturn(broker);
-        return new NeutronFloatingIPInterface(providerContext);
+        return new NeutronFloatingIPInterface(broker);
     }
 
     /**