FlowRunner.Spec.Container (flow_runner v6.15.1)

Copy Markdown

Container contains a set of flows and resources according to the Flow spec.

Summary

Functions

Cast the received fields to their internal representation

Load the map or list of maps into Elixir.FlowRunner.Spec.Container structs.

Validate a Elixir.FlowRunner.Spec.Container struct using Vex.validate

Types

t()

@type t() :: %FlowRunner.Spec.Container{
  description: String.t(),
  flows: [FlowRunner.Spec.Flow.t()],
  name: String.t(),
  resources: [FlowRunner.Spec.Resource.t()],
  specification_version: String.t(),
  uuid: String.t(),
  vendor_metadata: map()
}

Functions

cast!(module, map)

@spec cast!(module(), map()) :: map()

Cast the received fields to their internal representation

fetch_flow_by_uuid(container, uuid)

@spec fetch_flow_by_uuid(t(), String.t()) ::
  {:ok, t(), FlowRunner.Spec.Flow.t()} | {:error, String.t()}

fetch_resource_by_uuid(container, uuid)

@spec fetch_resource_by_uuid(t(), uuid :: String.t()) ::
  {:ok, FlowRunner.Spec.Resource.t()} | {:error, reason :: String.t()}

load!(blocks_module, list)

@spec load!(module(), map()) :: t()
@spec load!(module(), [map()]) :: [t()]

Load the map or list of maps into Elixir.FlowRunner.Spec.Container structs.

valid?(self)

validate!(blocks_module, impl)

@spec validate!(blocks_module :: module(), t()) :: t()

Validate a Elixir.FlowRunner.Spec.Container struct using Vex.validate