Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Won't Fix
-
1.0.2
-
None
-
None
Description
While trying to work with Flux and the storm-kafka-client package we noticed that they are incompatible, unfortunately, as the needed KafkaSpoutConfig is based on the builder pattern. Unless some hacky method is used it will not be possible to configure a KafkaSpout and instantiate/use it with a Flux-based topology.
Flux could be enhanced to support the builder pattern with the following yaml configuration as a proposal:
builder: - id: "spoutConfigBuilder" className: "org.apache.storm.kafka.spout.KafkaSpoutConfig.Builder" builderMethod: "build" constructorArgs: - [...] properties: - [...] configMethods: - [...] components: - id: "spoutConfig" className: "org.apache.storm.kafka.spout.KafkaSpoutConfig" builderRef: "spoutConfigBuilder" spouts: - id: "kafkaSpout" className: "org.apache.storm.kafka.spout.KafkaSpout" constructorArgs: - ref: "spoutConfig"
Unfortunately, for now, we are busy with other tasks so we cannot work on a patch for Flux. But we thought it's better to report / suggest this enhancement nevertheless.