| /*
|
| * Copyright 1999-2011 Alibaba Group.
|
| *
|
| * Licensed under the Apache License, Version 2.0 (the "License");
|
| * you may not use this file except in compliance with the License.
|
| * You may obtain a copy of the License at
|
| *
|
| * http://www.apache.org/licenses/LICENSE-2.0
|
| *
|
| * Unless required by applicable law or agreed to in writing, software
|
| * distributed under the License is distributed on an "AS IS" BASIS,
|
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
| * See the License for the specific language governing permissions and
|
| * limitations under the License.
|
| */
|
| package com.alibaba.dubbo.registry.dubbo; |
| |
| import java.net.InetSocketAddress;
|
| import java.util.Map;
|
|
|
| import com.alibaba.dubbo.common.URL;
|
| import com.alibaba.dubbo.remoting.Channel;
|
| import com.alibaba.dubbo.remoting.ChannelHandler;
|
| import com.alibaba.dubbo.remoting.Codec;
|
| import com.alibaba.dubbo.remoting.RemotingException;
|
| import com.alibaba.dubbo.remoting.exchange.ExchangeClient;
|
| import com.alibaba.dubbo.remoting.exchange.ExchangeHandler;
|
| import com.alibaba.dubbo.remoting.exchange.ResponseCallback;
|
| import com.alibaba.dubbo.remoting.exchange.ResponseFuture;
|
| import com.alibaba.dubbo.remoting.exchange.support.Replier;
|
| |
| /** |
| * MockedClient |
| * |
| * @author william.liangf |
| */ |
| public class MockedClient implements ExchangeClient { |
| |
| //private String host; |
| |
| //private int port; |
| |
| private boolean connected; |
| |
| private Object received; |
| |
| private Object sent; |
| |
| private Object invoked; |
| |
| private Replier<?> handler; |
| |
| private InetSocketAddress address; |
| |
| private boolean closed = false; |
| |
| //private ChannelListener listener; |
| |
| public MockedClient(String host, int port, boolean connected) { |
| this(host, port, connected, null); |
| } |
| |
| public MockedClient(String host, int port, boolean connected, Object received) { |
| this.address = new InetSocketAddress(host, port); |
| this.connected = connected; |
| this.received = received; |
| } |
| |
| public void open() { |
| } |
| |
| public void close() { |
| this.closed = true; |
| } |
| |
| public void send(Object msg) throws RemotingException { |
| this.sent = msg; |
| } |
| |
| public ResponseFuture request(Object msg) throws RemotingException { |
| return request(msg, 0); |
| } |
| |
| 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) { |
| } |
| }; |
| } |
| |
| public void registerHandler(Replier<?> handler) { |
| this.handler = handler; |
| } |
| |
| public void unregisterHandler(Replier<?> handler) { |
| //this.handler = null; |
| } |
| |
| public void addChannelListener(ChannelHandler listener) { |
| //this.listener = listener; |
| } |
| |
| public void removeChannelListener(ChannelHandler listener) { |
| //this.listener = null; |
| } |
| |
| public boolean isConnected() { |
| return connected; |
| } |
| |
| public Object getSent() { |
| return sent; |
| } |
| |
| public Replier<?> getHandler() { |
| return handler; |
| } |
| |
| public Object getInvoked() { |
| return invoked; |
| } |
| |
| public InetSocketAddress getRemoteAddress() { |
| return address; |
| } |
| |
| public String getName() { |
| return "mocked"; |
| } |
| |
| public InetSocketAddress getLocalAddress() { |
| return null; |
| } |
| |
| public void setTimeout(int timeout) { |
| } |
| |
| public int getTimeout() { |
| return 0; |
| } |
| |
| public void close(int timeout) {
|
| close(); |
| } |
| |
| public boolean isOpen() { |
| return closed; |
| } |
| |
| public Codec getCodec() { |
| return null; |
| } |
| |
| public void setCodec(Codec codec) { |
| } |
| |
| public void setHost(String host) { |
| } |
| |
| public String getHost() { |
| return null; |
| } |
| |
| public void setPort(int port) { |
| } |
| |
| public int getPort() { |
| return 0; |
| } |
| |
| public void setThreadCount(int threadCount) { |
| } |
| |
| public int getThreadCount() { |
| return 0; |
| } |
| |
| public URL getUrl() { |
| return null; |
| } |
| |
| public Replier<?> getReceiver() { |
| return null; |
| } |
| |
| public ChannelHandler getChannelHandler() { |
| return null; |
| } |
| |
| public void reset(Map<String, String> parameters) { |
| } |
| |
| public Channel getChannel() { |
| return this; |
| } |
| |
| public ExchangeHandler getExchangeHandler() { |
| return null; |
| } |
| |
| public void reconnect() throws RemotingException { |
| } |
| |
| public Object getAttribute(String key) { |
| return null; |
| } |
| |
| public void setAttribute(String key, Object value) { |
| |
| } |
| |
| public boolean hasAttribute(String key) { |
| return false; |
| } |
| |
| public boolean isClosed() { |
| return closed; |
| } |
| |
| public void removeAttribute(String key) { |
| |
| } |
| /** |
| * @return the received |
| */ |
| public Object getReceived() { |
| return received; |
| } |
| |
| /** |
| * @param received the received to set |
| */ |
| public void setReceived(Object received) { |
| this.received = received; |
| } |
| |
| /** |
| * @param connected the connected to set |
| */ |
| public void setConnected(boolean connected) { |
| this.connected = connected; |
| } |
| |
| public void send(Object message, boolean sent) throws RemotingException { |
| } |
| |
| public void reset(URL url) { |
| }
|
|
|
| @Deprecated
|
| public void reset(com.alibaba.dubbo.common.Parameters parameters) {
|
| } |
| |
| } |