Current section

Files

Jump to
step_flow lib step_flow web_controllers workflow_status.ex
Raw

lib/step_flow/web_controllers/workflow_status.ex

defmodule StepFlow.WebController.WorkflowStatus do
use StepFlow, :controller
use OpenApiSpex.ControllerSpecs
require Logger
alias OpenApiSpex.Schema
alias StepFlow.Workflows.Status
@moduledoc false
tags ["Workflows"]
security [%{"authorization" => %OpenApiSpex.SecurityScheme{type: "http", scheme: "bearer"}}]
action_fallback(StepFlow.WebController.Fallback)
operation :list,
summary: "List workflows statuses",
description: "List workflows statuses",
type: :array,
items: %Schema{type: :string},
responses: [
ok: "Statuses"
]
def list(conn, _params) do
status =
Status.StateEnum.__valid_values__()
|> Enum.filter(fn value -> is_bitstring(value) end)
conn
|> json(status)
end
end