TaskServer (fnord v0.8.27)

View Source

Summary

Types

t()

@type t() :: %TaskServer{
  lists: %{required(non_neg_integer()) => [task()]},
  next_id: non_neg_integer()
}

task()

@type task() :: %{
  id: non_neg_integer() | binary(),
  outcome: :todo | :done | :failed,
  data: any(),
  result: any()
}

Functions

add_task(list_id, task_id, task_data)

@spec add_task(non_neg_integer(), binary(), any()) :: :ok

as_string(subject, detail? \\ false)

@spec as_string(non_neg_integer() | [task()], boolean()) :: binary()

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

complete_task(list_id, task_id, result)

@spec complete_task(non_neg_integer(), binary(), any()) :: :ok

fail_task(list_id, task_id, msg)

@spec fail_task(non_neg_integer(), binary(), any()) :: :ok

get_list(list_id)

@spec get_list(non_neg_integer()) :: [task()] | {:error, :not_found}

init(_)

Callback implementation for GenServer.init/1.

start_link(opts \\ [])

@spec start_link(any()) :: GenServer.on_start()

start_list()

@spec start_list() :: non_neg_integer()