Package io.floodplain.streams.remotejoin
Class TopologyConstructor
- java.lang.Object
-
- io.floodplain.streams.remotejoin.TopologyConstructor
-
public class TopologyConstructor extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description java.util.Map<java.lang.String,org.apache.kafka.streams.state.StoreBuilder<org.apache.kafka.streams.state.KeyValueStore<java.lang.String,io.floodplain.immutable.api.ImmutableMessage>>>immutableStoreSupplierjava.util.Map<java.lang.String,org.apache.kafka.streams.state.StoreBuilder<org.apache.kafka.streams.state.KeyValueStore<java.lang.String,java.lang.Long>>>longStoreSupplierjava.util.Map<java.lang.String,java.util.List<java.lang.String>>processorStateStoreMapperjava.util.Set<java.lang.String>sinksjava.util.Map<io.floodplain.streams.api.Topic,java.lang.String>sourcesKey is the topic object, value is the 'name' of the topic.java.util.Map<java.lang.String,org.apache.kafka.streams.state.StoreBuilder<org.apache.kafka.streams.state.KeyValueStore<java.lang.String,io.floodplain.replication.api.ReplicationMessage>>>stateStoreSupplierjava.util.Set<java.lang.String>stores
-
Constructor Summary
Constructors Constructor Description TopologyConstructor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddDesiredTopic(io.floodplain.streams.api.Topic topic, java.util.Optional<java.lang.Integer> partitions)voidaddSink(java.lang.String qualifiedName)voidcreateTopicsAsNeeded(java.util.Map<java.lang.String,java.lang.Object> settings)java.util.Set<io.floodplain.streams.api.Topic>desiredTopicNames()voidensureTopicExists(io.floodplain.streams.api.Topic topicName, java.util.Optional<java.lang.Integer> partitionCount)intgenerateNewStreamId()
-
-
-
Field Detail
-
processorStateStoreMapper
public final java.util.Map<java.lang.String,java.util.List<java.lang.String>> processorStateStoreMapper
-
stateStoreSupplier
public final java.util.Map<java.lang.String,org.apache.kafka.streams.state.StoreBuilder<org.apache.kafka.streams.state.KeyValueStore<java.lang.String,io.floodplain.replication.api.ReplicationMessage>>> stateStoreSupplier
-
immutableStoreSupplier
public final java.util.Map<java.lang.String,org.apache.kafka.streams.state.StoreBuilder<org.apache.kafka.streams.state.KeyValueStore<java.lang.String,io.floodplain.immutable.api.ImmutableMessage>>> immutableStoreSupplier
-
longStoreSupplier
public final java.util.Map<java.lang.String,org.apache.kafka.streams.state.StoreBuilder<org.apache.kafka.streams.state.KeyValueStore<java.lang.String,java.lang.Long>>> longStoreSupplier
-
stores
public final java.util.Set<java.lang.String> stores
-
sinks
public final java.util.Set<java.lang.String> sinks
-
sources
public final java.util.Map<io.floodplain.streams.api.Topic,java.lang.String> sources
Key is the topic object, value is the 'name' of the topic. Often the same as the topic name, but makes it possible to sink to the same topic multiple times
-
-
Method Detail
-
addDesiredTopic
public void addDesiredTopic(io.floodplain.streams.api.Topic topic, java.util.Optional<java.lang.Integer> partitions)
-
desiredTopicNames
public java.util.Set<io.floodplain.streams.api.Topic> desiredTopicNames()
-
ensureTopicExists
public void ensureTopicExists(io.floodplain.streams.api.Topic topicName, java.util.Optional<java.lang.Integer> partitionCount)
-
createTopicsAsNeeded
public void createTopicsAsNeeded(java.util.Map<java.lang.String,java.lang.Object> settings)
-
generateNewStreamId
public int generateNewStreamId()
-
addSink
public void addSink(java.lang.String qualifiedName)
-
-