Adding the DomainConstraint to the web interface.
Change-Id: I3d0b785486979b4a4f666fa55efd2d4a7df8128b
diff --git a/core/common/src/main/java/org/onosproject/codec/impl/DecodeConstraintCodecHelper.java b/core/common/src/main/java/org/onosproject/codec/impl/DecodeConstraintCodecHelper.java
index 2ca421e..3b10907 100644
--- a/core/common/src/main/java/org/onosproject/codec/impl/DecodeConstraintCodecHelper.java
+++ b/core/common/src/main/java/org/onosproject/codec/impl/DecodeConstraintCodecHelper.java
@@ -26,6 +26,7 @@
import org.onosproject.net.intent.constraint.AnnotationConstraint;
import org.onosproject.net.intent.constraint.AsymmetricPathConstraint;
import org.onosproject.net.intent.constraint.BandwidthConstraint;
+import org.onosproject.net.intent.constraint.DomainConstraint;
import org.onosproject.net.intent.constraint.LatencyConstraint;
import org.onosproject.net.intent.constraint.LinkTypeConstraint;
import org.onosproject.net.intent.constraint.ObstacleConstraint;
@@ -159,6 +160,16 @@
}
/**
+ * Decodes a domain constraint.
+ *
+ * @return domain constraint object.
+ */
+ private Constraint decodeDomainConstraint() {
+ return DomainConstraint.domain();
+ }
+
+
+ /**
* Decodes a bandwidth constraint.
*
* @return bandwidth constraint object.
@@ -195,6 +206,8 @@
return decodeWaypointConstraint();
} else if (type.equals(AsymmetricPathConstraint.class.getSimpleName())) {
return decodeAsymmetricPathConstraint();
+ } else if (type.equals(DomainConstraint.class.getSimpleName())) {
+ return decodeDomainConstraint();
}
throw new IllegalArgumentException("Instruction type "
+ type + " is not supported");
diff --git a/core/common/src/test/java/org/onosproject/codec/impl/ConstraintCodecTest.java b/core/common/src/test/java/org/onosproject/codec/impl/ConstraintCodecTest.java
index d282fbc..569a775 100644
--- a/core/common/src/test/java/org/onosproject/codec/impl/ConstraintCodecTest.java
+++ b/core/common/src/test/java/org/onosproject/codec/impl/ConstraintCodecTest.java
@@ -28,6 +28,7 @@
import org.onosproject.net.intent.constraint.AnnotationConstraint;
import org.onosproject.net.intent.constraint.AsymmetricPathConstraint;
import org.onosproject.net.intent.constraint.BandwidthConstraint;
+import org.onosproject.net.intent.constraint.DomainConstraint;
import org.onosproject.net.intent.constraint.LatencyConstraint;
import org.onosproject.net.intent.constraint.LinkTypeConstraint;
import org.onosproject.net.intent.constraint.ObstacleConstraint;
@@ -186,4 +187,13 @@
Constraint constraint = getConstraint("AsymmetricPathConstraint.json");
assertThat(constraint, instanceOf(AsymmetricPathConstraint.class));
}
+
+ /**
+ * Tests domain constraint.
+ */
+ @Test
+ public void domainConstraint() {
+ Constraint constraint = getConstraint("DomainConstraint.json");
+ assertThat(constraint, instanceOf(DomainConstraint.class));
+ }
}
diff --git a/core/common/src/test/resources/org/onosproject/codec/impl/DomainConstraint.json b/core/common/src/test/resources/org/onosproject/codec/impl/DomainConstraint.json
new file mode 100644
index 0000000..79e67f9
--- /dev/null
+++ b/core/common/src/test/resources/org/onosproject/codec/impl/DomainConstraint.json
@@ -0,0 +1,3 @@
+{
+ "type":"DomainConstraint"
+}