ctubbsii commented on a change in pull request #1113:
URL: https://github.com/apache/fluo/pull/1113#discussion_r595589017



##########
File path: 
modules/api/src/main/java/org/apache/fluo/api/client/LoaderExecutor.java
##########
@@ -48,11 +48,12 @@
 
   /**
    * Same as {@link #execute(Loader)} except it returns a future that 
completes upon successful
-   * commit and if an exception is thrown in the loader, it will be relayed 
through the future.
+   * commit and if an exception is thrown in the loader, it will be relayed 
through the future. The
+   * result of the future is the Loader that was successfully executed.
    *
    * @since 2.0.0
    */
-  CompletableFuture<Void> submit(Loader loader);
+  CompletableFuture<Loader> submit(Loader loader);

Review comment:
       Hmm, it might be possible to do:
   
   ```suggestion
     <T extends Loader,S super T> CompletableFuture<S> submit(T loader);
   ```
   
   It might not be worth it to use `super` at all, though. The main advantage 
of something like this (if it could be made to work) would be to allow stuff 
where the assignment variable's generic type is a supertype of the parameter:
   
   ```java
   CompletableFuture<Loader> future = le.submit(new CounterLoader());
   ```




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to