com.jd.blockchain.utils.concurrent.SyncFutureAdaptor Maven / Gradle / Ivy
The newest version!
package com.jd.blockchain.utils.concurrent;
//package my.utils.concurrent;
//
///**
// * 用于适配同步操作的 AsyncFuture 实现;
// *
// * @author haiq
// *
// * @param
// */
//public class SyncFutureAdaptor implements AsyncFuture {
//
// private TSource source;
//
// private boolean success = false;
// private Throwable exception;
// private String errorCode;
//
// /**
// * 创建 SyncFutureAdaptor 实例;
// *
// * @param source
// * 操作对象;
// * @param exception
// * 操作完成后引发的异常;如果指定为 null 则表示操作成功返回而没有引发异常;
// * @param errorCode 错误码
// */
// private SyncFutureAdaptor(TSource source, Throwable exception, String errorCode) {
// this.source = source;
// this.success = exception == null;
// this.exception = exception;
// this.errorCode = errorCode;
// }
//
// /**
// * 创建表示成功完成操作的 AsyncFuture 实例;
// *
// * @param source
// * 执行操作的对象;
// * @return AsyncFuture 实例;
// */
// public static AsyncFuture createSuccessFuture(T source) {
// return new SyncFutureAdaptor(source, null, null);
// }
//
// /**
// * 创建表示操作引发异常返回的 AsyncFuture 实例;
// *
// * @param source
// * 执行操作的对象;
// * @param exception
// * 操作引发的异常;不允许为 null;
// * @return AsyncFuture 实例;
// */
// public static AsyncFuture createErrorFuture(T source, Throwable exception) {
// if (exception == null) {
// throw new IllegalArgumentException("Exception is null!");
// }
// return new SyncFutureAdaptor(source, exception, null);
// }
//
// /**
// * 创建表示操作引发异常返回的 AsyncFuture 实例;
// *
// * @param source
// * 执行操作的对象;
// * @param errorCode
// * 操作引发的错误代码;
// * @return AsyncFuture 实例;
// */
// public static AsyncFuture createErrorFuture(T source, String errorCode) {
// if (errorCode == null || errorCode.length() == 0) {
// throw new IllegalArgumentException("ErrorCode is empty!");
// }
// return new SyncFutureAdaptor(source, null, errorCode);
// }
//
// @Override
// public TSource get() {
// return source;
// }
//
// @Override
// public boolean isDone() {
// return true;
// }
//
// @Override
// public boolean isSuccess() {
// return success;
// }
//
// @Override
// public Throwable getException() {
// return exception;
// }
//
// // @Override
// // public void addListener(AsyncFutureListener>
// // listener) {
// //
// // }
//
// @Override
// public void await() throws InterruptedException {
// return;
// }
//
// @Override
// public boolean await(long timeoutMillis) throws InterruptedException {
// return true;
// }
//
// @Override
// public void awaitUninterruptibly() {
// return;
// }
//
// @Override
// public boolean awaitUninterruptibly(long timeoutMillis) {
// return true;
// }
//
// @Override
// public void addListener(AsyncFutureListener listener) {
// // 同步操作已经完成;
// listener.complete(this);
// }
//
// @Override
// public String getErrorCode() {
// return this.errorCode;
// }
//
//}