return innerLifecycle.addMaybeStartManagedInstance( new HttpPostEmitter( config.buildHttpEmitterConfig(u.toString()), client, jsonMapper
private static UriExtractor makeUriExtractor(ParametrizedUriEmitterConfig config) { final String baseUri = config.getRecipientBaseUrlPattern(); final ParametrizedUriExtractor parametrizedUriExtractor = new ParametrizedUriExtractor(baseUri); UriExtractor uriExtractor = parametrizedUriExtractor; if (ONLY_FEED_PARAM.equals(parametrizedUriExtractor.getParams())) { uriExtractor = new FeedUriExtractor(StringUtils.replace(baseUri, "{feed}", "%s")); } return uriExtractor; }
@Test public void testSettingEverything() { final Properties props = new Properties(); props.setProperty("org.apache.druid.java.util.emitter.httpEmitting.flushMillis", "1"); props.setProperty("org.apache.druid.java.util.emitter.httpEmitting.flushCount", "2"); props.setProperty("org.apache.druid.java.util.emitter.httpEmitting.basicAuthentication", "a:b"); props.setProperty("org.apache.druid.java.util.emitter.httpEmitting.batchingStrategy", "NEWLINES"); props.setProperty("org.apache.druid.java.util.emitter.httpEmitting.maxBatchSize", "4"); props.setProperty("org.apache.druid.java.util.emitter.httpEmitting.flushTimeOut", "1000"); final ObjectMapper objectMapper = new ObjectMapper(); final ParametrizedUriEmitterConfig paramConfig = objectMapper.convertValue(Emitters.makeCustomFactoryMap(props), ParametrizedUriEmitterConfig.class); final HttpEmitterConfig config = paramConfig.buildHttpEmitterConfig("http://example.com/topic"); Assert.assertEquals(1, config.getFlushMillis()); Assert.assertEquals(2, config.getFlushCount()); Assert.assertEquals("http://example.com/topic", config.getRecipientBaseUrl()); Assert.assertEquals("a:b", config.getBasicAuthentication()); Assert.assertEquals(BatchingStrategy.NEWLINES, config.getBatchingStrategy()); Assert.assertEquals(4, config.getMaxBatchSize()); Assert.assertEquals(1000, config.getFlushTimeOut()); } }
private static UriExtractor makeUriExtractor(ParametrizedUriEmitterConfig config) { final String baseUri = config.getRecipientBaseUrlPattern(); final ParametrizedUriExtractor parametrizedUriExtractor = new ParametrizedUriExtractor(baseUri); UriExtractor uriExtractor = parametrizedUriExtractor; if (ONLY_FEED_PARAM.equals(parametrizedUriExtractor.getParams())) { uriExtractor = new FeedUriExtractor(baseUri.replace("{feed}", "%s")); } return uriExtractor; }
@Test public void testDefaults() { final Properties props = new Properties(); final ObjectMapper objectMapper = new ObjectMapper(); final ParametrizedUriEmitterConfig paramConfig = objectMapper.convertValue(Emitters.makeCustomFactoryMap(props), ParametrizedUriEmitterConfig.class); final HttpEmitterConfig config = paramConfig.buildHttpEmitterConfig("http://example.com/topic"); Assert.assertEquals(60000, config.getFlushMillis()); Assert.assertEquals(500, config.getFlushCount()); Assert.assertEquals("http://example.com/topic", config.getRecipientBaseUrl()); Assert.assertEquals(null, config.getBasicAuthentication()); Assert.assertEquals(BatchingStrategy.ARRAY, config.getBatchingStrategy()); Pair<Integer, Integer> batchConfigPair = BaseHttpEmittingConfig.getDefaultBatchSizeAndLimit( Runtime.getRuntime().maxMemory() ); Assert.assertEquals(batchConfigPair.lhs.intValue(), config.getMaxBatchSize()); Assert.assertEquals(batchConfigPair.rhs.intValue(), config.getBatchQueueSizeLimit()); Assert.assertEquals(Long.MAX_VALUE, config.getFlushTimeOut()); }
return innerLifecycle.addMaybeStartManagedInstance( new HttpPostEmitter( config.buildHttpEmitterConfig(u.toString()), client, jsonMapper