common

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Sep 24, 2019 License: Apache-2.0 Imports: 9 Imported by: 18

Documentation

Overview

Defines a common set of filters that can be applied in queries for supported databases types.

Index

Constants

View Source
const (
	Execution          = "e"
	LaunchPlan         = "l"
	NodeExecution      = "ne"
	NodeExecutionEvent = "nee"
	Task               = "t"
	TaskExecution      = "te"
	Workflow           = "w"
)
View Source
const AllowedExecutionIDStartCharStr = "abcdefghijklmnopqrstuvwxyz"

In kubernetes, resource names must comply with this regex: '[a-z]([-a-z0-9]*[a-z0-9])?'

View Source
const AllowedExecutionIDStr = "abcdefghijklmnopqrstuvwxyz1234567890"
View Source
const EqualExpression = "eq"
View Source
const ExecutionIDLength = 10

Variables

View Source
var AllowedExecutionIDChars = []rune(AllowedExecutionIDStr)
View Source
var AllowedExecutionIDStartChars = []rune(AllowedExecutionIDStartCharStr)
View Source
var RuntimeTypeKey = contextutils.Key("runtime_type")
View Source
var RuntimeVersionKey = contextutils.Key("runtime_version")

Functions

func GetExecutionName

func GetExecutionName(seed int64) string

func GetInvalidRepeatedValueFilterErr

func GetInvalidRepeatedValueFilterErr(expression FilterExpression) error

func GetInvalidSingleValueFilterErr

func GetInvalidSingleValueFilterErr(expression FilterExpression) error

func GetUnsupportedFilterExpressionErr

func GetUnsupportedFilterExpressionErr(expression FilterExpression) error

func IsExecutionTerminal

func IsExecutionTerminal(phase core.WorkflowExecution_Phase) bool

func IsNodeExecutionTerminal

func IsNodeExecutionTerminal(phase core.NodeExecution_Phase) bool

func IsTaskExecutionTerminal

func IsTaskExecutionTerminal(phase core.TaskExecution_Phase) bool

Types

type CloudProvider

type CloudProvider = string
const (
	AWS   CloudProvider = "aws"
	Local CloudProvider = "local"
)

type Entity

type Entity = string

type FilterExpression

type FilterExpression int
const (
	Contains FilterExpression = iota
	GreaterThan
	GreaterThanOrEqual
	LessThan
	LessThanOrEqual
	Equal
	NotEqual
	ValueIn
)

Complete set of filters available for database queries.

type GormQueryExpr

type GormQueryExpr struct {
	Query string
	Args  interface{}
}

Container for arguments necessary to issue a GORM query.

type InlineFilter

type InlineFilter interface {
	// Returns the entity for which this filter should be applied.
	GetEntity() Entity
	// Generates fields necessary to add a filter to a gorm database query.
	GetGormQueryExpr() (GormQueryExpr, error)
	// Generates fields necessary to add a filter on a gorm database join query.
	GetGormJoinTableQueryExpr(tableName string) (GormQueryExpr, error)
}

Interface for a single filter expression.

func NewInlineFilter

func NewInlineFilter(entity Entity, function string, field string, value interface{}) (InlineFilter, error)

func NewRepeatedValueFilter

func NewRepeatedValueFilter(entity Entity, function FilterExpression, field string, repeatedValue interface{}) (InlineFilter, error)

Returns a filter which uses a repeated argument value.

func NewSingleValueFilter

func NewSingleValueFilter(entity Entity, function FilterExpression, field string, value interface{}) (InlineFilter, error)

Returns a filter which uses a single argument value.

type MapFilter

type MapFilter interface {
	GetFilter() map[string]interface{}
}

Interface for a map filter expression.

func NewMapFilter

func NewMapFilter(filter map[string]interface{}) MapFilter

type SortParameter

type SortParameter interface {
	GetGormOrderExpr() string
}

func NewSortParameter

func NewSortParameter(sort admin.Sort) (SortParameter, error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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