RuntimeBuildContext¶
Creating Instance¶
RuntimeBuildContext
takes the following to be created:
- StreamsBuilder
- KsqlConfig
- ServiceContext
- ProcessingLogContext
- FunctionRegistry
- Application ID
- Query ID
- KeySerdeFactory
- ValueSerdeFactory
RuntimeBuildContext
is created using of factory.
StreamsBuilder¶
RuntimeBuildContext
is given a StreamsBuilder
(Kafka Streams) when created.
The StreamsBuilder
is used when:
SourceBuilder
is requested to buildKTableSourceBuilderV1
is requested to buildKTable and buildKStream
Creating RuntimeBuildContext¶
RuntimeBuildContext of(
final StreamsBuilder streamsBuilder,
final KsqlConfig ksqlConfig,
final ServiceContext serviceContext,
final ProcessingLogContext processingLogContext,
final FunctionRegistry functionRegistry,
final String applicationId,
final QueryId queryId)
of
creates a RuntimeBuildContext with the arguments and the following:
- GenericKeySerDe for the KeySerdeFactory
- GenericRowSerDe for the ValueSerdeFactory
of
is used when:
QueryBuilder
is requested for a RuntimeBuildContext
ProcessingLogger¶
ProcessingLogger getProcessingLogger(
QueryContext queryContext)
getProcessingLogger
...FIXME
Building Value Serde¶
Serde<GenericRow> buildValueSerde(
FormatInfo format,
PhysicalSchema schema,
QueryContext queryContext)
buildValueSerde
builds a query logger prefix for the Query ID (and the given QueryContext
).
buildValueSerde
requests the QuerySchemas to trackValueSerdeCreation
.
In the end, buildValueSerde
requests the ValueSerdeFactory to create a value Serde.