Bump version odlparent->6.0.0,mdsal->5.0.3
[genius.git] / mdsalutil / mdsalutil-api / src / main / java / org / opendaylight / genius / mdsalutil / actions / ActionSetFieldTunnelId.java
index 9c45a6480ff715f1b4e3643f8c43a611f9a215f2..99268c122705151a4830c5206e6fd06a594ec524 100644 (file)
@@ -7,54 +7,48 @@
  */
 package org.opendaylight.genius.mdsalutil.actions;
 
-import java.math.BigInteger;
-import javax.annotation.Nullable;
+import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.genius.mdsalutil.ActionInfo;
-import org.opendaylight.genius.mdsalutil.ActionType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetFieldCaseBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.set.field._case.SetFieldBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionKey;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.match.TunnelBuilder;
+import org.opendaylight.yangtools.yang.common.Uint64;
 
 /**
  * Set tunnel id field action.
  */
 public class ActionSetFieldTunnelId extends ActionInfo {
-    private final BigInteger tunnelId;
-    @Nullable private final BigInteger tunnelMask;
 
-    public ActionSetFieldTunnelId(BigInteger tunnelId) {
+    private final Uint64 tunnelId;
+    private final @Nullable Uint64 tunnelMask;
+
+    public ActionSetFieldTunnelId(Uint64 tunnelId) {
         this(0, tunnelId);
     }
 
-    public ActionSetFieldTunnelId(int actionKey, BigInteger tunnelId) {
+    public ActionSetFieldTunnelId(int actionKey, Uint64 tunnelId) {
         this(actionKey, tunnelId, null);
     }
 
-    public ActionSetFieldTunnelId(BigInteger tunnelId, BigInteger tunnelMask) {
+    public ActionSetFieldTunnelId(Uint64 tunnelId, Uint64 tunnelMask) {
         this(0, tunnelId, tunnelMask);
     }
 
-    public ActionSetFieldTunnelId(int actionKey, BigInteger tunnelId, BigInteger tunnelMask) {
-        super(ActionType.set_field_tunnel_id,
-            tunnelMask == null ? new BigInteger[] {tunnelId} : new BigInteger[] {tunnelId, tunnelMask}, actionKey);
+    public ActionSetFieldTunnelId(int actionKey, Uint64 tunnelId, Uint64 tunnelMask) {
+        super(actionKey);
         this.tunnelId = tunnelId;
         this.tunnelMask = tunnelMask;
     }
 
-    @Deprecated
-    public ActionSetFieldTunnelId(ActionInfo actionInfo) {
-        this(actionInfo.getActionKey(), actionInfo.getBigActionValues()[0],
-            (actionInfo.getBigActionValues().length > 1) ? actionInfo.getBigActionValues()[1] : null);
-    }
-
     @Override
     public Action buildAction() {
         return buildAction(getActionKey());
     }
 
+    @Override
     public Action buildAction(int newActionKey) {
         TunnelBuilder tunnelBuilder = new TunnelBuilder()
             .setTunnelId(tunnelId);
@@ -69,7 +63,49 @@ public class ActionSetFieldTunnelId extends ActionInfo {
                             .setTunnel(tunnelBuilder.build())
                             .build())
                     .build())
-            .setKey(new ActionKey(newActionKey))
+            .withKey(new ActionKey(newActionKey))
             .build();
     }
+
+    public Uint64 getTunnelId() {
+        return tunnelId;
+    }
+
+    public @Nullable Uint64 getTunnelMask() {
+        return tunnelMask;
+    }
+
+    @Override
+    public boolean equals(Object other) {
+        if (this == other) {
+            return true;
+        }
+        if (other == null || getClass() != other.getClass()) {
+            return false;
+        }
+        if (!super.equals(other)) {
+            return false;
+        }
+
+        ActionSetFieldTunnelId that = (ActionSetFieldTunnelId) other;
+
+        if (tunnelId != null ? !tunnelId.equals(that.tunnelId) : that.tunnelId != null) {
+            return false;
+        }
+        return tunnelMask != null ? tunnelMask.equals(that.tunnelMask) : that.tunnelMask == null;
+    }
+
+    @Override
+    public int hashCode() {
+        int result = super.hashCode();
+        result = 31 * result + (tunnelId != null ? tunnelId.hashCode() : 0);
+        result = 31 * result + (tunnelMask != null ? tunnelMask.hashCode() : 0);
+        return result;
+    }
+
+    @Override
+    public String toString() {
+        return "ActionSetFieldTunnelId [tunnelId=" + tunnelId + ", tunnelMask=" + tunnelMask + ", getActionKey()="
+                + getActionKey() + "]";
+    }
 }