KSPlanBuilder¶
KSPlanBuilder
is a PlanBuilder that builds a Kafka Streams application (from an execution plan).
Creating Instance¶
KSPlanBuilder
takes the following to be created:
- RuntimeBuildContext
-
SqlPredicateFactory
-
AggregateParamsFactory
-
StreamsFactories
KSPlanBuilder
is created when:
QueryBuilder
is requested to build a query implementation
visitStreamSelect¶
KStreamHolder<K> visitStreamSelect(
StreamSelect<K> streamSelect,
PlanInfo planInfo)
visitStreamSelect
is part of the PlanBuilder abstraction.
visitStreamSelect
requests the given StreamSelect for the ExecutionStep of the source to build.
In the end, visitStreamSelect
builds a KStreamHolder.
visitStreamSelectKey¶
KStreamHolder<GenericKey> visitStreamSelectKey(
StreamSelectKeyV1 streamSelectKey,
PlanInfo planInfo)
visitStreamSelectKey
is part of the PlanBuilder abstraction.
visitStreamSelectKey
requests the given StreamSelectKeyV1 for the source ExecutionStep to build a KStreamHolder.
In the end, visitStreamSelectKey
builds a KStreamHolder with the source KStreamHolder
and the StreamSelectKeyV1.
visitStreamSource¶
KStreamHolder<GenericKey> visitStreamSource(
StreamSource streamSource,
PlanInfo planInfo) // (1)!
- The given
PlanInfo
is not used.
visitStreamSource
is part of the PlanBuilder abstraction.
visitStreamSource
uses the SourceBuilderV1 to build a KStream (for the RuntimeBuildContext, the given StreamSource and the ConsumedFactory
from the StreamsFactories).
Visiting TableSource¶
KTableHolder<GenericKey> visitTableSource(
TableSource tableSource,
PlanInfo planInfo)
KTableHolder<GenericKey> visitTableSource(
TableSourceV1 tableSourceV1,
PlanInfo planInfo)
visitTableSource
is part of the PlanBuilder abstraction.
visitTableSource
creates a SourceBuilder to build a KTableHolder for the given TableSource.
visitTableSelect¶
<K> KTableHolder<K> visitTableSelect(
TableSelect<K> tableSelect,
PlanInfo planInfo)
visitTableSelect
is part of the PlanBuilder abstraction.
visitTableSelect
requests the given TableSelect for the source ExecutionStep to build a KTableHolder.
In the end, visitTableSelect
builds a KTableHolder with the source KTableHolder
.