Squashed commit of the following:
[ovsdb.git] / openstack / net-virt / src / main / java / org / opendaylight / ovsdb / openstack / netvirt / impl / ProviderNetworkManagerImpl.java
index fd53313d3021d2f0a3ee3e5fbfd6c5151046004c..7f86f822f1f4f5f8008aa3d4087902aa279d35e7 100644 (file)
@@ -9,42 +9,38 @@
  */
 package org.opendaylight.ovsdb.openstack.netvirt.impl;
 
-import org.opendaylight.controller.sal.core.Node;
-import org.opendaylight.ovsdb.openstack.netvirt.api.ConfigurationService;
+import java.util.HashMap;
+import java.util.Map;
+
 import org.opendaylight.ovsdb.openstack.netvirt.api.Constants;
 import org.opendaylight.ovsdb.openstack.netvirt.api.NetworkingProvider;
 import org.opendaylight.ovsdb.openstack.netvirt.api.NetworkingProviderManager;
-
-import com.google.common.base.Preconditions;
-import com.google.common.base.Predicate;
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Maps;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
 import org.osgi.framework.ServiceReference;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.HashMap;
-import java.util.Map;
+import com.google.common.base.Predicate;
+import com.google.common.collect.Iterables;
+import com.google.common.collect.Maps;
 
 public class ProviderNetworkManagerImpl implements NetworkingProviderManager {
 
     static final Logger logger = LoggerFactory.getLogger(ProviderNetworkManagerImpl.class);
-    // The provider for each of these services is resolved by the OSGi Service Manager
-    private volatile ConfigurationService configurationService;
-
     private HashMap<Long, ProviderEntry> providers = Maps.newHashMap();
     private HashMap<Node, NetworkingProvider> nodeToProviderMapping = Maps.newHashMap();
 
-    public NetworkingProvider getProvider(Node node) {
-        // This will change if/when we move to a commons library
-        Preconditions.checkArgument(node.getType().equals("OVS"));
+    public void init() {
+        logger.info(">>>>>> init ProviderNetworkManagerImpl");
+    }
 
+    @Override
+    public NetworkingProvider getProvider(Node node) {
         if (nodeToProviderMapping.get(node) != null) {
             return nodeToProviderMapping.get(node);
         }
 
-        final String targetVersion = configurationService.getOpenflowVersion(node);
-
+        final String targetVersion = Constants.OPENFLOW13;
         Predicate<ProviderEntry> providerEntryPredicate = new Predicate<ProviderEntry>() {
             @Override
             public boolean apply(ProviderEntry providerEntry) {
@@ -68,11 +64,14 @@ public class ProviderNetworkManagerImpl implements NetworkingProviderManager {
     public void providerAdded(final ServiceReference ref, final NetworkingProvider provider){
         Map <String, String> properties = Maps.newHashMap();
         Long pid = (Long) ref.getProperty(org.osgi.framework.Constants.SERVICE_ID);
-        properties.put(Constants.SOUTHBOUND_PROTOCOL_PROPERTY, (String) ref.getProperty(Constants.SOUTHBOUND_PROTOCOL_PROPERTY));
-        properties.put(Constants.OPENFLOW_VERSION_PROPERTY, (String) ref.getProperty(Constants.OPENFLOW_VERSION_PROPERTY));
+        properties.put(Constants.SOUTHBOUND_PROTOCOL_PROPERTY,
+                (String) ref.getProperty(Constants.SOUTHBOUND_PROTOCOL_PROPERTY));
+        properties.put(Constants.OPENFLOW_VERSION_PROPERTY,
+                (String) ref.getProperty(Constants.OPENFLOW_VERSION_PROPERTY));
         properties.put(Constants.PROVIDER_TYPE_PROPERTY, (String) ref.getProperty(Constants.PROVIDER_TYPE_PROPERTY));
         providers.put(pid, new ProviderEntry(provider, properties));
-        logger.info("Neutron Networking Provider Registered: {}, with {} and pid={}", provider.getClass().getName(), properties.toString(), pid);
+        logger.info("Neutron Networking Provider Registered: {}, with {} and pid={}",
+                provider.getClass().getName(), properties.toString(), pid);
     }
 
     public void providerRemoved(final ServiceReference ref){