Use Futures.submit() 11/106811/1
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 4 Jul 2023 19:51:57 +0000 (21:51 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Tue, 4 Jul 2023 19:51:57 +0000 (21:51 +0200)
Do not wrap the ExecutorService and just use Futures.submit() to arrive
at a ListenableFuture with any executor.

Change-Id: Id43ba68f65aa7a358159024364515f8029b95d5f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
opendaylight/md-sal/samples/toaster-consumer/src/main/java/org/opendaylight/controller/sample/kitchen/impl/KitchenServiceImpl.java

index a40fe5e9ffdc77cc8a7fc733a07f7c3aee341b7d..55b56741afe3dd5e325e4e6337e2eb68fe914ec1 100644 (file)
@@ -11,10 +11,10 @@ import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableList.Builder;
 import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.ListenableFuture;
-import com.google.common.util.concurrent.ListeningExecutorService;
 import com.google.common.util.concurrent.MoreExecutors;
 import java.util.List;
 import java.util.concurrent.ExecutionException;
+import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import javax.annotation.PreDestroy;
 import javax.inject.Inject;
@@ -57,7 +57,7 @@ public final class KitchenServiceImpl extends AbstractMXBean
     private static final Logger LOG = LoggerFactory.getLogger(KitchenServiceImpl.class);
     private static final MakeToastOutput EMPTY_MAKE_OUTPUT = new MakeToastOutputBuilder().build();
 
-    private final ListeningExecutorService executor = MoreExecutors.listeningDecorator(Executors.newCachedThreadPool());
+    private final ExecutorService executor = Executors.newCachedThreadPool();
     private final ToasterService toaster;
     private final Registration reg;
 
@@ -115,7 +115,7 @@ public final class KitchenServiceImpl extends AbstractMXBean
     }
 
     private ListenableFuture<RpcResult<Void>> makeEggs(final EggsType eggsType) {
-        return executor.submit(() -> RpcResultBuilder.<Void>success().build());
+        return Futures.submit(() -> RpcResultBuilder.<Void>success().build(), executor);
     }
 
     private ListenableFuture<RpcResult<MakeToastOutput>> makeToast(final ToastType toastType, final int toastDoneness) {