Entity representing a consistent hash ring.
The ring contains an implementation module, implementation state, and configuration.
Summary
Functions
Gets the configuration.
Gets the implementation module.
Gets the implementation state.
Gets the implementation module (alias).
Gets the implementation state (alias).
Checks if the given term is a valid ring.
Creates a new ring.
Updates the implementation state.
Types
@type t() :: %ExRingRing.Domain.Entities.Ring{ config: ExRingRing.Domain.ValueObjects.HashConfig.t(), impl_module: module(), impl_state: term() }
Functions
@spec get_config(t()) :: ExRingRing.Domain.ValueObjects.HashConfig.t()
Gets the configuration.
Gets the implementation module.
Gets the implementation state.
Gets the implementation module (alias).
Gets the implementation state (alias).
Checks if the given term is a valid ring.
@spec new(module(), term(), ExRingRing.Domain.ValueObjects.HashConfig.t()) :: t()
Creates a new ring.
Updates the implementation state.