Resource group to share resources between intents

Change-Id: I5bf7d4261197449924d07dabac841cf8ccbe9389
diff --git a/core/api/src/main/java/org/onosproject/net/intent/PointToPointIntent.java b/core/api/src/main/java/org/onosproject/net/intent/PointToPointIntent.java
index ba3b2c2..77b4556 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/PointToPointIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/PointToPointIntent.java
@@ -22,6 +22,7 @@
 import org.onosproject.core.ApplicationId;
 import org.onosproject.net.ConnectPoint;
 import org.onosproject.net.FilteredConnectPoint;
+import org.onosproject.net.ResourceGroup;
 import org.onosproject.net.flow.TrafficSelector;
 import org.onosproject.net.flow.TrafficTreatment;
 
@@ -92,6 +93,11 @@
             return (Builder) super.priority(priority);
         }
 
+        @Override
+        public Builder resourceGroup(ResourceGroup resourceGroup) {
+            return (Builder) super.resourceGroup(resourceGroup);
+        }
+
         /**
          * Sets the ingress point of the point to point intent that will be built.
          *
@@ -140,7 +146,6 @@
             return this;
         }
 
-
         /**
          * Builds a point to point intent from the accumulated parameters.
          *
@@ -156,7 +161,8 @@
                     ingressPoint,
                     egressPoint,
                     constraints,
-                    priority
+                    priority,
+                    resourceGroup
             );
         }
     }
@@ -179,15 +185,16 @@
      *        {@code egressPoints} or {@code appId} is null.
      */
     private PointToPointIntent(ApplicationId appId,
-                              Key key,
-                              TrafficSelector selector,
-                              TrafficTreatment treatment,
-                              FilteredConnectPoint ingressPoint,
-                              FilteredConnectPoint egressPoint,
-                              List<Constraint> constraints,
-                              int priority) {
+                               Key key,
+                               TrafficSelector selector,
+                               TrafficTreatment treatment,
+                               FilteredConnectPoint ingressPoint,
+                               FilteredConnectPoint egressPoint,
+                               List<Constraint> constraints,
+                               int priority,
+                               ResourceGroup resourceGroup) {
         super(appId, key, Collections.emptyList(), selector, treatment, constraints,
-                priority);
+                priority, resourceGroup);
 
         checkArgument(!ingressPoint.equals(egressPoint),
                 "ingress and egress should be different (ingress: %s, egress: %s)", ingressPoint, egressPoint);
@@ -258,6 +265,7 @@
                 .add("ingress", filteredIngressPoint())
                 .add("egress", filteredEgressPoint())
                 .add("constraints", constraints())
+                .add("resourceGroup", resourceGroup())
                 .toString();
     }