interfaces

package
v0.1.4 Latest Latest
Warning

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

Go to latest
Published: Nov 8, 2019 License: Apache-2.0 Imports: 4 Imported by: 15

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ExecutionCollectionOutput

type ExecutionCollectionOutput struct {
	Executions []models.Execution
}

Response format for a query on workflows.

type ExecutionRepoInterface

type ExecutionRepoInterface interface {
	// Inserts a workflow execution model into the database store.
	Create(ctx context.Context, input models.Execution) error
	// Updates an existing execution in the database store with all non-empty fields in the input.
	// This execution and event correspond to entire graph (workflow) executions.
	Update(ctx context.Context, event models.ExecutionEvent, execution models.Execution) error
	// This updates only an existing execution model with all non-empty fields in the input.
	UpdateExecution(ctx context.Context, execution models.Execution) error
	// Returns a matching execution if it exists.
	Get(ctx context.Context, input GetResourceInput) (models.Execution, error)
	// Return a matching execution if it exists
	GetByID(ctx context.Context, id uint) (models.Execution, error)
	// Returns executions matching query parameters. A limit must be provided for the results page size.
	List(ctx context.Context, input ListResourceInput) (ExecutionCollectionOutput, error)
}

Defines the interface for interacting with workflow execution models.

type GetNodeExecutionInput

type GetNodeExecutionInput struct {
	NodeExecutionIdentifier core.NodeExecutionIdentifier
}

type GetResourceInput

type GetResourceInput struct {
	Project string
	Domain  string
	Name    string
	Version string
}

Parameters for getting an individual resource.

type GetTaskExecutionInput

type GetTaskExecutionInput struct {
	TaskExecutionID core.TaskExecutionIdentifier
}

type LaunchPlanCollectionOutput

type LaunchPlanCollectionOutput struct {
	LaunchPlans []models.LaunchPlan
}

Response format for a query on workflows.

type LaunchPlanRepoInterface

type LaunchPlanRepoInterface interface {
	// Inserts a launch plan model into the database store.
	Create(ctx context.Context, input models.LaunchPlan) error
	// Updates an existing launch plan in the database store.
	Update(ctx context.Context, input models.LaunchPlan) error
	// Sets the state to active for an existing launch plan in the database store
	// (and deactivates the formerly active version if the toDisable model exists).
	SetActive(ctx context.Context, toEnable models.LaunchPlan, toDisable *models.LaunchPlan) error
	// Returns a matching launch plan if it exists.
	Get(ctx context.Context, input GetResourceInput) (models.LaunchPlan, error)
	// Returns launch plan revisions matching query parameters. A limit must be provided for the results page size.
	List(ctx context.Context, input ListResourceInput) (LaunchPlanCollectionOutput, error)
	// Returns a list of identifiers for launch plans.  A limit must be provided for the results page size.
	ListLaunchPlanIdentifiers(ctx context.Context, input ListResourceInput) (LaunchPlanCollectionOutput, error)
}

Defines the interface for interacting with launch plan models.

type ListResourceInput

type ListResourceInput struct {
	Limit         int
	Offset        int
	InlineFilters []common.InlineFilter
	// MapFilters refers to primary entity filters defined as map values rather than inline sql queries.
	// These exist to permit filtering on "IS NULL" which isn't permitted with inline filter queries and
	// pq driver value substitution.
	MapFilters    []common.MapFilter
	SortParameter common.SortParameter
}

Parameters for querying multiple resources.

type NodeExecutionCollectionOutput

type NodeExecutionCollectionOutput struct {
	NodeExecutions []models.NodeExecution
}

Response format for a query on node executions.

type NodeExecutionEventCollectionOutput

type NodeExecutionEventCollectionOutput struct {
	NodeExecutionEvents []models.NodeExecutionEvent
}

Response format for a query on node execution events.

type NodeExecutionRepoInterface

