+ String broker = ":9092";
+ String topic = "test";
+ String clientId = "DEV";
+
+ switch (args.length)
+ {
+ case 3:
+ clientId = args[2];
+ case 2:
+ topic = args[1];
+ case 1:
+ broker = args[0];
+ }
+
+ SimpleProducer producer = new SimpleProducer(broker, topic, clientId);
+
+ Runtime.getRuntime().addShutdownHook(new Thread(() ->
+ {
+ producer.running = false;
+ while (!producer.done)
+ {
+ log.info("Waiting for producer...");
+ try
+ {
+ Thread.sleep(1000);
+ }
+ catch (InterruptedException e) {}
+ }
+ log.info("Shutdown completed.");
+ }));
+
+ log.info(
+ "Running simple producer: broker={}, topic={}, client-id={}",
+ broker,
+ topic,
+ clientId);