/** * Builds a proxy queue service to the impl. * * @return proxy queue service interface to impl. */ public ProxyService buildProxy() { return getServiceBuilder().setServiceObject(build()).buildAndStart().createProxyWithAutoFlush(ProxyService.class, Duration.HUNDRED_MILLIS); } }
@Before public void setup() { method = new AtomicReference<>(); event = new AtomicReference<>(); eventManager = EventManagerBuilder.eventManagerBuilder().build("localtest"); eventServiceQueue = ServiceBuilder.serviceBuilder().setServiceObject(eventManager).buildAndStartAll(); eventManager = eventServiceQueue.createProxy(EventManager.class); testServiceImpl = new TestServiceImpl(); ServiceBuilder serviceBuilder = ServiceBuilder.serviceBuilder().setEventManager(eventManager); serviceBuilder.getRequestQueueBuilder().setBatchSize(100); this.serviceQueue = serviceBuilder .setServiceObject(testServiceImpl).buildAndStart(); serviceBundle = serviceBundleBuilder().buildAndStart(); eventBusProxyCreator = QBit.factory().eventBusProxyCreator(); sender = eventBusProxyCreator.createProxy(eventManager, EventChannel1.class); serviceBundle.addServiceQueue(serviceName, this.serviceQueue); testService = serviceBundle.createLocalProxy(TestService.class, serviceName); }
final ServiceQueue serviceQueue = serviceBuilder.buildAndStart();
@Test public void testWithService() { final ServiceQueue serviceQueue = serviceBuilder().setServiceObject(new MockService()).buildAndStart(); serviceBundle.addServiceQueue("mockService", serviceQueue); proxy = serviceBundle.createLocalProxy(MockServiceInterface.class, "mockService"); serviceBundle.startReturnHandlerProcessor(); proxy.method1(); proxy.clientProxyFlush(); Sys.sleep(1000); ok = callCount == 1 || die(); }
/** * Builds a proxy queue service to the impl. * @return proxy queue service interface to impl. */ public ProxyService buildProxy() { return getServiceBuilder().setServiceObject(build()).buildAndStart().createProxyWithAutoFlush(ProxyService.class, Duration.HUNDRED_MILLIS); }
/** * Builds a proxy queue service to the impl. * * @return proxy queue service interface to impl. */ public ProxyService buildProxy() { return getServiceBuilder().setServiceObject(build()).buildAndStart().createProxyWithAutoFlush(ProxyService.class, Duration.HUNDRED_MILLIS); } }
@Test public void testWithServiceQueue() { final Factory factory = QBit.factory(); final ProtocolParser protocolParser = factory.createProtocolParser(); final ProtocolEncoder encoder = factory.createEncoder(); final Queue<Response<Object>> responseQueue = QueueBuilder.queueBuilder().setName("RESPONSE QUEUE TEST").build(); final ServiceBundle serviceBundle = new ServiceBundleBuilder() .setResponseQueue(responseQueue).setAddress("/services").build(); final JsonMapper mapper = factory.createJsonMapper(); httpServer = new HttpServerMock(); serviceServerImpl = new ServiceEndpointServerImpl(httpServer, encoder, protocolParser, serviceBundle, mapper, 1, 100, 30, 10, null, null, null, null, null, "localhost", 8080, 0, null, null, 50, 2, 2); callMeCounter = 0; responseCounter = 0; ServiceQueue serviceQueue = serviceBuilder() .setResponseQueue(responseQueue) .setServiceObject(new MyOtherService()).buildAndStart(); serviceServerImpl.addServiceQueue("/services/other/serviceCall", serviceQueue); serviceServerImpl.start(); final HttpRequest request = new HttpRequestBuilder().setUri("/services/other/servicecall") .setTextReceiver(new MockReceiver()).setBody("\"call\"").build(); httpServer.sendRequest(request); Sys.sleep(100); waitForTrigger(20, o -> responseCounter == 1 && callMeCounter == 1); ok |= responseCounter == 1 || die(); ok |= callMeCounter == 1 || die(); }
@Test public void testWebSocketCallWithServiceQueue() throws Exception { final Factory factory = QBit.factory(); final ProtocolParser protocolParser = factory.createProtocolParser(); final ProtocolEncoder encoder = factory.createEncoder(); final Queue<Response<Object>> responseQueue = QueueBuilder.queueBuilder().setName("RESPONSE QUEUE").build(); final ServiceBundle serviceBundle = new ServiceBundleBuilder() .setResponseQueue(responseQueue).setAddress("/services").build(); final JsonMapper mapper = factory.createJsonMapper(); httpServer = new HttpServerMock(); serviceServerImpl = new ServiceEndpointServerImpl(httpServer, encoder, protocolParser, serviceBundle, mapper, 1, 100, 30, 10, null, null, null, null, null, "localhost", 8080, 0, null, null, 50, 2, 2); callMeCounter = 0; responseCounter = 0; ServiceQueue serviceQueue = serviceBuilder() .setResponseQueue(responseQueue) .setServiceObject(new MyOtherService()).buildAndStart(); serviceServerImpl.addServiceQueue("other", serviceQueue); serviceServerImpl.start(); final MethodCall<Object> methodCall = new MethodCallBuilder().setObjectName("other").setName("method").setBody(null).build(); final String message = QBit.factory().createEncoder().encodeMethodCalls("", Lists.list(methodCall)); httpServer.sendWebSocketServerMessage(new WebSocketMessageBuilder().setRemoteAddress("/foo") .setMessage(message).setSender(new MockWebSocketSender()).build()); Sys.sleep(100); waitForTrigger(20, o -> responseCounter == 1); Sys.sleep(10); ok |= responseCounter == 1 || die(); ok |= failureCounter == 0 || die(); }
final ServiceQueue serviceQueue = serviceBuilder.buildAndStart();
final ServiceQueue serviceQueue = serviceBuilder.buildAndStart();