[ONOS] Compute path with Explicit path objects
Change-Id: Ib487688e15db7056283feef7720f610b2f59ad84
diff --git a/apps/pce/app/src/main/java/org/onosproject/pce/pceservice/PcePath.java b/apps/pce/app/src/main/java/org/onosproject/pce/pceservice/PcePath.java
index 807b233..4886b97 100644
--- a/apps/pce/app/src/main/java/org/onosproject/pce/pceservice/PcePath.java
+++ b/apps/pce/app/src/main/java/org/onosproject/pce/pceservice/PcePath.java
@@ -19,7 +19,9 @@
import org.onosproject.incubator.net.tunnel.Tunnel;
import org.onosproject.incubator.net.tunnel.TunnelId;
import org.onosproject.net.intent.Constraint;
-import org.onosproject.pce.pceservice.DefaultPcePath.Builder;
+
+import java.util.Collection;
+import java.util.List;
/**
* Abstraction of an entity which provides functionalities of pce path.
@@ -97,6 +99,13 @@
Constraint bandwidthConstraint();
/**
+ * Returns the list of explicit path objects.
+ *
+ * @return list of explicit path objects
+ */
+ Collection<ExplicitPathInfo> explicitPathInfo();
+
+ /**
* Copies only non-null or non-zero member variables.
*
* @param id path-id
@@ -169,9 +178,18 @@
* Copies tunnel information to local.
*
* @param tunnel pcc tunnel
+ * @param explicitPathInfoList list of explicit path objects info
* @return object of pce-path
*/
- Builder of(Tunnel tunnel);
+ Builder of(Tunnel tunnel, List<ExplicitPathInfo> explicitPathInfoList);
+
+ /**
+ * Returns the builder object of ExplicitPathInfo.
+ *
+ * @param explicitPathInfo list of explicit path obj
+ * @return builder object of ExplicitPathInfo
+ */
+ Builder explicitPathInfo(Collection<ExplicitPathInfo> explicitPathInfo);
/**
* Builds object of pce path.