rafted_value v0.1.10 RaftedValue.Leadership

Summary

Functions

Type-aware getter for follower_responded_times

Type-aware setter for follower_responded_times

Type-aware getter for heartbeat_timer

Type-aware setter for heartbeat_timer

Creates a new instance of Elixir.RaftedValue.Leadership by using the given dict and the default value of each field. Returns {:ok, valid_struct} or {:error, reason}. The values in the dict are validated by each field’s validate/1 function

A variant of new/1 which returns t or raise if validation fails. In other words, new/1 followed by Croma.Result.get!/1

Type-aware getter for quorum_timer

Type-aware setter for quorum_timer

Type-aware getter for quorum_timer_started_at

Type-aware setter for quorum_timer_started_at

Updates an existing instance of Elixir.RaftedValue.Leadership with the given dict. The values in the dict are validated by each field’s validate/1 function. Returns {:ok, valid_struct} or {:error, reason}

A variant of update/2 which returns t or raise if validation fails. In other words, update/2 followed by Croma.Result.get!/1

Checks that the given dict is valid or not by using each field’s validate/1 function. Returns {:ok, valid_struct} or {:error, reason}

A variant of validate/1 which returns t or raise if validation fails. In other words, validate/1 followed by Croma.Result.get!/1

Types

t()
t() :: %RaftedValue.Leadership{follower_responded_times: Croma.Map.t, heartbeat_timer: Croma.Reference.t, quorum_timer: Croma.Reference.t, quorum_timer_started_at: Croma.Integer.t}

Functions

can_safely_remove?(l, members, follower, config)
follower_responded(leadership, members, follower, config)
follower_responded(l, members, follower, timestamp, config)
follower_responded(RaftedValue.Leadership.t, RaftedValue.Members.t, pid, nil | integer, RaftedValue.Config.t) :: t
follower_responded_times(leadership)
follower_responded_times(t) :: Croma.Map.t

Type-aware getter for follower_responded_times.

follower_responded_times(s, field)
follower_responded_times(t, Croma.Map.t) :: t

Type-aware setter for follower_responded_times.

heartbeat_timer(leadership)
heartbeat_timer(t) :: Croma.Reference.t

Type-aware getter for heartbeat_timer.

heartbeat_timer(s, field)
heartbeat_timer(t, Croma.Reference.t) :: t

Type-aware setter for heartbeat_timer.

lease_expired?(leadership, members, a2)
lease_expired?(t, RaftedValue.Members.t, RaftedValue.Config.t) :: boolean

Creates a new instance of Elixir.RaftedValue.Leadership by using the given dict and the default value of each field. Returns {:ok, valid_struct} or {:error, reason}. The values in the dict are validated by each field’s validate/1 function.

new!(dict)
new!(Dict.t) :: t

A variant of new/1 which returns t or raise if validation fails. In other words, new/1 followed by Croma.Result.get!/1.

new_for_leader(config)
new_for_leader(RaftedValue.Config.t) :: t
quorum_timer(leadership)
quorum_timer(t) :: Croma.Reference.t

Type-aware getter for quorum_timer.

quorum_timer(s, field)
quorum_timer(t, Croma.Reference.t) :: t

Type-aware setter for quorum_timer.

quorum_timer_started_at(leadership)
quorum_timer_started_at(t) :: Croma.Integer.t

Type-aware getter for quorum_timer_started_at.

quorum_timer_started_at(s, field)
quorum_timer_started_at(t, Croma.Integer.t) :: t

Type-aware setter for quorum_timer_started_at.

remove_follower_response_time_entry(leadership, follower)
remove_follower_response_time_entry(RaftedValue.Leadership.t, pid) :: t
reset_heartbeat_timer(l, config)
reset_heartbeat_timer(RaftedValue.Leadership.t, RaftedValue.Config.t) :: t
reset_quorum_timer(l, config)
stop_timers(a0)
stop_timers(RaftedValue.Leadership.t) :: :ok
unresponsive_followers(a0, members, config)

Updates an existing instance of Elixir.RaftedValue.Leadership with the given dict. The values in the dict are validated by each field’s validate/1 function. Returns {:ok, valid_struct} or {:error, reason}.

update!(s, dict)
update!(t, Dict.t) :: t

A variant of update/2 which returns t or raise if validation fails. In other words, update/2 followed by Croma.Result.get!/1.

Checks that the given dict is valid or not by using each field’s validate/1 function. Returns {:ok, valid_struct} or {:error, reason}.

validate!(dict)
validate!(Dict.t) :: t

A variant of validate/1 which returns t or raise if validation fails. In other words, validate/1 followed by Croma.Result.get!/1.