Packages
step_flow
1.7.1
1.9.0-rc2
1.9.0-rc1
1.9.0-rc0
1.8.2
1.8.1
1.8.1-rc8
1.8.1-rc7
1.8.1-rc6
1.8.1-rc5
1.8.1-rc4
1.8.1-rc3
1.8.1-rc2
1.8.1-rc1
1.8.1-rc0
1.8.0
1.8.0-rc3
1.8.0-rc2
1.8.0-rc1
1.8.0-rc0
1.7.3
1.7.3-rc4
1.7.3-rc3
1.7.3-rc2
1.7.3-rc1
1.7.3-rc0
1.7.2
1.7.2-rc4
1.7.2-rc3
1.7.2-rc2
1.7.2-rc1
1.7.2-rc0
1.7.1
1.7.0
1.7.0-rc1
1.7.0-rc0
1.6.1
1.6.1-rc1
1.6.1-rc0
1.6.0
1.6.0-rc9
1.6.0-rc8
1.6.0-rc7
1.6.0-rc6
1.6.0-rc5
1.6.0-rc4
1.6.0-rc3
1.6.0-rc20
1.6.0-rc2
1.6.0-rc19
1.6.0-rc18
1.6.0-rc17
1.6.0-rc16
1.6.0-rc15
1.6.0-rc14
1.6.0-rc13
1.6.0-rc12
1.6.0-rc11
1.6.0-rc10
1.6.0-rc1
1.5.0
1.5.0-rc1
1.4.2-rc2
1.4.2-rc1
1.4.1
1.4.1-rc1
1.4.0
1.4.0-rc4
1.4.0-rc3
1.4.0-rc2
1.4.0-rc1
1.3.1
1.3.0
1.3.0-rc
1.2.0
1.1.0
1.0.0
1.0.0-rc9
1.0.0-rc8
1.0.0-rc7
1.0.0-rc6
1.0.0-rc5
1.0.0-rc1
0.2.13
0.2.12
0.2.11
0.2.10
0.2.9
0.2.8
0.2.7
0.2.6
0.2.5
0.2.4
0.2.3
0.2.2
0.2.1
0.2.0
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
0.0.24
0.0.23
0.0.22
0.0.21
0.0.20
0.0.19
0.0.18
0.0.17
0.0.16
0.0.15
0.0.14
0.0.13
0.0.12
0.0.11
0.0.10
0.0.9
0.0.8
0.0.7
0.0.6
0.0.4
0.0.3
0.0.2
0.0.1
Step flow manager for Elixir applications
Current section
Files
Jump to
Current section
Files
lib/step_flow/web_controllers/durations.ex
defmodule StepFlow.WebController.Durations do
use StepFlow, :controller
use OpenApiSpex.ControllerSpecs
alias StepFlow.Controllers.Statistics.Durations
alias StepFlow.WebController.OpenApiSchemas
@moduledoc false
tags ["Durations"]
security [%{"authorization" => %OpenApiSpex.SecurityScheme{type: "http", scheme: "bearer"}}]
action_fallback(ExBackendWeb.WebController.Fallback)
operation :list_jobs_durations,
summary: "List jobs duration",
description: "List durations of all jobs (seconds)",
type: :object,
responses: [
ok: {"Durations", "application/json", OpenApiSchemas.Durations.Durations},
forbidden: "Forbidden"
]
def list_jobs_durations(%Plug.Conn{assigns: %{current_user: user}} = conn, params) do
durations =
params
|> Map.put("roles", user.roles)
|> Durations.list_durations_for_jobs()
conn
|> put_view(StepFlow.DurationsView)
|> render("index.json", durations: durations)
end
operation :list_workflows_durations,
summary: "List workflows duration",
description: "List durations of all workflows",
type: :object,
responses: [
ok: {"Durations", "application/json", OpenApiSchemas.Durations.Durations},
forbidden: "Forbidden"
]
def list_workflows_durations(%Plug.Conn{assigns: %{current_user: user}} = conn, params) do
durations =
params
|> Map.put("roles", user.roles)
|> Durations.list_durations_for_workflows()
conn
|> put_view(StepFlow.DurationsView)
|> render("index.json", durations: durations)
end
end