docs: protected Properties createBrokerProperties(String zooKeeperConnect, int kafkaServerPort, File logDir) {
          Properties props = new Properties();
  
          props.put(KafkaConfig.BrokerIdProp(), "0");
          props.put(KafkaConfig.ZkConnectProp(), zooKeeperConnect);
          props.put(KafkaConfig.ZkConnectionTimeoutMsProp(), "10000");
          props.put(KafkaConfig.ReplicaSocketTimeoutMsProp(), "1500");
          props.put(KafkaConfig.ControllerSocketTimeoutMsProp(), "1500");
          props.put(KafkaConfig.ControlledShutdownEnableProp(), "false");
          props.put(KafkaConfig.DeleteTopicEnableProp(), "true");
          props.put(KafkaConfig.LogDeleteDelayMsProp(), "1000");
          props.put(KafkaConfig.ControlledShutdownRetryBackoffMsProp(), "100");
          props.put(KafkaConfig.LogCleanerDedupeBufferSizeProp(), "2097152");
          props.put(KafkaConfig.LogMessageTimestampDifferenceMaxMsProp(), Long.MAX_VALUE);
          props.put(KafkaConfig.OffsetsTopicReplicationFactorProp(), "1");
          props.put(KafkaConfig.OffsetsTopicPartitionsProp(), "5");
          props.put(KafkaConfig.GroupInitialRebalanceDelayMsProp(), "0");
          props.put(KafkaConfig.LogDirProp(), logDir.getAbsolutePath());
  
          props.put(KafkaConfig.ListenersProp(), SecurityProtocol.PLAINTEXT.name + "://localhost:" + kafkaServerPort);
  
          props.forEach((key, value) -> log.debug(String.format("Using default Kafka broker property %s='%s'", key ,value)));
  
          return props;
      }