trigger

package
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 5, 2020 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CountingTrigger

type CountingTrigger struct {
	// contains filtered or unexported fields
}

func NewCountingTrigger

func NewCountingTrigger(fireEvery int) *CountingTrigger

func (*CountingTrigger) Document

func (ct *CountingTrigger) Document() docs.Documentation

func (*CountingTrigger) KeysFired

func (ct *CountingTrigger) KeysFired(ctx context.Context, tx storage.StateTransaction, keys []octosql.Value) error

func (*CountingTrigger) PollKeysToFire

func (ct *CountingTrigger) PollKeysToFire(ctx context.Context, tx storage.StateTransaction, batchSize int) ([]octosql.Value, error)

func (*CountingTrigger) RecordReceived

func (ct *CountingTrigger) RecordReceived(ctx context.Context, tx storage.StateTransaction, key octosql.Value, eventTime time.Time) error

func (*CountingTrigger) UpdateWatermark

func (ct *CountingTrigger) UpdateWatermark(ctx context.Context, tx storage.StateTransaction, watermark time.Time) error

type DelayTrigger

type DelayTrigger struct {
	// contains filtered or unexported fields
}

func NewDelayTrigger

func NewDelayTrigger(delay time.Duration, clock func() time.Time) *DelayTrigger

func (*DelayTrigger) Document

func (dt *DelayTrigger) Document() docs.Documentation

func (*DelayTrigger) KeysFired

func (dt *DelayTrigger) KeysFired(ctx context.Context, tx storage.StateTransaction, keys []octosql.Value) error

func (*DelayTrigger) PollKeysToFire

func (dt *DelayTrigger) PollKeysToFire(ctx context.Context, tx storage.StateTransaction, batchSize int) ([]octosql.Value, error)

func (*DelayTrigger) RecordReceived

func (dt *DelayTrigger) RecordReceived(ctx context.Context, tx storage.StateTransaction, key octosql.Value, eventTime time.Time) error

func (*DelayTrigger) UpdateWatermark

func (dt *DelayTrigger) UpdateWatermark(ctx context.Context, tx storage.StateTransaction, watermark time.Time) error

type MultiTrigger

type MultiTrigger struct {
	// contains filtered or unexported fields
}

func NewMultiTrigger

func NewMultiTrigger(triggers ...Trigger) *MultiTrigger

func (*MultiTrigger) Document

func (m *MultiTrigger) Document() docs.Documentation

func (*MultiTrigger) KeysFired

func (m *MultiTrigger) KeysFired(ctx context.Context, tx storage.StateTransaction, keys []octosql.Value) error

func (*MultiTrigger) PollKeysToFire

func (m *MultiTrigger) PollKeysToFire(ctx context.Context, tx storage.StateTransaction, batchSize int) ([]octosql.Value, error)

func (*MultiTrigger) RecordReceived

func (m *MultiTrigger) RecordReceived(ctx context.Context, tx storage.StateTransaction, key octosql.Value, eventTime time.Time) error

func (*MultiTrigger) UpdateWatermark

func (m *MultiTrigger) UpdateWatermark(ctx context.Context, tx storage.StateTransaction, watermark time.Time) error

type TimeSortedKeys

type TimeSortedKeys struct {
	// contains filtered or unexported fields
}

func NewTimeSortedKeys

func NewTimeSortedKeys(tx storage.StateTransaction) *TimeSortedKeys

func (*TimeSortedKeys) Delete

func (tsk *TimeSortedKeys) Delete(key octosql.Value, t time.Time) error

func (*TimeSortedKeys) DeleteByKey

func (tsk *TimeSortedKeys) DeleteByKey(key octosql.Value) error

func (*TimeSortedKeys) GetFirst

func (tsk *TimeSortedKeys) GetFirst() (octosql.Value, time.Time, error)

func (*TimeSortedKeys) GetUntil

func (tsk *TimeSortedKeys) GetUntil(until time.Time, batchSize int) ([]octosql.Value, []time.Time, error)

func (*TimeSortedKeys) Update

func (tsk *TimeSortedKeys) Update(key octosql.Value, t time.Time) error

type Trigger

type Trigger interface {
	RecordReceived(ctx context.Context, tx storage.StateTransaction, key octosql.Value, eventTime time.Time) error
	UpdateWatermark(ctx context.Context, tx storage.StateTransaction, watermark time.Time) error
	PollKeysToFire(ctx context.Context, tx storage.StateTransaction, batchSize int) ([]octosql.Value, error)
	KeysFired(ctx context.Context, tx storage.StateTransaction, key []octosql.Value) error
}

type WatermarkTrigger

type WatermarkTrigger struct {
}

func NewWatermarkTrigger

func NewWatermarkTrigger() *WatermarkTrigger

func (*WatermarkTrigger) Document

func (wt *WatermarkTrigger) Document() docs.Documentation

func (*WatermarkTrigger) KeysFired

func (*WatermarkTrigger) PollKeysToFire

func (wt *WatermarkTrigger) PollKeysToFire(ctx context.Context, tx storage.StateTransaction, batchSize int) ([]octosql.Value, error)

func (*WatermarkTrigger) RecordReceived

func (wt *WatermarkTrigger) RecordReceived(ctx context.Context, tx storage.StateTransaction, key octosql.Value, eventTime time.Time) error

func (*WatermarkTrigger) UpdateWatermark

func (wt *WatermarkTrigger) UpdateWatermark(ctx context.Context, tx storage.StateTransaction, watermark time.Time) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL