Source:
public void init(final DaemonContext context) throws DaemonInitException, Exception { requireNonNull(context); final String[] args = context.getArguments(); final DaemonParameters params = new DaemonParameters(); try { new JCommander(params).parse(args); } catch(final ParameterException e) { throw new DaemonInitException("Unable to parse the command line arguments.", e); } final Path configFile = params.config != null ? Paths.get(params.config) : DEFAULT_CONFIGURATION_PATH; log.info("Loading the following configuration file: " + configFile); final QueryManagerConfig config; try(InputStream stream = Files.newInputStream(configFile)) { config = QueryManagerConfigUnmarshaller.unmarshall(stream); } catch(final JAXBException | SAXException e) { throw new DaemonInitException("Unable to marshall the configuration XML file: " + configFile, e); } final QueryChanngeLogDiscoveryPeriod periodConfig = config.getPerformanceTunning().getQueryChanngeLogDiscoveryPeriod(); final long period = periodConfig.getValue().longValue(); final TimeUnit units = TimeUnit.valueOf( periodConfig.getUnits().toString() ); log.info("Query Change Log Polling Period: " + period + " " + units); final Scheduler scheduler = Scheduler.newFixedRateSchedule(0, period, units); final Kafka kafka = config.getQueryChangeLogSource().getKafka(); log.info("Kafka Source: " + kafka.getHostname() + ":" + kafka.getPort()); final QueryChangeLogSource source = new KafkaQueryChangeLogSource(kafka.getHostname(), kafka.getPort(), scheduler); final String zookeeperServers = config.getQueryExecutor().getLocalKafkaStreams().getZookeepers(); final KafkaStreamsFactory streamsFactory = new SingleThreadKafkaStreamsFactory(kafka.getHostname() + ":" + kafka.getPort()); final QueryExecutor queryExecutor = new LocalQueryExecutor(new CreateKafkaTopic(zookeeperServers), streamsFactory); manager = new QueryManager(queryExecutor, source, period, units); }

Target:
public void init(final DaemonContext context) throws DaemonInitException, Exception { requireNonNull(context); final String[] args = context.getArguments(); final DaemonParameters params = new DaemonParameters(); try { new JCommander(params).parse(args); } catch(final ParameterException e) { throw new DaemonInitException("Unable to parse the command line arguments.", e); } final Path configFile = params.config != null ? Paths.get(params.config) : DEFAULT_CONFIGURATION_PATH; log.info("Loading the following configuration file: " + configFile); final QueryManagerConfig config; try(final InputStream stream = Files.newInputStream(configFile)) { config = QueryManagerConfigUnmarshaller.unmarshall(stream); } catch(final JAXBException | SAXException e) { throw new DaemonInitException("Unable to marshall the configuration XML file: " + configFile, e); } final QueryChanngeLogDiscoveryPeriod periodConfig = config.getPerformanceTunning().getQueryChanngeLogDiscoveryPeriod(); final long period = periodConfig.getValue().longValue(); final TimeUnit units = TimeUnit.valueOf( periodConfig.getUnits().toString() ); log.info("Query Change Log Polling Period: " + period + " " + units); final Scheduler scheduler = Scheduler.newFixedRateSchedule(0, period, units); final Kafka kafka = config.getQueryChangeLogSource().getKafka(); log.info("Kafka Source: " + kafka.getHostname() + ":" + kafka.getPort()); final QueryChangeLogSource source = new KafkaQueryChangeLogSource(kafka.getHostname(), kafka.getPort(), scheduler); final String zookeeperServers = config.getQueryExecutor().getLocalKafkaStreams().getZookeepers(); final KafkaStreamsFactory streamsFactory = new SingleThreadKafkaStreamsFactory(kafka.getHostname() + ":" + kafka.getPort()); final QueryExecutor queryExecutor = new LocalQueryExecutor(new CreateKafkaTopic(zookeeperServers), streamsFactory); manager = new QueryManager(queryExecutor, source, period, units); }