adding constaints to intent API
diff --git a/core/api/src/main/java/org/onlab/onos/net/resource/DefaultLinkResourceRequest.java b/core/api/src/main/java/org/onlab/onos/net/resource/DefaultLinkResourceRequest.java
index 73b48df6..c3f5c28 100644
--- a/core/api/src/main/java/org/onlab/onos/net/resource/DefaultLinkResourceRequest.java
+++ b/core/api/src/main/java/org/onlab/onos/net/resource/DefaultLinkResourceRequest.java
@@ -20,9 +20,12 @@
 import java.util.Set;
 
 import org.onlab.onos.net.Link;
+import org.onlab.onos.net.intent.Constraint;
 import org.onlab.onos.net.intent.IntentId;
 
 import com.google.common.collect.ImmutableSet;
+import org.onlab.onos.net.intent.constraint.BandwidthConstraint;
+import org.onlab.onos.net.intent.constraint.LambdaConstraint;
 
 /**
  * Implementation of {@link LinkResourceRequest}.
@@ -125,6 +128,18 @@
             return this;
         }
 
+        @Override
+        public LinkResourceRequest.Builder addConstraint(Constraint constraint) {
+            if (constraint instanceof LambdaConstraint) {
+                return addLambdaRequest();
+            } else if (constraint instanceof BandwidthConstraint) {
+                BandwidthConstraint bw = (BandwidthConstraint) constraint;
+                return addBandwidthRequest(bw.bandwidth().toDouble());
+            }
+            return this;
+        }
+
+
         /**
          * Returns link resource request.
          *
diff --git a/core/api/src/main/java/org/onlab/onos/net/resource/LinkResourceRequest.java b/core/api/src/main/java/org/onlab/onos/net/resource/LinkResourceRequest.java
index a511778..23a0c30 100644
--- a/core/api/src/main/java/org/onlab/onos/net/resource/LinkResourceRequest.java
+++ b/core/api/src/main/java/org/onlab/onos/net/resource/LinkResourceRequest.java
@@ -19,6 +19,7 @@
 import java.util.Set;
 
 import org.onlab.onos.net.Link;
+import org.onlab.onos.net.intent.Constraint;
 import org.onlab.onos.net.intent.IntentId;
 
 /**
@@ -67,6 +68,14 @@
         public Builder addBandwidthRequest(double bandwidth);
 
         /**
+         * Adds the resources required for a constraint.
+         *
+         * @param constraint the constraint
+         * @return self
+         */
+        public Builder addConstraint(Constraint constraint);
+
+        /**
          * Returns link resource request.
          *
          * @return link resource request