Package io.floodplain.streams.remotejoin
Class ReplicationTopologyParser
- java.lang.Object
-
- io.floodplain.streams.remotejoin.ReplicationTopologyParser
-
public class ReplicationTopologyParser extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classReplicationTopologyParser.Flatten
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringSTORE_PREFIX
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static voidaddDiffProcessor(org.apache.kafka.streams.Topology current, io.floodplain.streams.api.TopologyContext topologyContext, TopologyConstructor topologyConstructor, java.lang.String fromProcessor, java.lang.String diffProcessorNamePrefix)static java.lang.StringaddGroupedProcessor(org.apache.kafka.streams.Topology current, io.floodplain.streams.api.TopologyContext topologyContext, TopologyConstructor topologyConstructor, java.lang.String name, java.lang.String from, java.util.function.Function<io.floodplain.replication.api.ReplicationMessage,java.lang.String> keyExtractor)static voidaddJoin(org.apache.kafka.streams.Topology current, io.floodplain.streams.api.TopologyContext topologyContext, TopologyConstructor topologyConstructor, java.lang.String fromProcessorName, java.lang.String withProcessorName, java.lang.String name, boolean optional, boolean multiple, boolean materialize, boolean debug)static java.lang.StringaddMaterializeStore(org.apache.kafka.streams.Topology currentBuilder, io.floodplain.streams.api.TopologyContext context, TopologyConstructor topologyConstructor, java.lang.String name, java.lang.String parentProcessor)static voidaddPersistentCache(org.apache.kafka.streams.Topology current, io.floodplain.streams.api.TopologyContext topologyContext, TopologyConstructor topologyConstructor, java.lang.String name, java.lang.String fromProcessorName, java.time.Duration cacheTime, int maxSize, boolean inMemory)static java.lang.StringaddReducer(org.apache.kafka.streams.Topology topology, io.floodplain.streams.api.TopologyContext topologyContext, TopologyConstructor topologyConstructor, java.util.Stack<java.lang.String> transformerNames, int currentPipeId, java.util.List<TopologyPipeComponent> onAdd, java.util.List<TopologyPipeComponent> onRemove, java.util.function.Function<io.floodplain.immutable.api.ImmutableMessage,io.floodplain.immutable.api.ImmutableMessage> initialMessage, boolean materialize, java.util.Optional<java.util.function.BiFunction<io.floodplain.immutable.api.ImmutableMessage,io.floodplain.immutable.api.ImmutableMessage,java.lang.String>> keyExtractor)static voidaddSingleJoinGrouped(org.apache.kafka.streams.Topology current, io.floodplain.streams.api.TopologyContext topologyContext, TopologyConstructor topologyConstructor, java.lang.String fromProcessor, java.lang.String name, java.lang.String withProcessor, boolean optional, boolean materialize, boolean isList)static java.lang.StringaddSourceStore(org.apache.kafka.streams.Topology currentBuilder, TopologyConstructor topologyConstructor, io.floodplain.streams.api.Topic sourceTopicName, io.floodplain.streams.api.Topic.FloodplainKeyFormat keyFormat, io.floodplain.streams.api.Topic.FloodplainBodyFormat bodyFormat, boolean materializeStore)static java.lang.StringaddSourceStore(org.apache.kafka.streams.Topology currentBuilder, TopologyConstructor topologyConstructor, io.floodplain.streams.api.Topic sourceTopicName, org.apache.kafka.common.serialization.Deserializer<java.lang.String> keyDeserializer, org.apache.kafka.common.serialization.Deserializer<io.floodplain.replication.api.ReplicationMessage> bodyDeserializer, boolean materializeStore)static voidaddStateStoreMapping(java.util.Map<java.lang.String,java.util.List<java.lang.String>> processorStateStoreMapper, java.lang.String processor, java.lang.String stateStore)static org.apache.kafka.common.serialization.Deserializer<io.floodplain.replication.api.ReplicationMessage>bodyDeserializer(io.floodplain.streams.api.Topic.FloodplainBodyFormat bodyFormat)static org.apache.kafka.common.serialization.Serializer<io.floodplain.replication.api.ReplicationMessage>bodySerializer(io.floodplain.streams.api.Topic.FloodplainBodyFormat bodyFormat)static org.apache.kafka.streams.state.StoreBuilder<org.apache.kafka.streams.state.KeyValueStore<java.lang.String,io.floodplain.immutable.api.ImmutableMessage>>createImmutableMessageSupplier(java.lang.String name, boolean persistent)static org.apache.kafka.streams.state.StoreBuilder<org.apache.kafka.streams.state.KeyValueStore<java.lang.String,java.lang.Long>>createLongStoreSupplier(java.lang.String name, boolean persistent)static org.apache.kafka.streams.state.StoreBuilder<org.apache.kafka.streams.state.KeyValueStore<java.lang.String,io.floodplain.replication.api.ReplicationMessage>>createMessageStoreSupplier(java.lang.String name, boolean persistent)static org.apache.kafka.common.serialization.Deserializer<java.lang.String>keyDeserializer(io.floodplain.streams.api.Topic.FloodplainKeyFormat keyFormat)static org.apache.kafka.common.serialization.Serializer<java.lang.String>keySerializer(io.floodplain.streams.api.Topic.FloodplainKeyFormat keyFormat)static voidmaterializeStateStores(TopologyConstructor topologyConstructor, org.apache.kafka.streams.Topology current)
-
-
-
Field Detail
-
STORE_PREFIX
public static final java.lang.String STORE_PREFIX
- See Also:
- Constant Field Values
-
-
Method Detail
-
addStateStoreMapping
public static void addStateStoreMapping(java.util.Map<java.lang.String,java.util.List<java.lang.String>> processorStateStoreMapper, java.lang.String processor, java.lang.String stateStore)
-
materializeStateStores
public static void materializeStateStores(TopologyConstructor topologyConstructor, org.apache.kafka.streams.Topology current)
-
addDiffProcessor
public static void addDiffProcessor(org.apache.kafka.streams.Topology current, io.floodplain.streams.api.TopologyContext topologyContext, TopologyConstructor topologyConstructor, java.lang.String fromProcessor, java.lang.String diffProcessorNamePrefix)
-
addMaterializeStore
public static java.lang.String addMaterializeStore(org.apache.kafka.streams.Topology currentBuilder, io.floodplain.streams.api.TopologyContext context, TopologyConstructor topologyConstructor, java.lang.String name, java.lang.String parentProcessor)
-
keyDeserializer
public static org.apache.kafka.common.serialization.Deserializer<java.lang.String> keyDeserializer(io.floodplain.streams.api.Topic.FloodplainKeyFormat keyFormat)
-
keySerializer
public static org.apache.kafka.common.serialization.Serializer<java.lang.String> keySerializer(io.floodplain.streams.api.Topic.FloodplainKeyFormat keyFormat)
-
bodyDeserializer
public static org.apache.kafka.common.serialization.Deserializer<io.floodplain.replication.api.ReplicationMessage> bodyDeserializer(io.floodplain.streams.api.Topic.FloodplainBodyFormat bodyFormat)
-
bodySerializer
public static org.apache.kafka.common.serialization.Serializer<io.floodplain.replication.api.ReplicationMessage> bodySerializer(io.floodplain.streams.api.Topic.FloodplainBodyFormat bodyFormat)
-
addSourceStore
public static java.lang.String addSourceStore(org.apache.kafka.streams.Topology currentBuilder, TopologyConstructor topologyConstructor, io.floodplain.streams.api.Topic sourceTopicName, io.floodplain.streams.api.Topic.FloodplainKeyFormat keyFormat, io.floodplain.streams.api.Topic.FloodplainBodyFormat bodyFormat, boolean materializeStore)
-
addSourceStore
public static java.lang.String addSourceStore(org.apache.kafka.streams.Topology currentBuilder, TopologyConstructor topologyConstructor, io.floodplain.streams.api.Topic sourceTopicName, org.apache.kafka.common.serialization.Deserializer<java.lang.String> keyDeserializer, org.apache.kafka.common.serialization.Deserializer<io.floodplain.replication.api.ReplicationMessage> bodyDeserializer, boolean materializeStore)
-
addSingleJoinGrouped
public static void addSingleJoinGrouped(org.apache.kafka.streams.Topology current, io.floodplain.streams.api.TopologyContext topologyContext, TopologyConstructor topologyConstructor, java.lang.String fromProcessor, java.lang.String name, java.lang.String withProcessor, boolean optional, boolean materialize, boolean isList)
-
addGroupedProcessor
public static java.lang.String addGroupedProcessor(org.apache.kafka.streams.Topology current, io.floodplain.streams.api.TopologyContext topologyContext, TopologyConstructor topologyConstructor, java.lang.String name, java.lang.String from, java.util.function.Function<io.floodplain.replication.api.ReplicationMessage,java.lang.String> keyExtractor)
-
addPersistentCache
public static void addPersistentCache(org.apache.kafka.streams.Topology current, io.floodplain.streams.api.TopologyContext topologyContext, TopologyConstructor topologyConstructor, java.lang.String name, java.lang.String fromProcessorName, java.time.Duration cacheTime, int maxSize, boolean inMemory)
-
addReducer
public static java.lang.String addReducer(org.apache.kafka.streams.Topology topology, io.floodplain.streams.api.TopologyContext topologyContext, TopologyConstructor topologyConstructor, java.util.Stack<java.lang.String> transformerNames, int currentPipeId, java.util.List<TopologyPipeComponent> onAdd, java.util.List<TopologyPipeComponent> onRemove, java.util.function.Function<io.floodplain.immutable.api.ImmutableMessage,io.floodplain.immutable.api.ImmutableMessage> initialMessage, boolean materialize, java.util.Optional<java.util.function.BiFunction<io.floodplain.immutable.api.ImmutableMessage,io.floodplain.immutable.api.ImmutableMessage,java.lang.String>> keyExtractor)
-
addJoin
public static void addJoin(org.apache.kafka.streams.Topology current, io.floodplain.streams.api.TopologyContext topologyContext, TopologyConstructor topologyConstructor, java.lang.String fromProcessorName, java.lang.String withProcessorName, java.lang.String name, boolean optional, boolean multiple, boolean materialize, boolean debug)
-
createMessageStoreSupplier
public static org.apache.kafka.streams.state.StoreBuilder<org.apache.kafka.streams.state.KeyValueStore<java.lang.String,io.floodplain.replication.api.ReplicationMessage>> createMessageStoreSupplier(java.lang.String name, boolean persistent)
-
createImmutableMessageSupplier
public static org.apache.kafka.streams.state.StoreBuilder<org.apache.kafka.streams.state.KeyValueStore<java.lang.String,io.floodplain.immutable.api.ImmutableMessage>> createImmutableMessageSupplier(java.lang.String name, boolean persistent)
-
createLongStoreSupplier
public static org.apache.kafka.streams.state.StoreBuilder<org.apache.kafka.streams.state.KeyValueStore<java.lang.String,java.lang.Long>> createLongStoreSupplier(java.lang.String name, boolean persistent)
-
-