Documentation ¶
Index ¶
- type AMQPBackend
- func (b *AMQPBackend) GetState(taskUUID string) (*tasks.TaskState, error)
- func (b *AMQPBackend) GroupCompleted(groupUUID string, groupTaskCount int) (bool, error)
- func (b *AMQPBackend) GroupTaskStates(groupUUID string, groupTaskCount int) ([]*tasks.TaskState, error)
- func (b *AMQPBackend) InitGroup(groupUUID string, taskUUIDs []string) error
- func (b *AMQPBackend) PurgeGroupMeta(groupUUID string) error
- func (b *AMQPBackend) PurgeState(taskUUID string) error
- func (b *AMQPBackend) SetStateFailure(signature *tasks.Signature, err string) error
- func (b *AMQPBackend) SetStatePending(signature *tasks.Signature) error
- func (b *AMQPBackend) SetStateReceived(signature *tasks.Signature) error
- func (b *AMQPBackend) SetStateRetry(signature *tasks.Signature) error
- func (b *AMQPBackend) SetStateStarted(signature *tasks.Signature) error
- func (b *AMQPBackend) SetStateSuccess(signature *tasks.Signature, results []*tasks.TaskResult) error
- func (b *AMQPBackend) TriggerChord(groupUUID string) (bool, error)
- type AsyncResult
- type ChainAsyncResult
- type ChordAsyncResult
- type EagerBackend
- func (b *EagerBackend) GetState(taskUUID string) (*tasks.TaskState, error)
- func (b *EagerBackend) GroupCompleted(groupUUID string, groupTaskCount int) (bool, error)
- func (b *EagerBackend) GroupTaskStates(groupUUID string, groupTaskCount int) ([]*tasks.TaskState, error)
- func (b *EagerBackend) InitGroup(groupUUID string, taskUUIDs []string) error
- func (b *EagerBackend) PurgeGroupMeta(groupUUID string) error
- func (b *EagerBackend) PurgeState(taskUUID string) error
- func (b *EagerBackend) SetStateFailure(signature *tasks.Signature, err string) error
- func (b *EagerBackend) SetStatePending(signature *tasks.Signature) error
- func (b *EagerBackend) SetStateReceived(signature *tasks.Signature) error
- func (b *EagerBackend) SetStateRetry(signature *tasks.Signature) error
- func (b *EagerBackend) SetStateStarted(signature *tasks.Signature) error
- func (b *EagerBackend) SetStateSuccess(signature *tasks.Signature, results []*tasks.TaskResult) error
- func (b *EagerBackend) TriggerChord(groupUUID string) (bool, error)
- type Interface
- func NewAMQPBackend(cnf *config.Config) Interface
- func NewEagerBackend() Interface
- func NewMemcacheBackend(cnf *config.Config, servers []string) Interface
- func NewMongodbBackend(cnf *config.Config) Interface
- func NewRedisBackend(cnf *config.Config, host, password, socketPath string, db int) Interface
- type MemcacheBackend
- func (b *MemcacheBackend) GetState(taskUUID string) (*tasks.TaskState, error)
- func (b *MemcacheBackend) GroupCompleted(groupUUID string, groupTaskCount int) (bool, error)
- func (b *MemcacheBackend) GroupTaskStates(groupUUID string, groupTaskCount int) ([]*tasks.TaskState, error)
- func (b *MemcacheBackend) InitGroup(groupUUID string, taskUUIDs []string) error
- func (b *MemcacheBackend) PurgeGroupMeta(groupUUID string) error
- func (b *MemcacheBackend) PurgeState(taskUUID string) error
- func (b *MemcacheBackend) SetStateFailure(signature *tasks.Signature, err string) error
- func (b *MemcacheBackend) SetStatePending(signature *tasks.Signature) error
- func (b *MemcacheBackend) SetStateReceived(signature *tasks.Signature) error
- func (b *MemcacheBackend) SetStateRetry(signature *tasks.Signature) error
- func (b *MemcacheBackend) SetStateStarted(signature *tasks.Signature) error
- func (b *MemcacheBackend) SetStateSuccess(signature *tasks.Signature, results []*tasks.TaskResult) error
- func (b *MemcacheBackend) TriggerChord(groupUUID string) (bool, error)
- type MongodbBackend
- func (b *MongodbBackend) GetState(taskUUID string) (*tasks.TaskState, error)
- func (b *MongodbBackend) GroupCompleted(groupUUID string, groupTaskCount int) (bool, error)
- func (b *MongodbBackend) GroupTaskStates(groupUUID string, groupTaskCount int) ([]*tasks.TaskState, error)
- func (b *MongodbBackend) InitGroup(groupUUID string, taskUUIDs []string) error
- func (b *MongodbBackend) PurgeGroupMeta(groupUUID string) error
- func (b *MongodbBackend) PurgeState(taskUUID string) error
- func (b *MongodbBackend) SetStateFailure(signature *tasks.Signature, err string) error
- func (b *MongodbBackend) SetStatePending(signature *tasks.Signature) error
- func (b *MongodbBackend) SetStateReceived(signature *tasks.Signature) error
- func (b *MongodbBackend) SetStateRetry(signature *tasks.Signature) error
- func (b *MongodbBackend) SetStateStarted(signature *tasks.Signature) error
- func (b *MongodbBackend) SetStateSuccess(signature *tasks.Signature, results []*tasks.TaskResult) error
- func (b *MongodbBackend) TriggerChord(groupUUID string) (bool, error)
- type RedisBackend
- func (b *RedisBackend) GetState(taskUUID string) (*tasks.TaskState, error)
- func (b *RedisBackend) GroupCompleted(groupUUID string, groupTaskCount int) (bool, error)
- func (b *RedisBackend) GroupTaskStates(groupUUID string, groupTaskCount int) ([]*tasks.TaskState, error)
- func (b *RedisBackend) InitGroup(groupUUID string, taskUUIDs []string) error
- func (b *RedisBackend) PurgeGroupMeta(groupUUID string) error
- func (b *RedisBackend) PurgeState(taskUUID string) error
- func (b *RedisBackend) SetStateFailure(signature *tasks.Signature, err string) error
- func (b *RedisBackend) SetStatePending(signature *tasks.Signature) error
- func (b *RedisBackend) SetStateReceived(signature *tasks.Signature) error
- func (b *RedisBackend) SetStateRetry(signature *tasks.Signature) error
- func (b *RedisBackend) SetStateStarted(signature *tasks.Signature) error
- func (b *RedisBackend) SetStateSuccess(signature *tasks.Signature, results []*tasks.TaskResult) error
- func (b *RedisBackend) TriggerChord(groupUUID string) (bool, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AMQPBackend ¶
type AMQPBackend struct { common.AMQPConnector // contains filtered or unexported fields }
AMQPBackend represents an AMQP result backend
func (*AMQPBackend) GetState ¶
func (b *AMQPBackend) GetState(taskUUID string) (*tasks.TaskState, error)
GetState returns the latest task state. It will only return the status once as the message will get consumed and removed from the queue.
func (*AMQPBackend) GroupCompleted ¶
func (b *AMQPBackend) GroupCompleted(groupUUID string, groupTaskCount int) (bool, error)
GroupCompleted returns true if all tasks in a group finished NOTE: Given AMQP limitation this will only return true if all finished tasks were successful as we do not keep track of completed failed tasks
func (*AMQPBackend) GroupTaskStates ¶
func (b *AMQPBackend) GroupTaskStates(groupUUID string, groupTaskCount int) ([]*tasks.TaskState, error)
GroupTaskStates returns states of all tasks in the group
func (*AMQPBackend) InitGroup ¶
func (b *AMQPBackend) InitGroup(groupUUID string, taskUUIDs []string) error
InitGroup creates and saves a group meta data object
func (*AMQPBackend) PurgeGroupMeta ¶
func (b *AMQPBackend) PurgeGroupMeta(groupUUID string) error
PurgeGroupMeta deletes stored group meta data
func (*AMQPBackend) PurgeState ¶
func (b *AMQPBackend) PurgeState(taskUUID string) error
PurgeState deletes stored task state
func (*AMQPBackend) SetStateFailure ¶
func (b *AMQPBackend) SetStateFailure(signature *tasks.Signature, err string) error
SetStateFailure updates task state to FAILURE
func (*AMQPBackend) SetStatePending ¶
func (b *AMQPBackend) SetStatePending(signature *tasks.Signature) error
SetStatePending updates task state to PENDING
func (*AMQPBackend) SetStateReceived ¶
func (b *AMQPBackend) SetStateReceived(signature *tasks.Signature) error
SetStateReceived updates task state to RECEIVED
func (*AMQPBackend) SetStateRetry ¶
func (b *AMQPBackend) SetStateRetry(signature *tasks.Signature) error
SetStateRetry updates task state to RETRY
func (*AMQPBackend) SetStateStarted ¶
func (b *AMQPBackend) SetStateStarted(signature *tasks.Signature) error
SetStateStarted updates task state to STARTED
func (*AMQPBackend) SetStateSuccess ¶
func (b *AMQPBackend) SetStateSuccess(signature *tasks.Signature, results []*tasks.TaskResult) error
SetStateSuccess updates task state to SUCCESS
func (*AMQPBackend) TriggerChord ¶
func (b *AMQPBackend) TriggerChord(groupUUID string) (bool, error)
TriggerChord flags chord as triggered in the backend storage to make sure chord is never trigerred multiple times. Returns a boolean flag to indicate whether the worker should trigger chord (true) or no if it has been triggered already (false)
type AsyncResult ¶
AsyncResult represents a task result
func NewAsyncResult ¶
func NewAsyncResult(signature *tasks.Signature, backend Interface) *AsyncResult
NewAsyncResult creates AsyncResult instance
func (*AsyncResult) GetState ¶
func (asyncResult *AsyncResult) GetState() *tasks.TaskState
GetState returns latest task state
func (*AsyncResult) GetWithTimeout ¶
func (asyncResult *AsyncResult) GetWithTimeout(timeoutDuration, sleepDuration time.Duration) ([]reflect.Value, error)
GetWithTimeout returns task results limited in time (synchronous blocking call)
type ChainAsyncResult ¶
type ChainAsyncResult struct {
// contains filtered or unexported fields
}
ChainAsyncResult represents a result of a chain of tasks
func NewChainAsyncResult ¶
func NewChainAsyncResult(tasks []*tasks.Signature, backend Interface) *ChainAsyncResult
NewChainAsyncResult creates ChainAsyncResult instance
type ChordAsyncResult ¶
type ChordAsyncResult struct {
// contains filtered or unexported fields
}
ChordAsyncResult represents a result of a chord
func NewChordAsyncResult ¶
func NewChordAsyncResult(groupTasks []*tasks.Signature, chordCallback *tasks.Signature, backend Interface) *ChordAsyncResult
NewChordAsyncResult creates ChordAsyncResult instance
type EagerBackend ¶
type EagerBackend struct {
// contains filtered or unexported fields
}
EagerBackend represents an "eager" in-memory result backend
func (*EagerBackend) GetState ¶
func (b *EagerBackend) GetState(taskUUID string) (*tasks.TaskState, error)
GetState returns the latest task state
func (*EagerBackend) GroupCompleted ¶
func (b *EagerBackend) GroupCompleted(groupUUID string, groupTaskCount int) (bool, error)
GroupCompleted returns true if all tasks in a group finished
func (*EagerBackend) GroupTaskStates ¶
func (b *EagerBackend) GroupTaskStates(groupUUID string, groupTaskCount int) ([]*tasks.TaskState, error)
GroupTaskStates returns states of all tasks in the group
func (*EagerBackend) InitGroup ¶
func (b *EagerBackend) InitGroup(groupUUID string, taskUUIDs []string) error
InitGroup creates and saves a group meta data object
func (*EagerBackend) PurgeGroupMeta ¶
func (b *EagerBackend) PurgeGroupMeta(groupUUID string) error
PurgeGroupMeta deletes stored group meta data
func (*EagerBackend) PurgeState ¶
func (b *EagerBackend) PurgeState(taskUUID string) error
PurgeState deletes stored task state
func (*EagerBackend) SetStateFailure ¶
func (b *EagerBackend) SetStateFailure(signature *tasks.Signature, err string) error
SetStateFailure updates task state to FAILURE
func (*EagerBackend) SetStatePending ¶
func (b *EagerBackend) SetStatePending(signature *tasks.Signature) error
SetStatePending updates task state to PENDING
func (*EagerBackend) SetStateReceived ¶
func (b *EagerBackend) SetStateReceived(signature *tasks.Signature) error
SetStateReceived updates task state to RECEIVED
func (*EagerBackend) SetStateRetry ¶
func (b *EagerBackend) SetStateRetry(signature *tasks.Signature) error
SetStateRetry updates task state to RETRY
func (*EagerBackend) SetStateStarted ¶
func (b *EagerBackend) SetStateStarted(signature *tasks.Signature) error
SetStateStarted updates task state to STARTED
func (*EagerBackend) SetStateSuccess ¶
func (b *EagerBackend) SetStateSuccess(signature *tasks.Signature, results []*tasks.TaskResult) error
SetStateSuccess updates task state to SUCCESS
func (*EagerBackend) TriggerChord ¶
func (b *EagerBackend) TriggerChord(groupUUID string) (bool, error)
TriggerChord flags chord as triggered in the backend storage to make sure chord is never trigerred multiple times. Returns a boolean flag to indicate whether the worker should trigger chord (true) or no if it has been triggered already (false)
type Interface ¶
type Interface interface { // Group related functions InitGroup(groupUUID string, taskUUIDs []string) error GroupCompleted(groupUUID string, groupTaskCount int) (bool, error) GroupTaskStates(groupUUID string, groupTaskCount int) ([]*tasks.TaskState, error) TriggerChord(groupUUID string) (bool, error) // Setting / getting task state SetStatePending(signature *tasks.Signature) error SetStateReceived(signature *tasks.Signature) error SetStateStarted(signature *tasks.Signature) error SetStateRetry(signature *tasks.Signature) error SetStateSuccess(signature *tasks.Signature, results []*tasks.TaskResult) error SetStateFailure(signature *tasks.Signature, err string) error GetState(taskUUID string) (*tasks.TaskState, error) // Purging stored stored tasks states and group meta data PurgeState(taskUUID string) error PurgeGroupMeta(groupUUID string) error }
Interface - a common interface for all result backends
func NewAMQPBackend ¶
NewAMQPBackend creates AMQPBackend instance
func NewEagerBackend ¶
func NewEagerBackend() Interface
NewEagerBackend creates EagerBackend instance
func NewMemcacheBackend ¶
NewMemcacheBackend creates MemcacheBackend instance
func NewMongodbBackend ¶
NewMongodbBackend creates MongodbBackend instance
type MemcacheBackend ¶
type MemcacheBackend struct {
// contains filtered or unexported fields
}
MemcacheBackend represents a Memcache result backend
func (*MemcacheBackend) GetState ¶
func (b *MemcacheBackend) GetState(taskUUID string) (*tasks.TaskState, error)
GetState returns the latest task state
func (*MemcacheBackend) GroupCompleted ¶
func (b *MemcacheBackend) GroupCompleted(groupUUID string, groupTaskCount int) (bool, error)
GroupCompleted returns true if all tasks in a group finished
func (*MemcacheBackend) GroupTaskStates ¶
func (b *MemcacheBackend) GroupTaskStates(groupUUID string, groupTaskCount int) ([]*tasks.TaskState, error)
GroupTaskStates returns states of all tasks in the group
func (*MemcacheBackend) InitGroup ¶
func (b *MemcacheBackend) InitGroup(groupUUID string, taskUUIDs []string) error
InitGroup creates and saves a group meta data object
func (*MemcacheBackend) PurgeGroupMeta ¶
func (b *MemcacheBackend) PurgeGroupMeta(groupUUID string) error
PurgeGroupMeta deletes stored group meta data
func (*MemcacheBackend) PurgeState ¶
func (b *MemcacheBackend) PurgeState(taskUUID string) error
PurgeState deletes stored task state
func (*MemcacheBackend) SetStateFailure ¶
func (b *MemcacheBackend) SetStateFailure(signature *tasks.Signature, err string) error
SetStateFailure updates task state to FAILURE
func (*MemcacheBackend) SetStatePending ¶
func (b *MemcacheBackend) SetStatePending(signature *tasks.Signature) error
SetStatePending updates task state to PENDING
func (*MemcacheBackend) SetStateReceived ¶
func (b *MemcacheBackend) SetStateReceived(signature *tasks.Signature) error
SetStateReceived updates task state to RECEIVED
func (*MemcacheBackend) SetStateRetry ¶
func (b *MemcacheBackend) SetStateRetry(signature *tasks.Signature) error
SetStateRetry updates task state to RETRY
func (*MemcacheBackend) SetStateStarted ¶
func (b *MemcacheBackend) SetStateStarted(signature *tasks.Signature) error
SetStateStarted updates task state to STARTED
func (*MemcacheBackend) SetStateSuccess ¶
func (b *MemcacheBackend) SetStateSuccess(signature *tasks.Signature, results []*tasks.TaskResult) error
SetStateSuccess updates task state to SUCCESS
func (*MemcacheBackend) TriggerChord ¶
func (b *MemcacheBackend) TriggerChord(groupUUID string) (bool, error)
TriggerChord flags chord as triggered in the backend storage to make sure chord is never trigerred multiple times. Returns a boolean flag to indicate whether the worker should trigger chord (true) or no if it has been triggered already (false)
type MongodbBackend ¶
type MongodbBackend struct {
// contains filtered or unexported fields
}
MongodbBackend represents a MongoDB result backend
func (*MongodbBackend) GetState ¶
func (b *MongodbBackend) GetState(taskUUID string) (*tasks.TaskState, error)
GetState returns the latest task state
func (*MongodbBackend) GroupCompleted ¶
func (b *MongodbBackend) GroupCompleted(groupUUID string, groupTaskCount int) (bool, error)
GroupCompleted returns true if all tasks in a group finished
func (*MongodbBackend) GroupTaskStates ¶
func (b *MongodbBackend) GroupTaskStates(groupUUID string, groupTaskCount int) ([]*tasks.TaskState, error)
GroupTaskStates returns states of all tasks in the group
func (*MongodbBackend) InitGroup ¶
func (b *MongodbBackend) InitGroup(groupUUID string, taskUUIDs []string) error
InitGroup creates and saves a group meta data object
func (*MongodbBackend) PurgeGroupMeta ¶
func (b *MongodbBackend) PurgeGroupMeta(groupUUID string) error
PurgeGroupMeta deletes stored group meta data
func (*MongodbBackend) PurgeState ¶
func (b *MongodbBackend) PurgeState(taskUUID string) error
PurgeState deletes stored task state
func (*MongodbBackend) SetStateFailure ¶
func (b *MongodbBackend) SetStateFailure(signature *tasks.Signature, err string) error
SetStateFailure updates task state to FAILURE
func (*MongodbBackend) SetStatePending ¶
func (b *MongodbBackend) SetStatePending(signature *tasks.Signature) error
SetStatePending updates task state to PENDING
func (*MongodbBackend) SetStateReceived ¶
func (b *MongodbBackend) SetStateReceived(signature *tasks.Signature) error
SetStateReceived updates task state to RECEIVED
func (*MongodbBackend) SetStateRetry ¶
func (b *MongodbBackend) SetStateRetry(signature *tasks.Signature) error
SetStateRetry updates task state to RETRY
func (*MongodbBackend) SetStateStarted ¶
func (b *MongodbBackend) SetStateStarted(signature *tasks.Signature) error
SetStateStarted updates task state to STARTED
func (*MongodbBackend) SetStateSuccess ¶
func (b *MongodbBackend) SetStateSuccess(signature *tasks.Signature, results []*tasks.TaskResult) error
SetStateSuccess updates task state to SUCCESS
func (*MongodbBackend) TriggerChord ¶
func (b *MongodbBackend) TriggerChord(groupUUID string) (bool, error)
TriggerChord flags chord as triggered in the backend storage to make sure chord is never trigerred multiple times. Returns a boolean flag to indicate whether the worker should trigger chord (true) or no if it has been triggered already (false)
type RedisBackend ¶
type RedisBackend struct { common.RedisConnector // contains filtered or unexported fields }
RedisBackend represents a Memcache result backend
func (*RedisBackend) GetState ¶
func (b *RedisBackend) GetState(taskUUID string) (*tasks.TaskState, error)
GetState returns the latest task state
func (*RedisBackend) GroupCompleted ¶
func (b *RedisBackend) GroupCompleted(groupUUID string, groupTaskCount int) (bool, error)
GroupCompleted returns true if all tasks in a group finished
func (*RedisBackend) GroupTaskStates ¶
func (b *RedisBackend) GroupTaskStates(groupUUID string, groupTaskCount int) ([]*tasks.TaskState, error)
GroupTaskStates returns states of all tasks in the group
func (*RedisBackend) InitGroup ¶
func (b *RedisBackend) InitGroup(groupUUID string, taskUUIDs []string) error
InitGroup creates and saves a group meta data object
func (*RedisBackend) PurgeGroupMeta ¶
func (b *RedisBackend) PurgeGroupMeta(groupUUID string) error
PurgeGroupMeta deletes stored group meta data
func (*RedisBackend) PurgeState ¶
func (b *RedisBackend) PurgeState(taskUUID string) error
PurgeState deletes stored task state
func (*RedisBackend) SetStateFailure ¶
func (b *RedisBackend) SetStateFailure(signature *tasks.Signature, err string) error
SetStateFailure updates task state to FAILURE
func (*RedisBackend) SetStatePending ¶
func (b *RedisBackend) SetStatePending(signature *tasks.Signature) error
SetStatePending updates task state to PENDING
func (*RedisBackend) SetStateReceived ¶
func (b *RedisBackend) SetStateReceived(signature *tasks.Signature) error
SetStateReceived updates task state to RECEIVED
func (*RedisBackend) SetStateRetry ¶
func (b *RedisBackend) SetStateRetry(signature *tasks.Signature) error
SetStateRetry updates task state to RETRY
func (*RedisBackend) SetStateStarted ¶
func (b *RedisBackend) SetStateStarted(signature *tasks.Signature) error
SetStateStarted updates task state to STARTED
func (*RedisBackend) SetStateSuccess ¶
func (b *RedisBackend) SetStateSuccess(signature *tasks.Signature, results []*tasks.TaskResult) error
SetStateSuccess updates task state to SUCCESS
func (*RedisBackend) TriggerChord ¶
func (b *RedisBackend) TriggerChord(groupUUID string) (bool, error)
TriggerChord flags chord as triggered in the backend storage to make sure chord is never trigerred multiple times. Returns a boolean flag to indicate whether the worker should trigger chord (true) or no if it has been triggered already (false)