Refactoring intent API.
diff --git a/core/api/src/main/java/org/onlab/onos/net/intent/HostToHostIntent.java b/core/api/src/main/java/org/onlab/onos/net/intent/HostToHostIntent.java
index 7a894be6..92b148d 100644
--- a/core/api/src/main/java/org/onlab/onos/net/intent/HostToHostIntent.java
+++ b/core/api/src/main/java/org/onlab/onos/net/intent/HostToHostIntent.java
@@ -1,12 +1,11 @@
 package org.onlab.onos.net.intent;
 
 import com.google.common.base.MoreObjects;
+import org.onlab.onos.ApplicationId;
 import org.onlab.onos.net.HostId;
 import org.onlab.onos.net.flow.TrafficSelector;
 import org.onlab.onos.net.flow.TrafficTreatment;
 
-import java.util.Objects;
-
 import static com.google.common.base.Preconditions.checkNotNull;
 
 /**
@@ -21,7 +20,7 @@
      * Creates a new point-to-point intent with the supplied ingress/egress
      * ports.
      *
-     * @param intentId  intent identifier
+     * @param appId     application identifier
      * @param one       first host
      * @param two       second host
      * @param selector  action
@@ -29,10 +28,11 @@
      * @throws NullPointerException if {@code ingressPort} or {@code egressPort}
      *                              is null.
      */
-    public HostToHostIntent(IntentId intentId, HostId one, HostId two,
+    public HostToHostIntent(ApplicationId appId, HostId one, HostId two,
                             TrafficSelector selector,
                             TrafficTreatment treatment) {
-        super(intentId, selector, treatment);
+        super(id(HostToHostIntent.class, one, two, selector, treatment),
+              appId, null, selector, treatment);
         this.one = checkNotNull(one);
         this.two = checkNotNull(two);
     }
@@ -56,28 +56,6 @@
     }
 
     @Override
-    public boolean equals(Object o) {
-        if (this == o) {
-            return true;
-        }
-        if (o == null || getClass() != o.getClass()) {
-            return false;
-        }
-        if (!super.equals(o)) {
-            return false;
-        }
-
-        HostToHostIntent that = (HostToHostIntent) o;
-        return Objects.equals(this.one, that.one)
-                && Objects.equals(this.two, that.two);
-    }
-
-    @Override
-    public int hashCode() {
-        return Objects.hash(super.hashCode(), one, two);
-    }
-
-    @Override
     public String toString() {
         return MoreObjects.toStringHelper(getClass())
                 .add("id", id())