public override void WriteToTopology(InternalTopologyBuilder builder) { if (ProcessorParameters != null) { builder.AddInternalTopic(RepartitionTopic, NumberOfPartition); builder.AddProcessor(ProcessorParameters.ProcessorName, ProcessorParameters.Processor, ParentNodeNames()); builder.AddSinkOperator( new StaticTopicNameExtractor <K, V>(RepartitionTopic), SinkName, Produced <K, V> .Create(KeySerdes, ValueSerdes).WithPartitioner(StreamPartitioner), ProcessorParameters.ProcessorName); builder.AddSourceOperator( RepartitionTopic, SourceName, new ConsumedInternal <K, V>(SourceName, KeySerdes, ValueSerdes, new FailOnInvalidTimestamp())); } else { builder.AddInternalTopic(RepartitionTopic, NumberOfPartition); builder.AddSinkOperator( new StaticTopicNameExtractor <K, V>(RepartitionTopic), SinkName, Produced <K, V> .Create(KeySerdes, ValueSerdes).WithPartitioner(StreamPartitioner), ParentNodeNames()); builder.AddSourceOperator( RepartitionTopic, SourceName, new ConsumedInternal <K, V>(SourceName, KeySerdes, ValueSerdes, new FailOnInvalidTimestamp())); } }