diff --git a/src/main/java/net/onrc/onos/core/matchaction/MatchActionId.java b/src/main/java/net/onrc/onos/core/matchaction/MatchActionId.java
index b520439..3dcb64c 100644
--- a/src/main/java/net/onrc/onos/core/matchaction/MatchActionId.java
+++ b/src/main/java/net/onrc/onos/core/matchaction/MatchActionId.java
@@ -2,36 +2,38 @@
 
 import net.onrc.onos.api.batchoperation.BatchOperationTarget;
 
+import java.util.Objects;
+
 /**
  * A unique identifier for a MatchAction.  Objects of this class are immutable.
  */
 public final class MatchActionId implements BatchOperationTarget {
-    private final String value;
+    private final long value;
 
     /**
      * Creates a new Match Action Identifier based on the given id string.
      *
      * @param id unique id string
      */
-    public MatchActionId(String id) {
+    public MatchActionId(long id) {
         value = id;
     }
 
     @Override
     public String toString() {
-        return value;
+        return Long.toString(value);
     }
 
     @Override
     public int hashCode() {
-        return value.hashCode();
+        return Objects.hashCode(value);
     }
 
     @Override
     public boolean equals(Object obj) {
         if (obj instanceof MatchActionId) {
-            MatchActionId other = (MatchActionId) obj;
-            return (value.equals(other.value));
+            final MatchActionId that = (MatchActionId) obj;
+            return this.value == that.value;
         }
         return false;
     }
