Merge "Debug tool for openconfig proprietary extensions"
[transportpce.git] / pce / src / main / java / org / opendaylight / transportpce / pce / service / PathComputationService.java
index 88f372a40951c4411561e5f13376913c94fa966a..0de1fbf2d3cebce0ec797bc8879b9ead142d6ad3 100644 (file)
@@ -7,10 +7,13 @@
  */
 package org.opendaylight.transportpce.pce.service;
 
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev171017.CancelResourceReserveInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev171017.CancelResourceReserveOutput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev171017.PathComputationRequestInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev171017.PathComputationRequestOutput;
+import com.google.common.util.concurrent.ListenableFuture;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev240205.CancelResourceReserveInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev240205.CancelResourceReserveOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev240205.PathComputationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev240205.PathComputationRequestOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev240205.PathComputationRerouteRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev240205.PathComputationRerouteRequestOutput;
 
 /**
  * Path Computation Service.
@@ -23,14 +26,23 @@ public interface PathComputationService {
      * @param input CancelResourceReserveInput data
      * @return output CancelResourceReserveOutput data
      */
-    CancelResourceReserveOutput cancelResourceReserve(CancelResourceReserveInput input);
+    ListenableFuture<CancelResourceReserveOutput> cancelResourceReserve(CancelResourceReserveInput input);
 
     /**
-     * Requests a path compuation.
+     * Requests a path computation.
      *
      * @param input PathComputationRequestInput data
      * @return output PathComputationRequestOutput data
      */
-    PathComputationRequestOutput pathComputationRequest(PathComputationRequestInput input);
+    ListenableFuture<PathComputationRequestOutput> pathComputationRequest(PathComputationRequestInput input);
+
+    /**
+     * Requests a path computation in order to reroute a service.
+     *
+     * @param input PathComputationRerouteRequestInput data
+     * @return output PathComputationRerouteRequestOutput data
+     */
+    ListenableFuture<PathComputationRerouteRequestOutput> pathComputationRerouteRequest(
+            PathComputationRerouteRequestInput input);
 
 }