use of org.apache.dubbo.rpc.Protocol in project dubbo by alibaba.
the class EchoServiceTest method testEcho.
@Test
public void testEcho() {
DemoService server = new DemoServiceImpl();
ProxyFactory proxyFactory = ExtensionLoader.getExtensionLoader(ProxyFactory.class).getAdaptiveExtension();
Protocol protocol = ExtensionLoader.getExtensionLoader(Protocol.class).getAdaptiveExtension();
URL url = URL.valueOf("dubbo://127.0.0.1:5342/" + DemoService.class.getName() + "?version=1.0.0");
Exporter<DemoService> exporter = protocol.export(proxyFactory.getInvoker(server, DemoService.class, url));
Invoker<DemoService> invoker = protocol.refer(DemoService.class, url);
EchoService client = (EchoService) proxyFactory.getProxy(invoker);
Object result = client.$echo("haha");
Assertions.assertEquals("haha", result);
org.apache.dubbo.rpc.service.EchoService newClient = (org.apache.dubbo.rpc.service.EchoService) proxyFactory.getProxy(invoker);
Object res = newClient.$echo("hehe");
Assertions.assertEquals("hehe", res);
invoker.destroy();
exporter.unexport();
}
use of org.apache.dubbo.rpc.Protocol in project dubbo by alibaba.
the class XmlRpcProtocolTest method testXmlRpcProtocol.
@Test
public void testXmlRpcProtocol() {
XmlRpcServiceImpl server = new XmlRpcServiceImpl();
Assertions.assertFalse(server.isCalled());
ProxyFactory proxyFactory = ExtensionLoader.getExtensionLoader(ProxyFactory.class).getAdaptiveExtension();
Protocol protocol = ExtensionLoader.getExtensionLoader(Protocol.class).getAdaptiveExtension();
int port = NetUtils.getAvailablePort();
URL url = URL.valueOf("xmlrpc://127.0.0.1:" + port + "/" + XmlRpcService.class.getName() + "?version=1.0.0");
Exporter<XmlRpcService> exporter = protocol.export(proxyFactory.getInvoker(server, XmlRpcService.class, url));
Invoker<XmlRpcService> invoker = protocol.refer(XmlRpcService.class, url);
XmlRpcService client = proxyFactory.getProxy(invoker);
String result = client.sayHello("haha");
Assertions.assertTrue(server.isCalled());
Assertions.assertEquals("Hello, haha", result);
invoker.destroy();
exporter.unexport();
}
Aggregations