org.apache.gearpump.streaming.transaction

api

package api

Visibility
  1. Public
  2. All

Type Members

  1. trait MessageDecoder extends Serializable

    MessageDecoder decodes raw bytes to Message It is usually written by end user and passed into TimeReplayableSource

  2. trait MessageFilter extends AnyRef

    filter offsets and store the mapping from timestamp to offset

  3. trait OffsetManager extends MessageFilter with OffsetTimeStampResolver

    manages message's offset on TimeReplayableSource and timestamp

  4. trait OffsetStorage extends AnyRef

    OffsetStorage stores the mapping from TimeStamp to Offset

  5. trait OffsetTimeStampResolver extends AnyRef

    resolve timestamp to offset by look up the underlying storage

  6. trait TimeReplayableSource extends Serializable

    TimeReplayableSource would allow users to pull and replay messages from a startTime.

    TimeReplayableSource would allow users to pull and replay messages from a startTime.

    The typical usage is like the following, where user get startTime from TaskContext in onStart and pull num of messages in each onNext. User could optionally append a TimeStampFilter in case source messages are not stored in TimeStamp order

    e.g. class UserTask(conf: Configs) extends TaskActor(conf) { var startTime = 0L

    override def onStart(context: TaskContext): Unit = { this.startTime = context.startTime TimeReplayableSource.setStartTime(this.startTime) }

    override def onNext(msg: Message): Unit = { TimeReplayableSource.pull(num).foreach { msg => TimeStampFilter.filter(msg, this.startTime).map(output) } } }

  7. trait TimeStampFilter extends AnyRef

    TimeStampFilter filters message comparing its TimeStamp with the predicate.

Value Members

  1. object MessageDecoder extends Serializable

  2. object OffsetStorage

Ungrouped