List of usage examples for com.google.common.util.concurrent SettableFuture set
@Override public boolean set(@Nullable V value)
From source file:org.opendaylight.aaa.cert.impl.AaaCertProvider.java
@Override public Future<RpcResult<Void>> setODLCertifcate(final SetODLCertifcateInput input) { LOG.info("Certificate will be add to ODL keystore."); final SettableFuture<RpcResult<Void>> futureResult = SettableFuture.create(); //adding ca to the alias of signed certificate by Certificate Authority. //can not have 2 certifciate under the same alias. ctlKeyStore = new CtlKeystoreBuilder(ctlKeyStore).setAlias("ca" + ctlKeyStore.getAlias()).build(); if (odlKeyTool.addCertificate(ctlKeyStore.getName(), ctlKeyStore.getStorePassword(), input.getOdlCert(), ctlKeyStore.getAlias())) {/*from w w w .ja v a 2s . c om*/ futureResult.set(RpcResultBuilder.<Void>success().build()); } else { futureResult.set(RpcResultBuilder.<Void>failed().build()); } return futureResult; }
From source file:com.microsoft.services.sharepoint.SharePointClient.java
public ListenableFuture<JSONObject> getUserByID(String id) { final SettableFuture<JSONObject> result = SettableFuture.create(); ListenableFuture<JSONObject> request = executeRequestJson(mServerUrl + "_api/web/getuserbyid(" + id + ")", "GET"); Futures.addCallback(request, new FutureCallback<JSONObject>() { @Override//from w ww .j av a 2 s . c o m public void onFailure(Throwable t) { result.setException(t); } @Override public void onSuccess(JSONObject json) { result.set(json); } }); return result; }
From source file:de.uniluebeck.itm.coapserver.NotObservableOverviewWebservice.java
@Override public void processCoapRequest(SettableFuture responseFuture, CoapRequest request, InetSocketAddress remoteAddress) { Log.d(TAG, "Service " + getPath() + " received request: " + request); try {/* www . j a v a2 s . co m*/ if (request.getMessageCode() == MessageCode.Name.GET.getNumber()) { processGet(responseFuture, request); } else if (request.getMessageCode() == MessageCode.Name.PUT.getNumber()) { processPut(responseFuture, request); } else { responseFuture.set( new CoapResponse(request.getMessageTypeName(), MessageCode.Name.METHOD_NOT_ALLOWED_405)); } } catch (Exception e) { try { responseFuture.set( new CoapResponse(request.getMessageTypeName(), MessageCode.Name.INTERNAL_SERVER_ERROR_500)); } catch (Exception e1) { e1.printStackTrace(); } } }
From source file:com.navercorp.nbasearc.gcp.Gateway.java
ListenableFuture<?> init(SingleThreadEventLoopTrunk eventLoopTrunk, int reconnectInterval) { final SettableFuture<?> sf = SettableFuture.create(); for (int i = 0; i < concnt; i++) { cons[i] = PhysicalConnection.create(ip, port, eventLoopTrunk.roundrobinEventLoop(), this, reconnectInterval);//from w ww. j av a 2s . co m final ListenableFuture<?> conFuture = cons[i].connect(); conFuture.addListener(new Runnable() { @Override public void run() { try { conFuture.get(); sf.set(null); } catch (InterruptedException e) { log.error("Exception occured while connecting to {}", Gateway.this, e); } catch (ExecutionException e) { log.error("Exception occured while connecting to {}", Gateway.this, e); } } }, MoreExecutors.directExecutor()); } return sf; }
From source file:org.onosproject.store.flowext.impl.DefaultFlowRuleExtRouter.java
/** * Invoked on the completion of a storeBatch operation. * * @param event flow rule batch event/*ww w .j a v a 2s .co m*/ */ @Override public void batchOperationComplete(FlowRuleBatchEvent event) { // TODO Auto-generated method stub final Long batchId = event.subject().batchId(); SettableFuture<FlowExtCompletedOperation> future = pendingExtendFutures.getIfPresent(batchId); if (future != null) { FlowRuleBatchRequest request = event.subject(); CompletedBatchOperation result = event.result(); FlowExtCompletedOperation completed = new FlowExtCompletedOperation(request.batchId(), result.isSuccess(), result.failedItems()); future.set(completed); pendingExtendFutures.invalidate(batchId); } }
From source file:se.sics.gvod.manager.VoDManagerImpl.java
@Override public void download(VideoInfo videoInfo, SettableFuture<Result<Boolean>> opFuture) { LOG.info("{} download:{} request", logPrefix, videoInfo.getName()); FileStatus videoStatus = videos.get(videoInfo.getName()); if (videoStatus == FileStatus.DOWNLOADING || videoStatus == FileStatus.UPLOADING || videoStatus == FileStatus.PENDING) { opFuture.set(Result.ok(true)); return;//from w w w . j av a 2 s . c o m } videos.put(videoInfo.getName(), FileStatus.PENDING); DownloadVideo.Request req = new DownloadVideo.Request(videoInfo.getName(), OverlayIdFactory.fromInt(videoInfo.getOverlayId())); trigger(req, vodPort); pendingJobs.put(req.id, opFuture); }
From source file:io.crate.executor.transport.AlterTableOperation.java
private void applyMultiFutureCallback(final SettableFuture<?> result, List<ListenableFuture<Long>> futures) { MultiFutureCallback<Long> multiFutureCallback = new MultiFutureCallback<>(futures.size(), new FutureCallback<List<Long>>() { @Override/*ww w. ja v a 2 s . c o m*/ public void onSuccess(@Nullable List<Long> future) { result.set(null); } @Override public void onFailure(@Nonnull Throwable t) { result.setException(t); } }); for (ListenableFuture<Long> future : futures) { Futures.addCallback(future, multiFutureCallback); } }
From source file:se.sics.gvod.manager.VoDManagerImpl.java
@Override public void upload(VideoInfo videoInfo, SettableFuture<Result<Boolean>> opFuture) { LOG.info("{} upload:{} request", logPrefix, videoInfo.getName()); if (pendingUploads.remove(videoInfo.getName() == null)) { LOG.warn("{} video:{} not pending upload - cannot initiate upload", new Object[] { logPrefix, videoInfo.getName() }); opFuture.set(Result.internalError("video - bad state")); return;/* w w w . j ava2 s. c o m*/ } videos.put(videoInfo.getName(), FileStatus.PENDING); UploadVideo.Request req = new UploadVideo.Request(videoInfo.getName(), OverlayIdFactory.fromInt(videoInfo.getOverlayId())); trigger(req, vodPort); pendingJobs.put(req.id, opFuture); }
From source file:com.microsoft.windowsazure.mobileservices.table.sync.MobileServiceSyncTable.java
/** * Performs a query against the remote table and stores results. * * @param query an optional query to filter results * @param queryKey key to identify the query * @return A ListenableFuture that is done when results have been pulled. *//* w ww .j a v a 2 s . c o m*/ public ListenableFuture<Void> pull(Query query, String queryId) { ListenableFuture<Void> pull = this.mInternalTable.pull(query, queryId); final SettableFuture<Void> result = SettableFuture.create(); Futures.addCallback(pull, new FutureCallback<Void>() { @Override public void onFailure(Throwable throwable) { result.setException(throwable); } @Override public void onSuccess(Void value) { result.set(value); } }); return result; }
From source file:org.midonet.midolman.state.zkManagers.TunnelZoneZkManager.java
public Set<TunnelZone.HostConfig> getZoneMembershipsForHosts(UUID zoneId, Set<UUID> hosts) throws StateAccessException, SerializationException { Map<UUID, Future<byte[]>> futures = new HashMap<UUID, Future<byte[]>>(); for (UUID host : hosts) { String zoneMembershipPath = paths.getTunnelZoneMembershipPath(zoneId, host); final SettableFuture<byte[]> f = SettableFuture.create(); zk.asyncGet(zoneMembershipPath, new DirectoryCallback<byte[]>() { @Override/* w w w .j av a2 s. com*/ public void onTimeout() { f.setException(new TimeoutException()); } @Override public void onError(KeeperException e) { f.setException(e); } @Override public void onSuccess(byte[] data) { f.set(data); } }, null); futures.put(host, f); } Set<TunnelZone.HostConfig> configs = new HashSet<TunnelZone.HostConfig>(); for (Map.Entry<UUID, Future<byte[]>> entry : futures.entrySet()) { try { TunnelZone.HostConfig.Data config = serializer.deserialize(entry.getValue().get(), TunnelZone.HostConfig.Data.class); configs.add(new TunnelZone.HostConfig(entry.getKey(), config)); } catch (InterruptedException ie) { Thread.currentThread().interrupt(); throw new StateAccessException(ie); } catch (ExecutionException ee) { if (ee.getCause() instanceof KeeperException.NoNodeException) { // ignore, membership simply didn't exist } else { throw new StateAccessException(ee.getCause()); } } } return configs; }