FeedBootstrap

sealed class FeedBootstrap<T : Feed>

FeedBootstrap is the input to a PartitionsCreatorFactory.

This object conveniently packages the StateManager singleton with the feed for which the PartitionsCreatorFactory is to operate on, eventually causing the emission of Airbyte RECORD messages for the Streams in the feed. For this purpose, FeedBootstrap provides StreamRecordConsumer instances which essentially provide a layer of caching over OutputConsumer, leveraging the fact that all records for a given stream share the same schema.

Inheritors

Types

Link copied to clipboard
object Companion
Link copied to clipboard
open inner class EfficientStreamRecordConsumer(val stream: Stream, val outputDataChannel: OutputConsumer = outputConsumer) : StreamRecordConsumer

Efficient implementation of StreamRecordConsumer.

Link copied to clipboard
inner class ProtoEfficientStreamRecordConsumer(val stream: Stream, socketProtobufOutputConsumer: SocketProtobufOutputConsumer) : StreamRecordConsumer

Properties

Link copied to clipboard
Link copied to clipboard

Convenience getter for the current state value for this feed.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val feed: T

Feed to emit records for.

Link copied to clipboard

Delegates to StateManager.feeds.

Link copied to clipboard

The MetaFieldDecorator instance which StreamRecordConsumer will use to decorate records.

Link copied to clipboard

The OutputConsumer instance to which StreamRecordConsumer will delegate to.

Functions

Link copied to clipboard

Deletages to StateManager to return the current state value for any Feed.

Link copied to clipboard
fun resetAll()

Resets the state value of this feed and the streams in it to zero.