public LocalKeyValueStoreServiceBuilder<T> setWriteBehindAndReadFallback( final KeyValueStoreService<T> keyValueStoreServiceInternal) { final KeyValueStoreService<T> keyValueStoreService = keyValueStoreServiceInternal instanceof ClientProxy ? keyValueStoreServiceInternal : getServiceBuilder().setServiceObject(keyValueStoreServiceInternal).buildAndStartAll() .createProxy(KeyValueStoreService.class); setWriteBehind(keyValueStoreService); setReadFallback(keyValueStoreService); return this; }
public LocalKeyValueStoreServiceBuilder<T> setReadFallback(final KeyValueStoreService<T> keyValueStoreServiceInternal) { final KeyValueStoreService<T> keyValueStoreService = keyValueStoreServiceInternal instanceof ClientProxy ? keyValueStoreServiceInternal : getServiceBuilder().setServiceObject(keyValueStoreServiceInternal).buildAndStartAll() .createProxy(KeyValueStoreService.class); setFallbackReader(new FallbackReader<T>() { @Override public void get(Callback<Optional<T>> callback, String key) { keyValueStoreService.get(callback, key); } @Override public void hasKey(Callback<Boolean> callback, String key) { keyValueStoreService.hasKey(callback, key); } @Override public void flushRequests() { ServiceProxyUtils.flushServiceProxy(keyValueStoreService); } }); return this; }
@Test //Works public void testWithServiceQueue() { final ServiceQueue serviceQueue = ServiceBuilder.serviceBuilder() .setServiceObject(new FeedServiceImpl()).buildAndStartAll(); final FeedService feedService = serviceQueue.createProxyWithAutoFlush(FeedService.class, Duration.ofMillis(100)); final List<FeedMeta> feedMetas = feedService.listFeeds() .blockingGet(Duration.ofSeconds(30)); assertNotNull(feedMetas); assertEquals(1, feedMetas.size()); assertEquals("Hello", feedMetas.get(0).name); serviceQueue.stop(); }
: getServiceBuilder().setServiceObject(keyValueStoreServiceInternal).buildAndStartAll() .createProxy(KeyValueStoreService.class);
final ServiceQueue serviceQueue = serviceQueueBuilder.buildAndStartAll();
private void buildQueue() { final StatsDReplicator statsDReplicator = createStatsDReplicator(); final ServiceBuilder serviceBuilder = this.getServiceBuilder(); serviceBuilder.getRequestQueueBuilder().setUnableToEnqueueHandler( new UnableToEnqueueHandler() { public boolean unableToEnqueue(BlockingQueue<Object> queue, String queueName, Object item) { final Logger logger = LoggerFactory.getLogger(StatsDReplicator.class); logger.error("Unable to send method call to StatsDReplicator " + queueName); queue.clear(); return false; } } ); serviceBuilder.getResponseQueueBuilder().setUnableToEnqueueHandler(new UnableToEnqueueHandler() { public boolean unableToEnqueue(BlockingQueue<Object> queue, String queueName, Object item) { final Logger logger = LoggerFactory.getLogger(StatsDReplicator.class); logger.error("Unable to send response from method call from StatsDReplicator " + queueName); queue.clear(); return false; } }); serviceBuilder.setServiceObject(statsDReplicator); this.serviceQueue = serviceBuilder.buildAndStartAll(); }
@Before public void setUp() throws Exception { serviceQueue = ServiceBuilder.serviceBuilder().setServiceObject(new FooService()).buildAndStartAll(); foo = serviceQueue.createProxy(Foo.class); }
public void testWithServiceQueue() throws Exception { final ServiceBuilder serviceBuilder = ServiceBuilder.serviceBuilder(); serviceBuilder.setCallbackManager(callbackManager); final ServiceQueue serviceQueue = serviceBuilder.setServiceObject(new MyService()).buildAndStartAll(); final IMyService myService = serviceQueue.createProxy(IMyService.class); final CountDownLatch countDownLatch = new CountDownLatch(1); callbackBuilder.setCallback(Object.class, o -> { result.set(o); countDownLatch.countDown(); }); myService.method1(callbackBuilder.build()); ServiceProxyUtils.flushServiceProxy(myService); Sys.sleep(500); assertEquals(1, callbackManagerWithTimeout.outstandingCallbacksCount()); continueMethod.countDown(); countDownLatch.await(20, TimeUnit.SECONDS); assertEquals(0, callbackManagerWithTimeout.outstandingCallbacksCount()); assertEquals("METHOD 1 RETURN", result.get()); }
@Before public void before() { latch = new CountDownLatch(1); returnValue = new AtomicReference<>(); errorRef = new AtomicReference<>(); impl = new ServiceDiscoveryImpl(); empURI = URI.create("marathon://default/employeeService?env=staging"); ServiceBuilder serviceBuilder = ServiceBuilder.serviceBuilder(); serviceBuilder.getRequestQueueBuilder().setArrayBlockingQueue().setBatchSize(10); serviceQueue = serviceBuilder.setServiceObject(impl).buildAndStartAll(); ServiceBundleBuilder serviceBundleBuilder = ServiceBundleBuilder.serviceBundleBuilder(); serviceBundleBuilder.getRequestQueueBuilder().setArrayBlockingQueue().setBatchSize(10); serviceBundle = serviceBundleBuilder.build(); serviceBundle.addServiceObject("myservice", impl); serviceQueue2 = ServiceBuilder.serviceBuilder().setInvokeDynamic(false).setServiceObject(impl) .buildAndStartAll(); serviceDiscoveryServiceBundle = serviceBundle.createLocalProxy(ServiceDiscovery.class, "myservice"); serviceBundle.start(); serviceDiscovery = serviceQueue.createProxyWithAutoFlush(ServiceDiscovery.class, Duration.TEN_MILLIS); serviceDiscoveryStrongTyped = serviceQueue2.createProxyWithAutoFlush(ServiceDiscovery.class, Duration.TEN_MILLIS); }
@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); }
public static void main(String... args) throws Exception { final ServiceQueue serviceQueue = ServiceBuilder.serviceBuilder().setServiceObject(randomNumberService()).buildAndStartAll(); final RandomNumberServiceAsync randomNumberServiceAsync = serviceQueue.createProxyWithAutoFlush(RandomNumberServiceAsync.class, 5, TimeUnit.SECONDS); for (int a = 0; a < 100; a++) { final AsyncFutureCallback<Integer> callback = CallbackBuilder.newCallbackBuilder() .withCallback(l -> System.out.println("" + l)) .withErrorHandler(RandomNumberExample::handleError) .<Integer>build(); randomNumberServiceAsync.getRandom(callback, 100, a); } ServiceProxyUtils.flushServiceProxy(randomNumberServiceAsync); Sys.sleep(1000); serviceQueue.stop(); QBit.factory().shutdownSystemEventBus(); }
@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); }
@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); }
public LocalKeyValueStoreServiceBuilder<T> setWriteBehindAndReadFallback( final KeyValueStoreService<T> keyValueStoreServiceInternal) { final KeyValueStoreService<T> keyValueStoreService = keyValueStoreServiceInternal instanceof ClientProxy ? keyValueStoreServiceInternal : getServiceBuilder().setServiceObject(keyValueStoreServiceInternal).buildAndStartAll() .createProxy(KeyValueStoreService.class); setWriteBehind(keyValueStoreService); setReadFallback(keyValueStoreService); return this; }
public LocalKeyValueStoreServiceBuilder<T> setWriteBehindAndReadFallback( final KeyValueStoreService<T> keyValueStoreServiceInternal) { final KeyValueStoreService<T> keyValueStoreService = keyValueStoreServiceInternal instanceof ClientProxy ? keyValueStoreServiceInternal : getServiceBuilder().setServiceObject(keyValueStoreServiceInternal).buildAndStartAll() .createProxy(KeyValueStoreService.class); setWriteBehind(keyValueStoreService); setReadFallback(keyValueStoreService); return this; }
public LocalKeyValueStoreServiceBuilder<T> setReadFallback(final KeyValueStoreService<T> keyValueStoreServiceInternal) { final KeyValueStoreService<T> keyValueStoreService = keyValueStoreServiceInternal instanceof ClientProxy ? keyValueStoreServiceInternal : getServiceBuilder().setServiceObject(keyValueStoreServiceInternal).buildAndStartAll() .createProxy(KeyValueStoreService.class); setFallbackReader(new FallbackReader<T>() { @Override public void get(Callback<Optional<T>> callback, String key) { keyValueStoreService.get(callback, key); } @Override public void hasKey(Callback<Boolean> callback, String key) { keyValueStoreService.hasKey(callback, key); } @Override public void flushRequests() { ServiceProxyUtils.flushServiceProxy(keyValueStoreService); } }); return this; }
public LocalKeyValueStoreServiceBuilder<T> setReadFallback(final KeyValueStoreService<T> keyValueStoreServiceInternal) { final KeyValueStoreService<T> keyValueStoreService = keyValueStoreServiceInternal instanceof ClientProxy ? keyValueStoreServiceInternal : getServiceBuilder().setServiceObject(keyValueStoreServiceInternal).buildAndStartAll() .createProxy(KeyValueStoreService.class); setFallbackReader(new FallbackReader<T>() { @Override public void get(Callback<Optional<T>> callback, String key) { keyValueStoreService.get(callback, key); } @Override public void hasKey(Callback<Boolean> callback, String key) { keyValueStoreService.hasKey(callback, key); } @Override public void flushRequests() { ServiceProxyUtils.flushServiceProxy(keyValueStoreService); } }); return this; }
: getServiceBuilder().setServiceObject(keyValueStoreServiceInternal).buildAndStartAll() .createProxy(KeyValueStoreService.class);
: getServiceBuilder().setServiceObject(keyValueStoreServiceInternal).buildAndStartAll() .createProxy(KeyValueStoreService.class);