THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
Code Block | ||
---|---|---|
| ||
public interface TopologyDescription { // Other interfaces and variables within TopologyDescription are not shown here. interface Source extends Node { Set<String> topics(); Set<String> topicSet() Pattern topicPattern(); } interface Sink extends Node { String topic(); // Add abstract method to return the TopicNameExtractor class in situations where dynamic routing is used. // Otherwise, return null. TopicNameExtractor topicNameExtractor(); } } |
...
Code Block | ||
---|---|---|
| ||
public final static class Source extends AbstractNode implements TopologyDescription.Source { // Other methods and variables are not shown here @Override public String topics() { } @Override public Set<String> topicNamestopicSet() { return topics; } @Override public Pattern topicPattern() { return topicPattern; } } public final static class Sink extends AbstractNode implements TopologyDescription.Sink { // Other methods and variables are not shown here // Output the topic name if dynamic routing is not used. Otherwise, output the toString value of the TopicNameExtractor. @Override public TopicNameExtractor topicNameExtractor() { if (topicNameExtractor instanceof StaticTopicNameExtractor) { return null; } else { return topicNameExtractor; } } } |
...