engine

package
v0.0.0-...-d29d0de Latest Latest
Warning

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

Go to latest
Published: Dec 11, 2023 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PrintYamlPlotter

func PrintYamlPlotter(er *ExecutionResult, v common.Verbosity) error

Types

type Engine

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

func (*Engine) Run

func (e *Engine) Run(ast *language.AST, readers map[string]reader.Reader, v common.Verbosity) error

type ExecutionNode

type ExecutionNode struct {
	Type       topology.NamespacedType
	Profiles   []string
	Attrs      []string
	Conditions []reader.Condition
	Reader     reader.Reader
	// contains filtered or unexported fields
}

type ExecutionPlan

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

func DefaultExecutionPlanner

func DefaultExecutionPlanner(ast *language.AST, t *topology.Topology, readers map[string]reader.Reader) (*ExecutionPlan, error)
func (ep *ExecutionPlan) GetLinks(sourceNode *ExecutionNode) ([]Link, error)

type ExecutionPlanner

type ExecutionPlanner func(ast *language.AST, t *topology.Topology, readers map[string]reader.Reader) (*ExecutionPlan, error)

type ExecutionResult

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

todo extract interface

func ParallelExecutionRunner

func ParallelExecutionRunner(ep *ExecutionPlan) *ExecutionResult

func (*ExecutionResult) AddGroup

func (er *ExecutionResult) AddGroup(groupId string, group *ResultGroup)

func (*ExecutionResult) AddRootGroup

func (er *ExecutionResult) AddRootGroup(groupId string, group *ResultGroup)

func (*ExecutionResult) GetChildGroups

func (er *ExecutionResult) GetChildGroups(item *ResultItem) []*ResultGroup

func (*ExecutionResult) GetRootGroups

func (er *ExecutionResult) GetRootGroups() []*ResultGroup

func (*ExecutionResult) LinkItemToGroup

func (er *ExecutionResult) LinkItemToGroup(sourceItemId, targetGroupId string)

type ExecutionRunner

type ExecutionRunner func(*ExecutionPlan) *ExecutionResult

type ExecutionTask

type ExecutionTask struct {
	Id             string
	Type           string
	Profiles       []string
	Attrs          []string
	BaseConditions []reader.Condition
	LinkConditions []reader.Condition
	Reader         reader.Reader
	// contains filtered or unexported fields
}

type ExecutionTaskResult

type ExecutionTaskResult struct {
	Id    string
	Task  *ExecutionTask
	Items []*reader.Item
	Err   error
}
type Link struct {
	SourceNode *ExecutionNode
	TargetNode *ExecutionNode
	SourceAttr string
	TargetAttr string
}

type Plotter

type Plotter func(*ExecutionResult, common.Verbosity) error

type ResultGroup

type ResultGroup struct {
	Type           topology.NamespacedType
	Items          []*ResultItem
	LinkConditions []reader.Condition
	LinkError      error
}

type ResultItem

type ResultItem struct {
	Id         string
	Item       *reader.Item
	QueryError error
	LinkErrors []error

	GroupId string
}

Jump to

Keyboard shortcuts

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