List of usage examples for com.google.common.util.concurrent SettableFuture set
@Override public boolean set(@Nullable V value)
From source file:org.apache.helix.provisioning.yarn.NMCallbackHandler.java
@Override public void onContainerStopped(ContainerId containerId) { LOG.info("Succeeded to stop Container " + containerId); Container container = containers.get(containerId); if (container != null) { applicationMaster.nmClientAsync.getContainerStatusAsync(containerId, container.getNodeId()); }/* w ww .j a va 2 s. co m*/ SettableFuture<ContainerStopResponse> settableFuture = applicationMaster.containerStopMap .remove(containerId); ContainerStopResponse value = new ContainerStopResponse(); settableFuture.set(value); containers.remove(containerId); }
From source file:org.opendaylight.controller.cluster.datastore.LocalTransactionContext.java
@Override public <T> void executeRead(AbstractRead<T> readCmd, final SettableFuture<T> proxyFuture) { Futures.addCallback(readCmd.apply(getReadDelegate()), new FutureCallback<T>() { @Override// w w w . jav a 2s. co m public void onSuccess(final T result) { proxyFuture.set(result); } @Override public void onFailure(final Throwable t) { proxyFuture.setException(t); } }); }
From source file:io.grpc.cronet.CronetClientTransport.java
@Override public ListenableFuture<TransportStats> getStats() { SettableFuture<TransportStats> f = SettableFuture.create(); f.set(null); return f;// w ww . j a v a 2 s. co m }
From source file:co.cask.cdap.data2.transaction.queue.leveldb.LevelDBQueueEvictor.java
@Override public ListenableFuture<Integer> evict(final Transaction transaction) { final SettableFuture<Integer> result = SettableFuture.create(); executor.execute(new Runnable() { @Override/*w w w .j av a2 s. co m*/ public void run() { try { result.set(doEvict(transaction)); } catch (Throwable t) { result.setException(t); } } }); return result; }
From source file:org.opendaylight.usc.plugin.UscDemultiplexer.java
@Override protected void channelRead0(ChannelHandlerContext ctx, UscFrame frame) throws Exception { LOG.trace("UscDemultiplexer.channelRead: " + frame); if (frame instanceof UscControl) { UscControl controlMsg = (UscControl) frame; if (controlMsg.getControlCode() == UscControl.ControlCode.ECHO) { SocketAddress remoteAddress = ctx.channel().remoteAddress(); promiseMap.get(remoteAddress).set(new Throwable("Success")); LOG.trace("channelRead0: promiseMap = " + promiseMap); return; }/*from w w w . j av a2 s. c om*/ } final UscHeader header = frame.getHeader(); final int sessionId = header.getSessionId(); final UscChannelImpl connection = ctx.channel().attr(UscPlugin.CHANNEL).get(); final UscSessionImpl session = connection.getSession(sessionId); final LocalChannel serverChannel = session.getServerChannel(); if (frame instanceof UscError) { // propagate exception to the client channel UscSessionException ex = new UscSessionException(((UscError) frame).getErrorCode()); serverChannel.writeAndFlush(ex); plugin.sendEvent(new UscSessionErrorEvent(session, ex)); } else if (frame instanceof UscData) { if (serverChannel != null) { LOG.trace("write session " + sessionId + " to " + serverChannel + ": " + frame.getPayload()); ByteBuf payload = frame.getPayload(); plugin.sendEvent(new UscSessionTransactionEvent(session, payload.readableBytes(), 0)); serverChannel.writeAndFlush(payload); } else { UscChannelException ex = new UscChannelException( "write unknown session " + sessionId + "; discard"); plugin.sendEvent(new UscChannelErrorEvent(session.getChannel(), ex)); throw ex; } } else if (frame instanceof UscControl) { UscControl controlMsg = (UscControl) frame; Channel clientChannel = serverChannel.attr(UscPlugin.CLIENT_CHANNEL).get(); if (controlMsg.getControlCode() == UscControl.ControlCode.TERMINATION_REQUEST) { LOG.trace("UscDemultiplexer received control message TERMINATION_REQUEST"); clientChannel.close(); // send back TERMINATION_RESPONSE UscControl data = new UscControl(session.getPort(), session.getSessionId(), 2); ctx.channel().writeAndFlush(data); } else if (controlMsg.getControlCode() == UscControl.ControlCode.TERMINATION_RESPONSE) { LOG.trace("UscDemultiplexer received control message TERMINATION_RESPONSE"); if (clientChannel != null) { SettableFuture<Boolean> status = plugin.getCloseFuture().get(clientChannel); status.set(true); LOG.trace("UscDemultiplexer: termination status is " + status.get()); } } } else { LOG.trace("UscDemultiplexer.channelRead: unexpected UscFrame object " + frame); UscChannelException ex = new UscChannelException("unexpected UscFrame object " + frame); plugin.sendEvent(new UscChannelErrorEvent(session.getChannel(), ex)); throw ex; } }
From source file:zipkin.collector.scribe.ScribeSpanConsumer.java
@Override public ListenableFuture<ResultCode> log(List<LogEntry> messages) { metrics.incrementMessages();//from ww w. j av a 2 s. c om List<byte[]> thrifts; try { thrifts = messages.stream().filter(m -> m.category.equals(category)) .map(m -> m.message.getBytes(StandardCharsets.ISO_8859_1)) .map(b -> Base64.getMimeDecoder().decode(b)) // finagle-zipkin uses mime encoding .collect(Collectors.toList()); } catch (RuntimeException e) { metrics.incrementMessagesDropped(); return Futures.immediateFailedFuture(e); } SettableFuture<ResultCode> result = SettableFuture.create(); collector.acceptSpans(thrifts, Codec.THRIFT, new Callback<Void>() { @Override public void onSuccess(@Nullable Void value) { result.set(ResultCode.OK); } @Override public void onError(Throwable t) { result.setException(t); } }); return result; }
From source file:org.pentaho.di.core.KettleEnvironment.java
public static void init(List<PluginTypeInterface> pluginClasses, boolean simpleJndi) throws KettleException { SettableFuture<Boolean> ready; if (initialized.compareAndSet(null, ready = SettableFuture.create())) { try {// w w w.j a v a 2 s . co m // This creates .kettle and kettle.properties... // if (!KettleClientEnvironment.isInitialized()) { KettleClientEnvironment.init(); } // Configure Simple JNDI when we run in stand-alone mode (spoon, pan, kitchen, carte, ... NOT on the platform // if (simpleJndi) { JndiUtil.initJNDI(); } // Register the native types and the plugins for the various plugin types... // pluginClasses.forEach(PluginRegistry::addPluginType); PluginRegistry.init(); // Also read the list of variables. // KettleVariablesList.init(); // Initialize the Lifecycle Listeners // initLifecycleListeners(); ready.set(true); } catch (Throwable t) { ready.setException(t); // If it's a KettleException, throw it, otherwise wrap it in a KettleException throw ((t instanceof KettleException) ? (KettleException) t : new KettleException(t)); } } else { // A different thread is initializing ready = initialized.get(); // Block until environment is initialized try { ready.get(); } catch (Throwable t) { // If it's a KettleException, throw it, otherwise wrap it in a KettleException throw ((t instanceof KettleException) ? (KettleException) t : new KettleException(t)); } } }
From source file:org.opendaylight.aaa.cert.impl.AaaCertRpcServiceImpl.java
@Override public Future<RpcResult<Void>> setNodeCertifcate(SetNodeCertifcateInput input) { final SettableFuture<RpcResult<Void>> futureResult = SettableFuture.create(); if (aaaCertProvider.addCertificateTrustStore(input.getNodeAlias(), input.getNodeCert())) { futureResult.set(RpcResultBuilder.<Void>success().build()); } else {// w w w . jav a 2 s . co m futureResult.set(RpcResultBuilder.<Void>failed().build()); LOG.info("Error while adding the Node certificate"); } return futureResult; }
From source file:net.sourceforge.fullsync.ui.GuiController.java
private Future<Boolean> showQuestion(String question) { SettableFuture<Boolean> answer = SettableFuture.create(); if (display == Display.findDisplay(Thread.currentThread())) { answer.set(doShowQuestion(question)); } else {//from ww w . j a va 2s. c om display.asyncExec(() -> answer.set(doShowQuestion(question))); } return answer; }
From source file:org.opendaylight.aaa.cert.impl.AaaCertRpcServiceImpl.java
@Override public Future<RpcResult<Void>> setODLCertifcate(SetODLCertifcateInput input) { final SettableFuture<RpcResult<Void>> futureResult = SettableFuture.create(); if (aaaCertProvider.addCertificateODLKeyStore(input.getOdlCertAlias(), input.getOdlCert())) { futureResult.set(RpcResultBuilder.<Void>success().build()); } else {//w ww . j a va2s. co m futureResult.set(RpcResultBuilder.<Void>failed().build()); LOG.info("Error while adding ODL certificate"); } return futureResult; }