type NodeExecutionRepoInterface interface {
	// Inserts a new node execution model and the first event that triggers it into the database store.
	Create(ctx context.Context, event *models.NodeExecutionEvent, execution *models.NodeExecution) error
	// Updates an existing node execution in the database store with all non-empty fields in the input.
	// This execution and event correspond to entire graph (workflow) executions.
	Update(ctx context.Context, event *models.NodeExecutionEvent, execution *models.NodeExecution) error
	// Returns a matching execution if it exists.
	Get(ctx context.Context, input GetNodeExecutionInput) (models.NodeExecution, error)
	// Returns node executions matching query parameters. A limit must be provided for the results page size.
	List(ctx context.Context, input ListResourceInput) (NodeExecutionCollectionOutput, error)
	// Return node execution events matching query parameters. A limit must be provided for the results page size.
	ListEvents(ctx context.Context, input ListResourceInput) (NodeExecutionEventCollectionOutput, error)
}

Defines the interface for interacting with node execution models.

type ProjectDomainRepoInterface added in v0.1.4

type ProjectDomainRepoInterface interface {
	// Inserts or updates an existing ProjectDomain model into the database store.
	CreateOrUpdate(ctx context.Context, input models.ProjectDomain) error
	// Returns a matching project when it exists.
	Get(ctx context.Context, project, domain string) (models.ProjectDomain, error)
}

type ProjectRepoInterface

type ProjectRepoInterface interface {
	// Inserts a namespace model into the database store.
	Create(ctx context.Context, project models.Project) error
	// Returns a matching project when it exists.
	Get(ctx context.Context, projectID string) (models.Project, error)
	// Lists unique projects registered as namespaces
	ListAll(ctx context.Context, sortParameter common.SortParameter) ([]models.Project, error)
}

type SetStateInput

type SetStateInput struct {
	Identifier core.Identifier
	Version    string
	Closure    []byte
}

type TaskCollectionOutput

type TaskCollectionOutput struct {
	Tasks []models.Task
}

Response format for a query on tasks.

type TaskExecutionCollectionOutput

type TaskExecutionCollectionOutput struct {
	TaskExecutions []models.TaskExecution
}

Response format for a query on task executions.

type TaskExecutionRepoInterface

type TaskExecutionRepoInterface interface {
	// Inserts a task execution model into the database store.
	Create(ctx context.Context, input models.TaskExecution) error
	// Updates an existing task execution in the database store with all non-empty fields in the input.
	Update(ctx context.Context, execution models.TaskExecution) error
	// Returns a matching execution if it exists.
	Get(ctx context.Context, input GetTaskExecutionInput) (models.TaskExecution, error)
	// Returns task executions matching query parameters. A limit must be provided for the results page size.
	List(ctx context.Context, input ListResourceInput) (TaskExecutionCollectionOutput, error)
}

Defines the interface for interacting with task execution models.

type TaskRepoInterface

type TaskRepoInterface interface {
	// Inserts a task model into the database store.
	Create(ctx context.Context, input models.Task) error
	// Returns a matching task if it exists.
	Get(ctx context.Context, input GetResourceInput) (models.Task, error)
	// Returns task revisions matching query parameters. A limit must be provided for the results page size.
	List(ctx context.Context, input ListResourceInput) (TaskCollectionOutput, error)
	// Returns tasks with only the project, name, and domain filled in.
	// A limit must be provided.
	ListTaskIdentifiers(ctx context.Context, input ListResourceInput) (TaskCollectionOutput, error)
}

Defines the interface for interacting with Task models.

type UpdateResourceInput

type UpdateResourceInput struct {
	Filters    []common.InlineFilter
	Attributes map[string]interface{}
}

Describes a set of resources for which to apply attribute updates.

type WorkflowCollectionOutput

type WorkflowCollectionOutput struct {
	Workflows []models.Workflow
}

Response format for a query on workflows.

type WorkflowRepoInterface

type WorkflowRepoInterface interface {
	// Inserts a workflow model into the database store.
	Create(ctx context.Context, input models.Workflow) error
	// Returns a matching workflow if it exists.
	Get(ctx context.Context, input GetResourceInput) (models.Workflow, error)
	// Returns workflow revisions matching query parameters. A limit must be provided for the results page size.
	List(ctx context.Context, input ListResourceInput) (WorkflowCollectionOutput, error)
	ListIdentifiers(ctx context.Context, input ListResourceInput) (WorkflowCollectionOutput, error)
}

Defines the interface for interacting with Workflow models.

Jump to

Keyboard shortcuts

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