@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; }
@Before public void setup() { systemManager = new QBitSystemManager(); eventManager = EventManagerBuilder .eventManagerBuilder().setName("Event Bus") .build(); serviceBundleBuilder = ServiceBundleBuilder.serviceBundleBuilder() .setEventManager(eventManager) .setSystemManager(systemManager); final ServiceBundle serviceBundle = serviceBundleBuilder.buildAndStart(); serviceBundle.addServiceObject("eventManager", eventManager); serviceB = new ServiceB(); serviceBundle.addServiceObject("serviceB", serviceB); ServiceA serviceA = new ServiceA(serviceBundle.createLocalProxy(EventManager.class, "eventManager")); serviceBundle.addServiceObject("serviceA", serviceA); serviceAQueueProxy = serviceBundle.createLocalProxy(ServiceAInterface.class, "serviceA"); serviceBundle.startReturnHandlerProcessor(); }
@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; }
@Before public void setup() { systemManager = new QBitSystemManager(); eventManager = EventManagerBuilder .eventManagerBuilder().setName("Event Bus") .build(); eventServiceQueue = ServiceBuilder.serviceBuilder().setServiceObject(eventManager).buildAndStartAll(); serviceB = new ServiceB(); serviceA = new ServiceA(eventServiceQueue.createProxy(EventManager.class)); serviceBuilder = ServiceBuilder.serviceBuilder() .setServiceObject(serviceA) .setJoinEventManager(false) .setEventManager(eventManager).setSystemManager(systemManager); final ServiceQueue serviceAQueue = serviceBuilder.buildAndStartAll(); ServiceBuilder.serviceBuilder() .setServiceObject(serviceB) .setJoinEventManager(false) .setEventManager(eventManager) .setSystemManager(systemManager) .buildAndStartAll(); serviceAQueueProxy = serviceAQueue.createProxy(ServiceAInterface.class); }
@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); }