private void setupKafkaSpoutAndSubmitTopology() throws InterruptedException {
BrokerHosts brokerHosts = new ZkHosts("localhost:2000");
SpoutConfig kafkaConfig = new SpoutConfig(brokerHosts, TOPIC_NAME, "", "storm");
kafkaConfig.forceStartOffsetTime(readFromMode /* either earliest or current offset */);
kafkaConfig.scheme = new SchemeAsMultiScheme(new StringScheme());
TopologyBuilder builder = new TopologyBuilder();
builder.setSpout("words", new KafkaSpout(kafkaConfig), 1);
VerboseCollectorBolt bolt = new VerboseCollectorBolt(expectedNumMessages);