/** * Builds and starts the service queue. * * @return the service queue */ public ServiceQueue buildAndStart() { return build().startServiceQueue(); }
default ServiceQueue startAll() { startServiceQueue(); startCallBackHandler(); return this; }
public LocalStatsCollectorAsync buildAndStart() { getServiceQueue().startServiceQueue().startCallBackHandler(); return build(); } }
@Override public EventManager systemEventManager() { final EventManager eventManager = eventManagerThreadLocal.get(); if (eventManager != null) { return eventManager; } EventManager proxy; if (systemEventManager.get() == null) { final ServiceQueue serviceQueue = serviceBuilder().setInvokeDynamic(false) .setServiceObject( EventManagerBuilder.eventManagerBuilder().setName("QBIT_SYSTEM").build()).build().startServiceQueue(); systemEventManager.set(serviceQueue); proxy = serviceQueue.createProxyWithAutoFlush(EventManager.class, 100, TimeUnit.MILLISECONDS); } else { proxy = systemEventManager.get().createProxyWithAutoFlush(EventManager.class, 100, TimeUnit.MILLISECONDS); } eventManagerThreadLocal.set(proxy); return proxy; }
@Test public void testUsingProxyWithAutoFlush() { /* Create a service that lives behind a ServiceQueue. */ ServiceQueue serviceQueue = serviceBuilder() .setServiceAddress("/todo-service") .setServiceObject(new TodoService()) .build(); TodoServiceClient todoServiceClient = serviceQueue.createProxyWithAutoFlush(TodoServiceClient.class, 25, TimeUnit.MILLISECONDS); serviceQueue.start(); serviceQueue.startServiceQueue().startCallBackHandler(); todoServiceClient.add(new TodoItem("foo", "foo", null)); AtomicReference<List<TodoItem>> items = new AtomicReference<>(); todoServiceClient.list(todoItems -> items.set(todoItems)); Sys.sleep(2000); ok = items.get() != null || die(); ok = items.get().size() > 0 || die(); ok = items.get().get(0).getDescription().equals("foo") || die(); }
@Before public void setup() { serviceQueue = new ServiceBuilder().setServiceObject( new MockService()).setInvokeDynamic(false).build().startServiceQueue(); proxy = serviceQueue.createProxy(MockServiceInterface.class); ok = true; }
/** * Builds and starts the service queue. * * @return the service queue */ public ServiceQueue buildAndStart() { return build().startServiceQueue(); }
/** * Builds and starts the service queue. * * @return the service queue */ public ServiceQueue buildAndStart() { return build().startServiceQueue(); }
default ServiceQueue startAll() { startServiceQueue(); startCallBackHandler(); return this; }
default ServiceQueue startAll() { startServiceQueue(); startCallBackHandler(); return this; }
.setServiceObject(new TodoService()).build().startServiceQueue();
@Test public void testCallbackWithObjectNameAndMethodName() { ServiceQueue serviceQueue = ServiceBuilder.serviceBuilder().setRootAddress("/services") .setServiceAddress("/todo-service") .setServiceObject(new TodoService()).build().startServiceQueue(); //QBit.factory().createService("/services", "/todo-service", //new TodoService(), null, null).startServiceQueue(); SendQueue<MethodCall<Object>> requests = serviceQueue.requests(); TodoItem todoItem = new TodoItem("call mom", "give mom a call", new Date()); MethodCall<Object> addMethodCall = QBit.factory().createMethodCallByNames("add", "/todo-service", "call1:localhost", todoItem, null); requests.send(addMethodCall); MethodCall<Object> listMethodCall = QBit.factory().createMethodCallByNames("list", "/todo-service", "call2:localhost", todoItem, null); requests.sendAndFlush(listMethodCall); Sys.sleep(100); ReceiveQueue<Response<Object>> responses = serviceQueue.responses(); Response<Object> response = responses.take(); Object body = response.body(); if (body instanceof List) { @SuppressWarnings("unchecked") List<TodoItem> items = (List) body; ok = items.size() > 0 || die("items should have one todo in it"); TodoItem todoItem1 = items.get(0); ok = todoItem.equals(todoItem1) || die("TodoItem ", todoItem, todoItem1); } else { die("Response was not a list", body); } }
@Override public EventManager systemEventManager() { final EventManager eventManager = eventManagerThreadLocal.get(); if (eventManager != null) { return eventManager; } EventManager proxy; if (systemEventManager.get() == null) { final ServiceQueue serviceQueue = serviceBuilder().setInvokeDynamic(false) .setServiceObject( EventManagerBuilder.eventManagerBuilder().setName("QBIT_SYSTEM").build()).build().startServiceQueue(); systemEventManager.set(serviceQueue); proxy = serviceQueue.createProxyWithAutoFlush(EventManager.class, 100, TimeUnit.MILLISECONDS); } else { proxy = systemEventManager.get().createProxyWithAutoFlush(EventManager.class, 100, TimeUnit.MILLISECONDS); } eventManagerThreadLocal.set(proxy); return proxy; }
@Override public EventManager systemEventManager() { final EventManager eventManager = eventManagerThreadLocal.get(); if (eventManager != null) { return eventManager; } EventManager proxy; if (systemEventManager.get() == null) { final ServiceQueue serviceQueue = serviceBuilder().setInvokeDynamic(false) .setServiceObject( EventManagerBuilder.eventManagerBuilder().setName("QBIT_SYSTEM").build()).build().startServiceQueue(); systemEventManager.set(serviceQueue); proxy = serviceQueue.createProxyWithAutoFlush(EventManager.class, 100, TimeUnit.MILLISECONDS); } else { proxy = systemEventManager.get().createProxyWithAutoFlush(EventManager.class, 100, TimeUnit.MILLISECONDS); } eventManagerThreadLocal.set(proxy); return proxy; }
.setInvokeDynamic(false).build().startServiceQueue(); .setInvokeDynamic(false).build().startServiceQueue();
@Before public void setup() { systemManager = new QBitSystemManager(); eventManager = EventManagerBuilder .eventManagerBuilder().setName("Event Bus") .build(); serviceBuilder = ServiceBuilder.serviceBuilder() .setSystemManager(systemManager); eventServiceQueue = serviceBuilder.setServiceObject(eventManager).build().startServiceQueue(); serviceBuilder = ServiceBuilder.serviceBuilder() .setSystemManager(systemManager).setEventManager(eventManager); serviceB = new ServiceB(); serviceBuilder.setServiceObject(serviceB).buildAndStartAll(); serviceBuilder = ServiceBuilder.serviceBuilder() .setSystemManager(systemManager).setEventManager(eventManager); serviceA = new ServiceA(eventServiceQueue.createProxyWithAutoFlush(EventManager.class, Duration.SECOND), QBit.factory().eventBusProxyCreator()); final ServiceQueue serviceAQueue = serviceBuilder .setServiceObject(serviceA).buildAndStartAll(); serviceAQueueProxy = serviceAQueue.createProxy(ServiceAInterface.class); }