Class InternalTopologyBuilder


  • public class InternalTopologyBuilder
    extends java.lang.Object
    • Constructor Detail

      • InternalTopologyBuilder

        public InternalTopologyBuilder()
    • Method Detail

      • setApplicationIdAndInternalStream

        public final InternalTopologyBuilder setApplicationIdAndInternalStream​(java.lang.String applicationId,
                                                                               java.lang.String internalStream,
                                                                               java.lang.String internalStreamCompacted)
      • setDefaultStream

        public final void setDefaultStream​(java.lang.String defaultStream)
      • addSource

        public final void addSource​(Topology.AutoOffsetReset offsetReset,
                                    java.lang.String name,
                                    TimestampExtractor timestampExtractor,
                                    org.apache.kafka.common.serialization.Deserializer keyDeserializer,
                                    org.apache.kafka.common.serialization.Deserializer valDeserializer,
                                    java.lang.String... topics)
      • addSource

        public final void addSource​(Topology.AutoOffsetReset offsetReset,
                                    java.lang.String name,
                                    TimestampExtractor timestampExtractor,
                                    org.apache.kafka.common.serialization.Deserializer keyDeserializer,
                                    org.apache.kafka.common.serialization.Deserializer valDeserializer,
                                    java.util.regex.Pattern topicPattern)
      • addSink

        public final <K,​V> void addSink​(java.lang.String name,
                                              java.lang.String topic,
                                              org.apache.kafka.common.serialization.Serializer<K> keySerializer,
                                              org.apache.kafka.common.serialization.Serializer<V> valSerializer,
                                              StreamPartitioner<? super K,​? super V> partitioner,
                                              java.lang.String... predecessorNames)
      • addSink

        public final <K,​V> void addSink​(java.lang.String name,
                                              TopicNameExtractor<K,​V> topicExtractor,
                                              org.apache.kafka.common.serialization.Serializer<K> keySerializer,
                                              org.apache.kafka.common.serialization.Serializer<V> valSerializer,
                                              StreamPartitioner<? super K,​? super V> partitioner,
                                              java.lang.String... predecessorNames)
      • addProcessor

        public final void addProcessor​(java.lang.String name,
                                       ProcessorSupplier supplier,
                                       java.lang.String... predecessorNames)
      • addStateStore

        public final void addStateStore​(StoreBuilder storeBuilder,
                                        java.lang.String... processorNames)
      • addStateStore

        public final void addStateStore​(StoreBuilder storeBuilder,
                                        boolean allowOverride,
                                        java.lang.String... processorNames)
      • addGlobalStore

        public final void addGlobalStore​(StoreBuilder<KeyValueStore> storeBuilder,
                                         java.lang.String sourceName,
                                         TimestampExtractor timestampExtractor,
                                         org.apache.kafka.common.serialization.Deserializer keyDeserializer,
                                         org.apache.kafka.common.serialization.Deserializer valueDeserializer,
                                         java.lang.String topic,
                                         java.lang.String processorName,
                                         ProcessorSupplier stateUpdateSupplier)
      • connectProcessorAndStateStores

        public final void connectProcessorAndStateStores​(java.lang.String processorName,
                                                         java.lang.String... stateStoreNames)
      • markSourceStoreAndTopic

        public final void markSourceStoreAndTopic​(StoreBuilder storeBuilder,
                                                  java.lang.String topic)
      • addInternalTopic

        public final void addInternalTopic​(java.lang.String topicName)
      • copartitionSources

        public final void copartitionSources​(java.util.Collection<java.lang.String> sourceNodes)
      • nodeGroups

        public java.util.Map<java.lang.Integer,​java.util.Set<java.lang.String>> nodeGroups()
      • buildGlobalStateTopology

        public ProcessorTopology buildGlobalStateTopology()
        Builds the topology for any global state stores
        Returns:
        ProcessorTopology
      • globalStateStores

        public java.util.Map<java.lang.String,​StateStore> globalStateStores()
        Get any global StateStores that are part of the topology
        Returns:
        map containing all global StateStores
      • allStateStoreName

        public java.util.Set<java.lang.String> allStateStoreName()
      • topicGroups

        public java.util.Map<java.lang.Integer,​InternalTopologyBuilder.TopicsInfo> topicGroups()
        Returns the map of topic groups keyed by the group id. A topic group is a group of topics in the same task.
        Returns:
        groups of topic names
      • earliestResetTopicsPattern

        public java.util.regex.Pattern earliestResetTopicsPattern()
      • latestResetTopicsPattern

        public java.util.regex.Pattern latestResetTopicsPattern()
      • stateStoreNameToSourceTopics

        public java.util.Map<java.lang.String,​java.util.List<java.lang.String>> stateStoreNameToSourceTopics()
      • copartitionGroups

        public java.util.Collection<java.util.Set<java.lang.String>> copartitionGroups()
      • sourceTopicPattern

        public java.util.regex.Pattern sourceTopicPattern()
      • updateSubscribedTopics

        public void updateSubscribedTopics​(java.util.Set<java.lang.String> topics,
                                           java.lang.String logPrefix)
      • getSourceTopicNames

        public java.util.Set<java.lang.String> getSourceTopicNames()