@Override public void add(String indexName, ItemSource source) { this.batchEmitter.add(batchOperations.createBatchItem(indexName, source)); }
@Override public void stop() { batchEmitter.stop(); state = State.STOPPED; }
@Override public void start() { if (indexTemplate != null) { objectFactory.addOperation(() -> objectFactory.execute(indexTemplate)); } batchEmitter.start(); state = State.STARTED; }
@Override public void start() { if (indexTemplate != null) { objectFactory.addOperation(() -> objectFactory.execute(indexTemplate)); } batchEmitter.start(); state = State.STARTED; }
/** * Transforms given items to client-specific model and adds them to provided {@link BatchEmitter} * * @param log batch item source */ @Override public void add(String indexName, String log) { this.batchEmitter.add(batchOperations.createBatchItem(indexName, log)); }
@Test public void lifecycleStartStartsBatchEmitter() { // given BatchEmitter batchEmitter = mock(BatchEmitter.class); BatchEmitterServiceProvider batchEmitterFactory = new TestBatchEmitterFactory() { @Override public BatchEmitter createInstance(int batchSize, int deliveryInterval, ClientObjectFactory clientObjectFactory, FailoverPolicy failoverPolicy) { return batchEmitter; } }; TestAsyncBatchDelivery batchDelivery = spy(new TestAsyncBatchDelivery( TEST_BATCH_SIZE, TEST_DELIVERY_INTERVAL, createTestObjectFactoryBuilder().build(), new NoopFailoverPolicy(), null) { @Override protected BatchEmitterServiceProvider createBatchEmitterServiceProvider() { return batchEmitterFactory; } }); // when batchDelivery.start(); // then verify(batchEmitter).start(); }
@Override public void stop() { batchEmitter.stop(); state = State.STOPPED; }
/** * Transforms given items to client-specific model and adds them to provided {@link BatchEmitter} * * @param log batch item source */ @Override public void add(String indexName, String log) { this.batchEmitter.add(batchOperations.createBatchItem(indexName, log)); }
@Override public void add(String indexName, ItemSource source) { this.batchEmitter.add(batchOperations.createBatchItem(indexName, source)); }
@Test public void deliveryAddsBatchItemToBatchEmitter() { // given TestHttpObjectFactory objectFactory = createTestObjectFactoryBuilder().build(); TestBatchEmitterFactory batchEmitterFactory = spy(new TestBatchEmitterFactory()); BatchEmitter emitter = batchEmitterFactory.createInstance(TEST_BATCH_SIZE, TEST_DELIVERY_INTERVAL, objectFactory, new NoopFailoverPolicy()); TestAsyncBatchDelivery delivery = spy(new TestAsyncBatchDelivery( TEST_BATCH_SIZE, TEST_DELIVERY_INTERVAL, objectFactory, new NoopFailoverPolicy(), null) { @Override protected BatchEmitterServiceProvider createBatchEmitterServiceProvider() { return batchEmitterFactory; } }); String testMessage = "test message"; // when delivery.add("testIndexName", testMessage); // then ArgumentCaptor<BulkEmitterTest.TestBatchItem> captor = ArgumentCaptor.forClass(BulkEmitterTest.TestBatchItem.class); verify(emitter, times(1)).add(captor.capture()); assertEquals(testMessage, captor.getValue().getData(null)); }