Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Arazzo ¶
type Arazzo struct {
marshaller.CoreModel `model:"arazzo"`
Arazzo marshaller.Node[string] `key:"arazzo"`
Info marshaller.Node[Info] `key:"info"`
SourceDescriptions marshaller.Node[[]*SourceDescription] `key:"sourceDescriptions" required:"true"`
Workflows marshaller.Node[[]*Workflow] `key:"workflows" required:"true"`
Components marshaller.Node[*Components] `key:"components"`
Extensions core.Extensions `key:"extensions"`
}
type Components ¶
type Components struct {
marshaller.CoreModel `model:"components"`
Inputs marshaller.Node[*sequencedmap.Map[string, core.JSONSchema]] `key:"inputs"`
Parameters marshaller.Node[*sequencedmap.Map[string, *Parameter]] `key:"parameters"`
SuccessActions marshaller.Node[*sequencedmap.Map[string, *SuccessAction]] `key:"successActions"`
FailureActions marshaller.Node[*sequencedmap.Map[string, *FailureAction]] `key:"failureActions"`
Extensions coreExtensions.Extensions `key:"extensions"`
}
type Criterion ¶
type Criterion struct {
marshaller.CoreModel `model:"criterion"`
Context marshaller.Node[*string] `key:"context"`
Condition marshaller.Node[string] `key:"condition"`
Type marshaller.Node[CriterionTypeUnion] `key:"type" required:"false"`
Extensions core.Extensions `key:"extensions"`
}
type CriterionExpressionType ¶
type CriterionExpressionType struct {
marshaller.CoreModel `model:"criterionExpressionType"`
Type marshaller.Node[string] `key:"type"`
Version marshaller.Node[string] `key:"version"`
}
type CriterionTypeUnion ¶
type CriterionTypeUnion struct {
marshaller.CoreModel `model:"criterionTypeUnion"`
Type *string
ExpressionType *CriterionExpressionType
}
func (*CriterionTypeUnion) SyncChanges ¶
func (c *CriterionTypeUnion) SyncChanges(ctx context.Context, model any, valueNode *yaml.Node) (*yaml.Node, error)
type FailureAction ¶
type FailureAction struct {
marshaller.CoreModel `model:"failureAction"`
Name marshaller.Node[string] `key:"name"`
Type marshaller.Node[string] `key:"type"`
WorkflowID marshaller.Node[*string] `key:"workflowId"`
StepID marshaller.Node[*string] `key:"stepId"`
RetryAfter marshaller.Node[*float64] `key:"retryAfter"`
RetryLimit marshaller.Node[*int] `key:"retryLimit"`
Criteria marshaller.Node[[]*Criterion] `key:"criteria"`
Extensions core.Extensions `key:"extensions"`
}
type Info ¶
type Info struct {
marshaller.CoreModel `model:"info"`
Title marshaller.Node[string] `key:"title"`
Summary marshaller.Node[*string] `key:"summary"`
Description marshaller.Node[*string] `key:"description"`
Version marshaller.Node[string] `key:"version"`
Extensions core.Extensions `key:"extensions"`
}
type Outputs ¶
type Outputs = *sequencedmap.Map[string, marshaller.Node[string]]
type Parameter ¶
type Parameter struct {
marshaller.CoreModel `model:"parameter"`
Name marshaller.Node[string] `key:"name"`
In marshaller.Node[*string] `key:"in"`
Value marshaller.Node[expression.ValueOrExpression] `key:"value" required:"true"`
Extensions core.Extensions `key:"extensions"`
}
type PayloadReplacement ¶
type PayloadReplacement struct {
marshaller.CoreModel `model:"payloadReplacement"`
Target marshaller.Node[string] `key:"target"`
Value marshaller.Node[expression.ValueOrExpression] `key:"value" required:"true"`
Extensions core.Extensions `key:"extensions"`
}
type RequestBody ¶
type RequestBody struct {
marshaller.CoreModel `model:"requestBody"`
ContentType marshaller.Node[*string] `key:"contentType"`
Payload marshaller.Node[expression.ValueOrExpression] `key:"payload"`
Replacements marshaller.Node[[]*PayloadReplacement] `key:"replacements"`
Extensions core.Extensions `key:"extensions"`
}
type Reusable ¶
type Reusable[T marshaller.CoreModeler] struct { marshaller.CoreModel `model:"reusable"` Reference marshaller.Node[*string] `key:"reference"` Value marshaller.Node[values.Value] `key:"value"` Object T `populatorValue:"true"` }
func (*Reusable[T]) SyncChanges ¶
type SourceDescription ¶
type SourceDescription struct {
marshaller.CoreModel `model:"sourceDescription"`
Name marshaller.Node[string] `key:"name"`
URL marshaller.Node[string] `key:"url"`
Type marshaller.Node[string] `key:"type"`
Extensions core.Extensions `key:"extensions"`
}
type Step ¶
type Step struct {
marshaller.CoreModel `model:"step"`
StepID marshaller.Node[string] `key:"stepId"`
Description marshaller.Node[*string] `key:"description"`
OperationID marshaller.Node[*string] `key:"operationId"`
OperationPath marshaller.Node[*string] `key:"operationPath"`
WorkflowID marshaller.Node[*string] `key:"workflowId"`
Parameters marshaller.Node[[]*Reusable[*Parameter]] `key:"parameters"`
RequestBody marshaller.Node[*RequestBody] `key:"requestBody"`
SuccessCriteria marshaller.Node[[]*Criterion] `key:"successCriteria"`
OnSuccess marshaller.Node[[]*Reusable[*SuccessAction]] `key:"onSuccess"`
OnFailure marshaller.Node[[]*Reusable[*FailureAction]] `key:"onFailure"`
Outputs marshaller.Node[Outputs] `key:"outputs"`
Extensions core.Extensions `key:"extensions"`
}
type SuccessAction ¶
type SuccessAction struct {
marshaller.CoreModel `model:"successAction"`
Name marshaller.Node[string] `key:"name"`
Type marshaller.Node[string] `key:"type"`
WorkflowID marshaller.Node[*string] `key:"workflowId"`
StepID marshaller.Node[*string] `key:"stepId"`
Criteria marshaller.Node[[]*Criterion] `key:"criteria"`
Extensions core.Extensions `key:"extensions"`
}
type Workflow ¶
type Workflow struct {
marshaller.CoreModel `model:"workflow"`
WorkflowID marshaller.Node[string] `key:"workflowId"`
Summary marshaller.Node[*string] `key:"summary"`
Description marshaller.Node[*string] `key:"description"`
Parameters marshaller.Node[[]*Reusable[*Parameter]] `key:"parameters"`
Inputs marshaller.Node[core.JSONSchema] `key:"inputs"`
DependsOn marshaller.Node[[]marshaller.Node[string]] `key:"dependsOn"`
Steps marshaller.Node[[]*Step] `key:"steps" required:"true"`
SuccessActions marshaller.Node[[]*Reusable[*SuccessAction]] `key:"successActions"`
FailureActions marshaller.Node[[]*Reusable[*FailureAction]] `key:"failureActions"`
Outputs marshaller.Node[Outputs] `key:"outputs"`
Extensions coreExtensions.Extensions `key:"extensions"`
}
Click to show internal directories.
Click to hide internal directories.