storage

package
v0.0.0-...-6fe1999 Latest Latest
Warning

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

Go to latest
Published: Sep 13, 2020 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DataStore

type DataStore interface {
	AddDag(cxt context.Context, dag *core.DAG)
	AddTask(cxt context.Context, task core.TaskInterface)
	AddDagRun(cxt context.Context, dag *core.DAG, schTime time.Time)
	AddOrUpdateTaskInstance(cxt context.Context, taskInstance *core.TaskInstance, dag *core.DAG)
	GetDag(cxt context.Context, dagName string) *core.DAG
	GetDagLastRun(cxt context.Context, dagName string) (schTime time.Time, complete bool)
	// GetTask(taskName string) *core.TaskInterface
	// GetAllTasks(dagName string) []*core.TaskInterface
	// GetTaskInstances(dagRunTime string)
	UpdateDagRunToComplete(cxt context.Context, dag *core.DAG, schTime time.Time)
	GetTaskInstances(cxt context.Context, dag *core.DAG, dagRunTime time.Time) map[string]*core.TaskInstance
	GetAllDags(cxt context.Context) chan *core.DAG
}

DataStore is the common interface which should be implemented to interact for persistence in different data stores, eg: redis, mysql. NOTE: They should be threadsafe to use. TODO: Add context to every method in this interface.

func DataStoreClient

func DataStoreClient() DataStore

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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