List of usage examples for com.google.common.util.concurrent FutureCallback onSuccess
void onSuccess(@Nullable V result);
From source file:com.vmware.photon.controller.deployer.helpers.xenon.MockHelper.java
@SuppressWarnings("unchecked") public static Answer<FutureCallback<FabricNode>> mockRegisterFabricNode(String fabricNodeId) { return (invocation) -> { FutureCallback<FabricNode> callback = ((FutureCallback<FabricNode>) invocation.getArguments()[1]); FabricNode fabricNode = new FabricNode(); fabricNode.setId(fabricNodeId);//www. ja v a2 s. c om callback.onSuccess(fabricNode); return null; }; }
From source file:com.vmware.photon.controller.deployer.helpers.xenon.MockHelper.java
@SuppressWarnings("unchecked") public static Answer<FutureCallback<TransportNode>> mockCreateTransportNode(String transportNodeId) { return (invocation) -> { FutureCallback<TransportNode> callback = ((FutureCallback<TransportNode>) invocation.getArguments()[1]); TransportNode transportNode = new TransportNode(); transportNode.setId(transportNodeId); callback.onSuccess(transportNode); return null; };// w w w . j av a 2s.co m }
From source file:com.vmware.photon.controller.deployer.helpers.xenon.MockHelper.java
@SuppressWarnings("unchecked") public static Answer<FutureCallback<FabricNodeState>> mockGetFabricNodeState( com.vmware.photon.controller.nsxclient.datatypes.FabricNodeState state) { return (invocation) -> { FutureCallback<FabricNodeState> callback = ((FutureCallback<FabricNodeState>) invocation .getArguments()[1]);/*from w w w . j av a 2 s . co m*/ FabricNodeState fabricNodeState = new FabricNodeState(); fabricNodeState.setState(state); callback.onSuccess(fabricNodeState); return null; }; }
From source file:com.vmware.photon.controller.deployer.helpers.xenon.MockHelper.java
@SuppressWarnings("unchecked") public static Answer<FutureCallback<TransportNodeState>> mockGetTransportNodeState( com.vmware.photon.controller.nsxclient.datatypes.TransportNodeState state) { return (invocation) -> { FutureCallback<TransportNodeState> callback = ((FutureCallback<TransportNodeState>) invocation .getArguments()[1]);// w w w . j a v a2s . c om TransportNodeState transportNodeState = new TransportNodeState(); transportNodeState.setState(state); callback.onSuccess(transportNodeState); return null; }; }
From source file:com.vmware.photon.controller.common.xenon.TaskUtils.java
public static <T extends ServiceDocument> void checkProgress(final Service service, final String serviceLink, final Predicate<T> predicate, final Class<T> type, final int taskPollDelay, final FutureCallback<T> callback) { try {//ww w .j a v a 2 s . c o m Thread.sleep(Math.abs(new Random().nextLong()) % (taskPollDelay + 1) + 1); } catch (InterruptedException e) { e.printStackTrace(); } Operation.CompletionHandler completionHandler = new Operation.CompletionHandler() { @Override public void handle(Operation operation, Throwable throwable) { if (null != throwable) { ServiceUtils.logSevere(service, "error when contacting [" + serviceLink + "] " + throwable.getMessage()); ServiceUtils.logSevere(service, throwable); callback.onFailure(throwable); return; } final T state = operation.getBody(type); if (predicate.apply(state)) { callback.onSuccess(state); return; } Runnable runnable = new Runnable() { @Override public void run() { try { checkProgress(service, serviceLink, predicate, type, taskPollDelay, callback); } catch (Throwable t) { ServiceUtils.logSevere(service, "error when contacting [" + state.documentSelfLink + "]" + t.getMessage()); ServiceUtils.logSevere(service, t); callback.onFailure(t); } } }; service.getHost().schedule(runnable, taskPollDelay, TimeUnit.MILLISECONDS); } }; Operation get = Operation.createGet(UriUtils.buildUri(service.getHost(), serviceLink)) .setCompletion(completionHandler); service.sendRequest(get); }
From source file:org.opencms.ui.components.extensions.CmsWindowExtension.java
/** * Creates a new instance and binds it to the given UI.<p> * * @param ui the UI/* w w w . j a v a 2s .c o m*/ */ public CmsWindowExtension(UI ui) { super(ui); registerRpc(new I_CmsWindowServerRpc() { private static final long serialVersionUID = 1L; @SuppressWarnings("synthetic-access") public void handleOpenResult(String id, boolean ok) { FutureCallback<Boolean> callback = m_callbackMap.get(id); if (callback != null) { callback.onSuccess(Boolean.valueOf(ok)); } m_callbackMap.remove(id); } }, I_CmsWindowServerRpc.class); }
From source file:org.solovyev.tasks.ListenersAwareFutureTask.java
private ListenersAwareFutureTask(@Nonnull ListenableFutureTask<T> futureTask) { this.futureTask = futureTask; Futures.addCallback(futureTask, new FutureCallback<T>() { @Override/* ww w . j a v a2s.c om*/ public void onSuccess(T result) { synchronized (listeners) { executed = true; } for (FutureCallback<T> listener : getListenersCopy()) { listener.onSuccess(result); } synchronized (listeners) { listeners.clear(); } } @Override public void onFailure(Throwable t) { synchronized (listeners) { executed = true; } for (FutureCallback<T> listener : getListenersCopy()) { listener.onFailure(t); } synchronized (listeners) { listeners.clear(); } } }); }
From source file:com.vmware.photon.controller.api.frontend.clients.api.TasksLocalApi.java
@Override public void getTaskAsync(String taskId, FutureCallback<Task> responseCallback) throws IOException { executorService.submit(() -> {//from w w w. ja v a 2 s. com try { Task task = getTask(taskId); responseCallback.onSuccess(task); } catch (Exception e) { responseCallback.onFailure(e); } }); }
From source file:org.opendaylight.openflowjava.protocol.impl.core.connection.StackedOutboundQueueNoBarrier.java
@Override public void commitEntry(final Long xid, final OfHeader message, final FutureCallback<OfHeader> callback) { final OutboundQueueEntry entry = getEntry(xid); if (message instanceof FlowModInput) { callback.onSuccess(null); entry.commit(message, null);/*ww w.j av a 2 s . c o m*/ } else { entry.commit(message, callback); } LOG.trace("Queue {} committed XID {}", this, xid); manager.ensureFlushing(); }
From source file:com.vmware.photon.controller.api.frontend.clients.api.ClusterLocalApi.java
@Override public void getVmsInClusterAsync(String clusterId, FutureCallback<ResourceList<Vm>> responseCallback) throws IOException { executorService.submit(() -> {// w w w.j ava2 s. c o m try { ResourceList<Vm> vmResourceList = getVmsInCluster(clusterId); responseCallback.onSuccess(vmResourceList); } catch (Exception e) { responseCallback.onFailure(e); } }); }