org.apache.accumulo.core.client.ConditionalWriter.Status

Here are the examples of the java api class org.apache.accumulo.core.client.ConditionalWriter.Status taken from open source projects.

1. TransactionImpl#postLockPrimary()

Project: incubator-fluo
File: TransactionImpl.java
private void postLockPrimary(final CommitData cd, final ConditionalMutation pcm, Result result) throws Exception {
    final Status mutationStatus = result.getStatus();
    if (mutationStatus == Status.ACCEPTED) {
        lockOtherColumns(cd);
    } else {
        env.getSharedResources().getSyncCommitExecutor().execute(new SynchronousCommitTask(cd) {

            @Override
            protected void runCommitStep(CommitData cd) throws Exception {
                synchronousPostLockPrimary(cd, pcm, mutationStatus);
            }
        });
    }
}

2. TransactionImpl#handleUnkownStatsAfterPrimary()

Project: incubator-fluo
File: TransactionImpl.java
private void handleUnkownStatsAfterPrimary(CommitData cd, final long commitTs, final ConditionalMutation delLockMutation, Result result) throws Exception {
    final Status mutationStatus = result.getStatus();
    if (mutationStatus == Status.UNKNOWN) {
        // the code for handing this is synchronous and needs to be handled in another thread pool
        Runnable task = new SynchronousCommitTask(cd) {

            @Override
            protected void runCommitStep(CommitData cd) throws Exception {
                Status ms = mutationStatus;
                while (ms == Status.UNKNOWN) {
                    // TODO async
                    TxInfo txInfo = TxInfo.getTransactionInfo(env, cd.prow, cd.pcol, startTs);
                    switch(txInfo.status) {
                        case COMMITTED:
                            if (txInfo.commitTs != commitTs) {
                                throw new IllegalStateException(cd.prow + " " + cd.pcol + " " + txInfo.commitTs + "!=" + commitTs);
                            }
                            ms = Status.ACCEPTED;
                            break;
                        case LOCKED:
                            // TODO async
                            ms = cd.cw.write(delLockMutation).getStatus();
                            break;
                        default:
                            ms = Status.REJECTED;
                    }
                }
                postCommitPrimary(cd, commitTs, ms);
            }
        };
        env.getSharedResources().getSyncCommitExecutor().execute(task);
    } else {
        postCommitPrimary(cd, commitTs, mutationStatus);
    }
}