*/
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) {
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){