Example usage for com.google.common.util.concurrent FutureCallback onSuccess

List of usage examples for com.google.common.util.concurrent FutureCallback onSuccess

Introduction

In this page you can find the example usage for com.google.common.util.concurrent FutureCallback onSuccess.

Prototype

void onSuccess(@Nullable V result);

Source Link

Document

Invoked with the result of the Future computation when it is successful.

Usage

From source file:com.vmware.photon.controller.api.frontend.clients.api.ProjectLocalApi.java

@Override
public void createVmAsync(String projectId, VmCreateSpec vmCreateSpec, FutureCallback<Task> responseCallback)
        throws IOException {
    executorService.submit(() -> {/*ww w  .j  a va  2  s.c om*/
        try {
            Task task = createVm(projectId, vmCreateSpec);
            responseCallback.onSuccess(task);
        } catch (Exception e) {
            responseCallback.onFailure(e);
        }
    });
}

From source file:org.jenkinsci.plugins.workflow.cps.CpsThread.java

@CpsVmThreadOnly
void fireCompletionHandlers(Outcome o) {
    for (FutureCallback<Object> h : completionHandlers) {
        if (o.isSuccess())
            h.onSuccess(o.getNormal());
        else//from   w  ww .  j  av  a  2 s . co m
            h.onFailure(o.getAbnormal());
    }
}

From source file:com.github.zhongl.api.Ephemerons.java

public void remove(final Key key, final FutureCallback<Void> appliedCallback) {
    checkNotNull(key);//from   w  w w  .  ja  v a  2 s  .c o  m
    checkNotNull(appliedCallback);

    if (release(key, Nils.VOID)) {
        appliedCallback.onSuccess(Nils.VOID);
        return;
    }

    acquire();
    map.put(key, new Record(id.getAndIncrement(), key, (V) Nils.OBJECT, appliedCallback));
}

From source file:com.vmware.photon.controller.api.frontend.clients.api.VmLocalApi.java

@Override
public void deleteAsync(String id, FutureCallback<Task> responseCallback) throws IOException {
    executorService.submit(() -> {/*ww w.  j a v a 2 s  . c o m*/
        try {
            Task task = delete(id);
            responseCallback.onSuccess(task);
        } catch (Exception e) {
            responseCallback.onFailure(e);
        }
    });
}

From source file:com.vmware.photon.controller.clustermanager.statuschecks.MesosStatusChecker.java

@Override
public void checkNodeStatus(final String nodeAddress, final FutureCallback<Boolean> callback) {
    try {//  w w  w. j a v  a  2  s .c o m
        checkStatus(nodeAddress, new FutureCallback<String>() {
            @Override
            public void onSuccess(@Nullable String result) {
                callback.onSuccess(true);
            }

            @Override
            public void onFailure(Throwable t) {
                callback.onSuccess(false);
            }
        });
    } catch (Exception e) {
        logger.warn("Mesos call failed: ", e);
        callback.onSuccess(false);
    }
}

From source file:org.opendaylight.controller.cluster.datastore.ChainedCommitCohort.java

@Override
public void commit(final FutureCallback<UnsignedLong> callback) {
    delegate.commit(new FutureCallback<UnsignedLong>() {
        @Override//  w  ww . j a  va  2 s  . c  om
        public void onSuccess(final UnsignedLong result) {
            chain.clearTransaction(transaction);
            LOG.debug("Committed transaction {}", transaction);
            callback.onSuccess(result);
        }

        @Override
        public void onFailure(final Throwable t) {
            LOG.error("Transaction {} commit failed, cannot recover", transaction, t);
            callback.onFailure(t);
        }
    });
}

From source file:com.vmware.photon.controller.api.frontend.clients.api.VmLocalApi.java

@Override
public void getNetworksAsync(String vmId, FutureCallback<Task> responseCallback) throws IOException {
    executorService.submit(() -> {//from   ww  w. java 2 s .c  o  m
        try {
            Task task = getNetworks(vmId);
            responseCallback.onSuccess(task);
        } catch (Exception e) {
            responseCallback.onFailure(e);
        }
    });
}

From source file:com.vmware.photon.controller.api.frontend.clients.api.VmLocalApi.java

@Override
public void performStopOperationAsync(String vmId, FutureCallback<Task> responseCallback) throws IOException {
    executorService.submit(() -> {//from  ww  w.j  a v a2s . c om
        try {
            Task task = performStopOperation(vmId);
            responseCallback.onSuccess(task);
        } catch (Exception e) {
            responseCallback.onFailure(e);
        }
    });
}

From source file:com.vmware.photon.controller.api.frontend.clients.api.VmLocalApi.java

@Override
public void performStartOperationAsync(String vmId, FutureCallback<Task> responseCallback) throws IOException {
    executorService.submit(() -> {//w  w w  .ja v a 2  s  . c o  m
        try {
            Task task = performStartOperation(vmId);
            responseCallback.onSuccess(task);
        } catch (Exception e) {
            responseCallback.onFailure(e);
        }
    });
}

From source file:ch.icclab.netfloc.impl.Flowprogrammer.java

private void commitWriteTransaction(final WriteTransaction wt, final FutureCallback<Void> cb,
        final int totalTries, final int tries) {
    Futures.addCallback(wt.submit(), new FutureCallback<Void>() {
        public void onSuccess(Void result) {
            logger.info("Transaction success after {} tries for {}", totalTries - tries + 1, wt);
            cb.onSuccess(result);
        }/*from www.  java  2 s. c o  m*/

        public void onFailure(Throwable t) {
            if (t instanceof OptimisticLockFailedException) {
                if ((tries - 1) > 0) {
                    logger.warn("Transaction retry {} for {}", totalTries - tries + 1, wt);
                    commitWriteTransaction(wt, cb, totalTries, tries - 1);
                } else {
                    logger.error("Transaction out of retries: ", wt);
                    cb.onFailure(t);
                }
            } else {
                if (t instanceof DataValidationFailedException) {
                    logger.error("Transaction validation failed {}", t.getMessage());
                } else {
                    logger.error("Transaction failed {}", t.getMessage());
                }
                cb.onFailure(t);
            }
        }
    });
}