Merge "Utility method to get port termination point is added in HwvtepUtils.java"
authorFaseela K <faseela.k@ericsson.com>
Thu, 14 Jul 2016 06:31:52 +0000 (06:31 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Thu, 14 Jul 2016 06:31:52 +0000 (06:31 +0000)
mdsalutil/mdsalutil-api/src/main/java/org/opendaylight/genius/utils/hwvtep/HwvtepUtils.java

index 5ac1b76e1c58af033e63da2df6e0b025616da174..2dd1c97bd2ce89db1c05478d0efe73baaac64919 100644 (file)
@@ -32,10 +32,12 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hw
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.physical.port.attributes.VlanBindings;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NetworkTopology;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.TpId;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.Topology;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPoint;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPointBuilder;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPointKey;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 
 import com.google.common.base.Optional;
@@ -167,6 +169,30 @@ public final class HwvtepUtils {
         return null;
     }
 
+    /**
+     * Gets physical port termination point
+     *
+     * @param broker
+     *          the broker
+     * @param datastoreType
+     *          the datastore type
+     * @param nodeId
+     *          the physical switch node id
+     * @param portName
+     *          port name under physical switch node id
+     * @return the physical port termination point
+     */
+    public static TerminationPoint getPhysicalPortTerminationPoint(DataBroker broker,
+            LogicalDatastoreType datastoreType, NodeId nodeId, String portName) {
+        TerminationPointKey tpKey = new TerminationPointKey(new TpId(portName));
+        InstanceIdentifier<TerminationPoint> iid = HwvtepSouthboundUtils.createTerminationPointId(nodeId, tpKey);
+        Optional<TerminationPoint> physicalPortTerminationPoint = MDSALUtil.read(broker, datastoreType, iid);
+        if (physicalPortTerminationPoint.isPresent()) {
+            return physicalPortTerminationPoint.get();
+        }
+        return null;
+    }
+
     /**
      * Get LogicalSwitches for a given hwVtepNodeId.
      *