Documentation
¶
Index ¶
- type Pilot
- type ProducerInitParams
- type ProducerState
- type StandardPilot
- func (p *StandardPilot) JobGetAvailable(ctx context.Context, exec riverdriver.Executor, state ProducerState, ...) ([]*rivertype.JobRow, error)
- func (p *StandardPilot) JobInsertMany(ctx context.Context, tx riverdriver.ExecutorTx, ...) ([]*riverdriver.JobInsertFastResult, error)
- func (p *StandardPilot) JobSetStateIfRunningMany(ctx context.Context, tx riverdriver.ExecutorTx, ...) ([]*rivertype.JobRow, error)
- func (p *StandardPilot) PilotInit(archetype *baseservice.Archetype)
- func (p *StandardPilot) ProducerInit(ctx context.Context, exec riverdriver.Executor, params *ProducerInitParams) (int64, ProducerState, error)
- func (p *StandardPilot) ProducerKeepAlive(ctx context.Context, exec riverdriver.Executor, ...) error
- func (p *StandardPilot) ProducerShutdown(ctx context.Context, exec riverdriver.Executor, producerID int64, ...) error
- func (p *StandardPilot) QueueMetadataChanged(ctx context.Context, exec riverdriver.Executor, state ProducerState, ...) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Pilot ¶
type Pilot interface {
JobGetAvailable(
ctx context.Context,
exec riverdriver.Executor,
state ProducerState,
params *riverdriver.JobGetAvailableParams,
) ([]*rivertype.JobRow, error)
JobInsertMany(
ctx context.Context,
tx riverdriver.ExecutorTx,
params []*riverdriver.JobInsertFastParams,
) ([]*riverdriver.JobInsertFastResult, error)
JobSetStateIfRunningMany(ctx context.Context, tx riverdriver.ExecutorTx, params *riverdriver.JobSetStateIfRunningManyParams) ([]*rivertype.JobRow, error)
PilotInit(archetype *baseservice.Archetype)
// ProducerInit is called when a producer is started. It should return the ID
// of the new producer, a new state object that will be used to track the
// producer's state, and an error if the producer could not be initialized.
ProducerInit(ctx context.Context, exec riverdriver.Executor, params *ProducerInitParams) (int64, ProducerState, error)
ProducerKeepAlive(ctx context.Context, exec riverdriver.Executor, params *riverdriver.ProducerKeepAliveParams) error
ProducerShutdown(ctx context.Context, exec riverdriver.Executor, producerID int64, state ProducerState) error
QueueMetadataChanged(ctx context.Context, exec riverdriver.Executor, state ProducerState, metadata []byte) error
}
A Pilot bridges the gap between the River client and the driver, implementing higher level functionality on top of the driver's underlying queries. It tracks closely to the underlying driver's API, but may add additional functionality or logic wrapping the queries.
This should be considered a River internal API and its stability is not guaranteed. DO NOT USE.
type ProducerInitParams ¶ added in v0.20.0
type ProducerState ¶ added in v0.20.0
type StandardPilot ¶
type StandardPilot struct {
// contains filtered or unexported fields
}
func (*StandardPilot) JobGetAvailable ¶ added in v0.20.0
func (p *StandardPilot) JobGetAvailable(ctx context.Context, exec riverdriver.Executor, state ProducerState, params *riverdriver.JobGetAvailableParams) ([]*rivertype.JobRow, error)
func (*StandardPilot) JobInsertMany ¶
func (p *StandardPilot) JobInsertMany( ctx context.Context, tx riverdriver.ExecutorTx, params []*riverdriver.JobInsertFastParams, ) ([]*riverdriver.JobInsertFastResult, error)
func (*StandardPilot) JobSetStateIfRunningMany ¶
func (p *StandardPilot) JobSetStateIfRunningMany(ctx context.Context, tx riverdriver.ExecutorTx, params *riverdriver.JobSetStateIfRunningManyParams) ([]*rivertype.JobRow, error)
func (*StandardPilot) PilotInit ¶
func (p *StandardPilot) PilotInit(archetype *baseservice.Archetype)
func (*StandardPilot) ProducerInit ¶ added in v0.20.0
func (p *StandardPilot) ProducerInit(ctx context.Context, exec riverdriver.Executor, params *ProducerInitParams) (int64, ProducerState, error)
func (*StandardPilot) ProducerKeepAlive ¶ added in v0.20.0
func (p *StandardPilot) ProducerKeepAlive(ctx context.Context, exec riverdriver.Executor, params *riverdriver.ProducerKeepAliveParams) error
func (*StandardPilot) ProducerShutdown ¶ added in v0.20.0
func (p *StandardPilot) ProducerShutdown(ctx context.Context, exec riverdriver.Executor, producerID int64, state ProducerState) error
func (*StandardPilot) QueueMetadataChanged ¶ added in v0.20.0
func (p *StandardPilot) QueueMetadataChanged(ctx context.Context, exec riverdriver.Executor, state ProducerState, metadata []byte) error
Click to show internal directories.
Click to hide internal directories.