Do not use InstanceIdentifier.builder() 03/20603/2
authorRobert Varga <rovarga@cisco.com>
Sat, 16 May 2015 16:18:40 +0000 (18:18 +0200)
committerRobert Varga <rovarga@cisco.com>
Sat, 16 May 2015 16:43:31 +0000 (18:43 +0200)
These instance identifiers are expected to be short-lived, so use the
appropriate utility child() method instead.

Change-Id: I23a6e6d33fec7b904794ac38ff153b4d46063858
Signed-off-by: Robert Varga <rovarga@cisco.com>
samples/learning-switch/src/main/java/org/opendaylight/openflowplugin/learningswitch/InstanceIdentifierUtils.java
samples/learning-switch/src/main/java/org/opendaylight/openflowplugin/learningswitch/PacketUtils.java

index 10ee47ab6369dd0ed01eb6c0cd2e539eae8fba8f..07ebb46cd602d8014492a0bf53831ab70bdd8372 100644 (file)
@@ -5,11 +5,11 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.ta
 import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.TableKey;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.Flow;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.FlowKey;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.node.NodeConnector;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.node.NodeConnectorKey;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 
@@ -22,11 +22,11 @@ public class InstanceIdentifierUtils {
 
     /**
      * Creates an Instance Identifier (path) for node with specified id
-     * 
+     *
      * @param nodeId
      * @return
      */
-    public static final InstanceIdentifier<Node> createNodePath(NodeId nodeId) {
+    public static final InstanceIdentifier<Node> createNodePath(final NodeId nodeId) {
         return InstanceIdentifier.builder(Nodes.class)
                 .child(Node.class, new NodeKey(nodeId))
                 .build();
@@ -34,66 +34,59 @@ public class InstanceIdentifierUtils {
 
     /**
      * Shorten's node child path to node path.
-     * 
+     *
      * @param nodeChild child of node, from which we want node path.
      * @return
      */
-    public static final InstanceIdentifier<Node> getNodePath(InstanceIdentifier<?> nodeChild) {
+    public static final InstanceIdentifier<Node> getNodePath(final InstanceIdentifier<?> nodeChild) {
         return nodeChild.firstIdentifierOf(Node.class);
     }
-    
-    
+
+
     /**
      * Creates a table path by appending table specific location to node path
-     * 
+     *
      * @param nodePath
      * @param tableKey
      * @return
      */
-    public static final InstanceIdentifier<Table> createTablePath(InstanceIdentifier<Node> nodePath,TableKey tableKey) {
-        return InstanceIdentifier.builder(nodePath)
-                .augmentation(FlowCapableNode.class)
-                .child(Table.class, tableKey)
-                .build();
+    public static final InstanceIdentifier<Table> createTablePath(final InstanceIdentifier<Node> nodePath,final TableKey tableKey) {
+        return nodePath.augmentation(FlowCapableNode.class).child(Table.class, tableKey);
     }
 
     /**
      * Creates a path for particular flow, by appending flow-specific information
      * to table path.
-     * 
+     *
      * @param tablePath
      * @param flowKey
      * @return path to flow
      */
-    public static InstanceIdentifier<Flow> createFlowPath(InstanceIdentifier<Table> tablePath, FlowKey flowKey) {
-        return InstanceIdentifier.builder(tablePath)
-                .child(Flow.class, flowKey)
-                .build();
+    public static InstanceIdentifier<Flow> createFlowPath(final InstanceIdentifier<Table> tablePath, final FlowKey flowKey) {
+        return tablePath.child(Flow.class, flowKey);
     }
 
     /**
      * Extract table id from table path.
-     * 
+     *
      * @param tablePath
      * @return
      */
-    public static Short getTableId(InstanceIdentifier<Table> tablePath) {
+    public static Short getTableId(final InstanceIdentifier<Table> tablePath) {
         return tablePath.firstKeyOf(Table.class, TableKey.class).getId();
     }
-    
+
     /**
      * Extracts NodeConnectorKey from node connector path.
-     * 
+     *
      */
-    public static NodeConnectorKey getNodeConnectorKey(InstanceIdentifier<?> nodeConnectorPath) {
+    public static NodeConnectorKey getNodeConnectorKey(final InstanceIdentifier<?> nodeConnectorPath) {
         return nodeConnectorPath.firstKeyOf(NodeConnector.class, NodeConnectorKey.class);
     }
-    
-    
+
+
     //
-    public static final InstanceIdentifier<NodeConnector> createNodeConnectorPath(InstanceIdentifier<Node> nodeKey,NodeConnectorKey nodeConnectorKey) {
-        return InstanceIdentifier.builder(nodeKey)
-                .child(NodeConnector.class,nodeConnectorKey)
-                .build();
+    public static final InstanceIdentifier<NodeConnector> createNodeConnectorPath(final InstanceIdentifier<Node> nodeKey,final NodeConnectorKey nodeConnectorKey) {
+        return nodeKey.child(NodeConnector.class,nodeConnectorKey);
     }
 }
index 776f139aebc33cdec84f1cf9050484377c518e2f..159e4e0e99a301973abfbc62b1933a2614949867 100644 (file)
@@ -66,7 +66,7 @@ public abstract class PacketUtils {
      * @param payload
      * @return destination MAC address
      */
-    public static byte[] extractDstMac(byte[] payload) {
+    public static byte[] extractDstMac(final byte[] payload) {
         return Arrays.copyOfRange(payload, DST_MAC_START_POSITION, DST_MAC_END_POSITION);
     }
 
@@ -74,7 +74,7 @@ public abstract class PacketUtils {
      * @param payload
      * @return source MAC address
      */
-    public static byte[] extractSrcMac(byte[] payload) {
+    public static byte[] extractSrcMac(final byte[] payload) {
         return Arrays.copyOfRange(payload, SRC_MAC_START_POSITION, SRC_MAC_END_POSITION);
     }
 
@@ -82,7 +82,7 @@ public abstract class PacketUtils {
      * @param payload
      * @return source MAC address
      */
-    public static byte[] extractEtherType(byte[] payload) {
+    public static byte[] extractEtherType(final byte[] payload) {
         return Arrays.copyOfRange(payload, ETHER_TYPE_START_POSITION, ETHER_TYPE_END_POSITION);
     }
 
@@ -91,7 +91,7 @@ public abstract class PacketUtils {
      * @return {@link MacAddress} wrapping string value, baked upon binary MAC
      *         address
      */
-    public static MacAddress rawMacToMac(byte[] rawMac) {
+    public static MacAddress rawMacToMac(final byte[] rawMac) {
         MacAddress mac = null;
         if (rawMac != null && rawMac.length == MAC_ADDRESS_SIZE) {
             StringBuilder sb = new StringBuilder();
@@ -109,11 +109,10 @@ public abstract class PacketUtils {
      * @param port
      * @return port wrapped into {@link NodeConnectorRef}
      */
-    public static NodeConnectorRef createNodeConnRef(InstanceIdentifier<Node> nodeInstId, NodeKey nodeKey, String port) {
-        StringBuilder sBuild = new StringBuilder(nodeKey.getId().getValue()).append(":").append(port);
+    public static NodeConnectorRef createNodeConnRef(final InstanceIdentifier<Node> nodeInstId, final NodeKey nodeKey, final String port) {
+        StringBuilder sBuild = new StringBuilder(nodeKey.getId().getValue()).append(':').append(port);
         NodeConnectorKey nConKey = new NodeConnectorKey(new NodeConnectorId(sBuild.toString()));
-        InstanceIdentifier<NodeConnector> portPath = InstanceIdentifier.builder(nodeInstId)
-                .child(NodeConnector.class, nConKey).build();
+        InstanceIdentifier<NodeConnector> portPath = nodeInstId.child(NodeConnector.class, nConKey);
         return new NodeConnectorRef(portPath);
     }
 }