diff --git a/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/support/ProtocolUtils.java b/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/support/ProtocolUtils.java index e8c3eba4d6..a7ac9b65e7 100644 --- a/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/support/ProtocolUtils.java +++ b/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/support/ProtocolUtils.java @@ -15,36 +15,47 @@ */ package com.alibaba.dubbo.rpc.protocol.dubbo.support; +import java.util.Collection; + import com.alibaba.dubbo.common.ExtensionLoader; import com.alibaba.dubbo.common.URL; +import com.alibaba.dubbo.remoting.exchange.ExchangeServer; import com.alibaba.dubbo.rpc.Exporter; import com.alibaba.dubbo.rpc.Protocol; import com.alibaba.dubbo.rpc.ProxyFactory; +import com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol; /** * TODO Comment of ProtocolUtils + * * @author william.liangf - * */ public class ProtocolUtils { - private static Protocol protocol = ExtensionLoader.getExtensionLoader(Protocol.class).getAdaptiveExtension(); - private static ProxyFactory proxy = ExtensionLoader.getExtensionLoader(ProxyFactory.class).getAdaptiveExtension(); - + private static Protocol protocol = ExtensionLoader.getExtensionLoader(Protocol.class).getAdaptiveExtension(); + private static ProxyFactory proxy = ExtensionLoader.getExtensionLoader(ProxyFactory.class).getAdaptiveExtension(); + public static T refer(Class type, String url) { return refer(type, URL.valueOf(url)); } - + public static T refer(Class type, URL url) { return proxy.getProxy(protocol.refer(type, url)); } - + public static Exporter export(T instance, Class type, String url) { return export(instance, type, URL.valueOf(url)); } - + public static Exporter export(T instance, Class type, URL url) { return protocol.export(proxy.getInvoker(instance, type, url)); } -} \ No newline at end of file + public static void closeAll() { + DubboProtocol.getDubboProtocol().destroy(); + Collection servers = DubboProtocol.getDubboProtocol().getServers(); + for (ExchangeServer server : servers) { + server.close(); + } + } +} diff --git a/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/telnet/ChangeTelnetHandlerTest.java b/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/telnet/ChangeTelnetHandlerTest.java index cf1a0c29ff..f4185a72fb 100644 --- a/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/telnet/ChangeTelnetHandlerTest.java +++ b/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/telnet/ChangeTelnetHandlerTest.java @@ -26,11 +26,11 @@ import org.junit.Test; import com.alibaba.dubbo.common.URL; import com.alibaba.dubbo.remoting.Channel; import com.alibaba.dubbo.remoting.RemotingException; -import com.alibaba.dubbo.remoting.exchange.ExchangeServer; import com.alibaba.dubbo.remoting.telnet.TelnetHandler; import com.alibaba.dubbo.rpc.Invoker; import com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol; import com.alibaba.dubbo.rpc.protocol.dubbo.support.DemoService; +import com.alibaba.dubbo.rpc.protocol.dubbo.support.ProtocolUtils; /** * ChangeTelnetHandlerTest.java @@ -69,11 +69,8 @@ public class ChangeTelnetHandlerTest { @After public void after() { - for (ExchangeServer server : DubboProtocol.getDubboProtocol().getServers()) { - server.close(); - } + ProtocolUtils.closeAll(); EasyMock.reset(mockChannel, mockInvoker); - DubboProtocol.getDubboProtocol().destroy(); } @Test diff --git a/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/telnet/InvokerTelnetHandlerTest.java b/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/telnet/InvokerTelnetHandlerTest.java index 68485d861a..e8d41137c0 100644 --- a/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/telnet/InvokerTelnetHandlerTest.java +++ b/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/telnet/InvokerTelnetHandlerTest.java @@ -18,19 +18,24 @@ package com.alibaba.dubbo.rpc.protocol.dubbo.telnet; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; +import java.util.Collection; + import org.easymock.EasyMock; +import org.junit.After; import org.junit.Test; import com.alibaba.dubbo.common.URL; import com.alibaba.dubbo.common.utils.NetUtils; import com.alibaba.dubbo.remoting.Channel; import com.alibaba.dubbo.remoting.RemotingException; +import com.alibaba.dubbo.remoting.exchange.ExchangeServer; import com.alibaba.dubbo.remoting.telnet.TelnetHandler; import com.alibaba.dubbo.rpc.Invocation; import com.alibaba.dubbo.rpc.Invoker; import com.alibaba.dubbo.rpc.RpcResult; import com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol; import com.alibaba.dubbo.rpc.protocol.dubbo.support.DemoService; +import com.alibaba.dubbo.rpc.protocol.dubbo.support.ProtocolUtils; /** * CountTelnetHandlerTest.java @@ -43,6 +48,11 @@ public class InvokerTelnetHandlerTest { private Channel mockChannel; private Invoker mockInvoker; + @After + public void after() { + ProtocolUtils.closeAll(); + } + @SuppressWarnings("unchecked") @Test public void testInvokeDefaultSService() throws RemotingException { diff --git a/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/telnet/ListTelnetHandlerTest.java b/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/telnet/ListTelnetHandlerTest.java index 79deaceaf9..fa56a05873 100644 --- a/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/telnet/ListTelnetHandlerTest.java +++ b/dubbo-rpc-default/src/test/java/com/alibaba/dubbo/rpc/protocol/dubbo/telnet/ListTelnetHandlerTest.java @@ -16,11 +16,11 @@ package com.alibaba.dubbo.rpc.protocol.dubbo.telnet; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; import java.lang.reflect.Method; import org.easymock.EasyMock; +import org.junit.After; import org.junit.BeforeClass; import org.junit.Test; @@ -35,6 +35,7 @@ import com.alibaba.dubbo.rpc.Invoker; import com.alibaba.dubbo.rpc.RpcResult; import com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol; import com.alibaba.dubbo.rpc.protocol.dubbo.support.DemoService; +import com.alibaba.dubbo.rpc.protocol.dubbo.support.ProtocolUtils; /** * CountTelnetHandlerTest.java @@ -67,6 +68,11 @@ public class ListTelnetHandlerTest { detailMethods = buf.toString(); methodsName = buf2.toString(); } + + @After + public void after() { + ProtocolUtils.closeAll(); + } @SuppressWarnings("unchecked") @Test @@ -100,6 +106,7 @@ public class ListTelnetHandlerTest { EasyMock.reset(mockChannel, mockInvoker); } + @SuppressWarnings("unchecked") @Test public void testList() throws RemotingException { mockInvoker = EasyMock.createMock(Invoker.class); @@ -115,6 +122,7 @@ public class ListTelnetHandlerTest { EasyMock.reset(mockChannel); } + @SuppressWarnings("unchecked") @Test public void testListDetail() throws RemotingException { mockInvoker = EasyMock.createMock(Invoker.class); @@ -131,6 +139,7 @@ public class ListTelnetHandlerTest { EasyMock.reset(mockChannel); } + @SuppressWarnings("unchecked") @Test public void testListDefault() throws RemotingException { mockInvoker = EasyMock.createMock(Invoker.class);