Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Publish ¶
type Publish struct {
// contains filtered or unexported fields
}
Publish publishes the watermark for a processor entity.
func NewPublish ¶
func NewPublish(ctx context.Context, processorEntity processor.ProcessorEntitier, keyspace string, js nats.JetStreamContext, heartbeatBucket nats.KeyValue, inputOpts ...PublishOption) *Publish
NewPublish returns `Publish`.
func (*Publish) Cleanup ¶
func (p *Publish) Cleanup()
Cleanup cleans up the data associated with key. TODO: move this to control plane
func (*Publish) GetLatestWatermark ¶
GetLatestWatermark returns the latest watermark for that processor.
type PublishOption ¶
type PublishOption func(*publishOptions)
func WithAutoRefreshHeartbeat ¶
func WithAutoRefreshHeartbeat(enable bool) PublishOption
func WithBucketConfigs ¶
func WithBucketConfigs(cfgs *nats.KeyValueConfig) PublishOption
func WithPodHeartbeatRate ¶
func WithPodHeartbeatRate(rate int64) PublishOption
type Publisher ¶
type Publisher interface { // PublishWatermark publishes the watermark. PublishWatermark(processor.Watermark, isb.Offset) // GetLatestWatermark returns the latest published watermark. GetLatestWatermark() processor.Watermark }
Publisher interface defines how to publish Watermark for a ProcessorEntity.
Click to show internal directories.
Click to hide internal directories.