Merge dev/fluorine work across to master
[unimgr.git] / impl / src / main / java / org / opendaylight / unimgr / utils / CapabilitiesService.java
index 0eda3c1dd926a82266d60f97dfa9633969183585..5386132b082eb2d32d43bf9934d0da5c5de3ada6 100644 (file)
@@ -9,14 +9,9 @@
 package org.opendaylight.unimgr.utils;
 
 import com.google.common.base.Optional;
+import java.util.function.BiFunction;
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.NetconfNode;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeAugmentation;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.function.BiFunction;
 
 
 public class CapabilitiesService {
@@ -35,46 +30,7 @@ public class CapabilitiesService {
     }
 
     public static class NodeContext implements Context<Node> {
-        public enum NodeCapability implements Capability<Node> {
-            NETCONF((dbBroker, node) -> node.getAugmentation(NetconfNode.class) != null),
-            NETCONF_CISCO_IOX_L2VPN((dbBroker, node) ->
-                    checkForNetconfCapability(node,NetconfConstants.CAPABILITY_IOX_L2VPN)),
-            NETCONF_CISCO_IOX_IFMGR((dbBroker, node) ->
-                    checkForNetconfCapability(node,NetconfConstants.CAPABILITY_IOX_IFMGR)),
-            NETCONF_CISCO_IOX_POLICYMGR((dbBroker, node) ->
-                    checkForNetconfCapability(node,NetconfConstants.CAPABILITY_IOX_ASR9K_POLICYMGR)),
-            OVSDB((dbBroker,node) -> node.getAugmentation(OvsdbBridgeAugmentation.class) != null);
-
-            private BiFunction<DataBroker, Node, Boolean> condition;
-
-            NodeCapability(BiFunction<DataBroker, Node, Boolean> condition) {
-                this.condition = condition;
-            }
 
-            @Override
-            public BiFunction<DataBroker, Node, Boolean> getCondition() {
-                return condition;
-            }
-
-            private static boolean checkForNetconfCapability(Node node, String netconf_capability) {
-                NetconfNode netconf = node.getAugmentation(NetconfNode.class);
-                if (netconf == null) {
-                    return false;
-                }
-                if (netconf.getAvailableCapabilities() == null) {
-                    return false;
-                }
-                if (netconf.getAvailableCapabilities().getAvailableCapability() == null) {
-                    return false;
-                }
-
-                return netconf
-                        .getAvailableCapabilities()
-                        .getAvailableCapability()
-                        .stream()
-                        .anyMatch(capability -> capability.getCapability().equals(netconf_capability));
-            }
-        }
 
         private CapabilitiesService service;
 
@@ -100,7 +56,7 @@ public class CapabilitiesService {
         public boolean isSupporting(Capability.Mode mode, Capability<Node>... capabilities) {
             boolean result = (mode == Capability.Mode.AND);
 
-            for (Capability capability : capabilities) {
+            for (Capability<Node> capability : capabilities) {
                 boolean isSupporting = isSupporting(capability);
                 result = (mode == Capability.Mode.AND ? result && isSupporting : result || isSupporting);
 
@@ -113,9 +69,7 @@ public class CapabilitiesService {
         }
     }
 
-    private static final Logger LOG = LoggerFactory.getLogger(CapabilitiesService.class);
-
-    private DataBroker dataBroker;
+    protected DataBroker dataBroker;
 
     public CapabilitiesService(DataBroker dataBroker) {
         this.dataBroker = dataBroker;