当前位置: 首页>>代码示例>>Java>>正文


Java ResponseCallback类代码示例

本文整理汇总了Java中com.alibaba.dubbo.remoting.exchange.ResponseCallback的典型用法代码示例。如果您正苦于以下问题:Java ResponseCallback类的具体用法?Java ResponseCallback怎么用?Java ResponseCallback使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


ResponseCallback类属于com.alibaba.dubbo.remoting.exchange包,在下文中一共展示了ResponseCallback类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: setCallback

import com.alibaba.dubbo.remoting.exchange.ResponseCallback; //导入依赖的package包/类
public void setCallback(ResponseCallback callback) {
    if (isDone()) {
        invokeCallback(callback);
    } else {
        boolean isdone = false;
        lock.lock();
        try{
            if (!isDone()) {
                this.callback = callback;
            } else {
                isdone = true;
            }
        }finally {
            lock.unlock();
        }
        if (isdone){
            invokeCallback(callback);
        }
    }
}
 
开发者ID:dachengxi,项目名称:EatDubbo,代码行数:21,代码来源:DefaultFuture.java

示例2: request

import com.alibaba.dubbo.remoting.exchange.ResponseCallback; //导入依赖的package包/类
public ResponseFuture request(Object msg, int timeout) throws RemotingException {
    this.invoked = msg;
    return new ResponseFuture() {
        public Object get() throws RemotingException {
            return received;
        }
        public Object get(int timeoutInMillis) throws RemotingException {
            return received;
        }
        public boolean isDone() {
            return true;
        }
        public void setCallback(ResponseCallback callback) {
        }
    };
}
 
开发者ID:dachengxi,项目名称:EatDubbo,代码行数:17,代码来源:MockedClient.java

示例3: request

import com.alibaba.dubbo.remoting.exchange.ResponseCallback; //导入依赖的package包/类
public ResponseFuture request(Object msg, int timeout) throws RemotingException {
    this.invoked = msg;
    return new ResponseFuture() {
        public Object get() throws RemotingException {
            return received;
        }

        public Object get(int timeoutInMillis) throws RemotingException {
            return received;
        }

        public boolean isDone() {
            return true;
        }

        public void setCallback(ResponseCallback callback) {
        }
    };
}
 
开发者ID:l1325169021,项目名称:github-test,代码行数:20,代码来源:MockedClient.java

示例4: setCallback

import com.alibaba.dubbo.remoting.exchange.ResponseCallback; //导入依赖的package包/类
public void setCallback(ResponseCallback callback) {
    if (isDone()) {
        invokeCallback(callback);
    } else {
        boolean isdone = false;
        lock.lock();
        try {
            if (!isDone()) {
                this.callback = callback;
            } else {
                isdone = true;
            }
        } finally {
            lock.unlock();
        }
        if (isdone) {
            invokeCallback(callback);
        }
    }
}
 
开发者ID:hufeng,项目名称:dubbo2.js,代码行数:21,代码来源:DefaultFuture.java

示例5: asyncCallback

import com.alibaba.dubbo.remoting.exchange.ResponseCallback; //导入依赖的package包/类
private void asyncCallback(final Invoker<?> invoker, final Invocation invocation) {
    Future<?> f = RpcContext.getContext().getFuture();
    if (f instanceof FutureAdapter) {
        ResponseFuture future = ((FutureAdapter<?>)f).getFuture();
        future.setCallback(new ResponseCallback() {
            public void done(Object rpcResult) {
                if (rpcResult == null){
                    logger.error(new IllegalStateException("invalid result value : null, expected "+Result.class.getName()));
                    return;
                }
                ///must be rpcResult
                if (! (rpcResult instanceof Result)){
                    logger.error(new IllegalStateException("invalid result type :" + rpcResult.getClass() + ", expected "+Result.class.getName()));
                    return;
                }
                Result result = (Result) rpcResult;
                if (result.hasException()) {
                    fireThrowCallback(invoker, invocation, result.getException());
                } else {
                    fireReturnCallback(invoker, invocation, result.getValue());
                }
            }
            public void caught(Throwable exception) {
                fireThrowCallback(invoker, invocation, exception);
            }
        });
    }
}
 
开发者ID:dachengxi,项目名称:EatDubbo,代码行数:29,代码来源:FutureFilter.java


注:本文中的com.alibaba.dubbo.remoting.exchange.ResponseCallback类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。