Trait datacake_node::NodeSelector
source · pub trait NodeSelector {
// Required method
fn select_nodes(
&mut self,
local_node: SocketAddr,
local_dc: &str,
total_nodes: usize,
data_centers: &mut BTreeMap<Cow<'static, str>, NodeCycler>,
consistency: Consistency
) -> Result<Vec<SocketAddr>, ConsistencyError>;
}Required Methods§
sourcefn select_nodes(
&mut self,
local_node: SocketAddr,
local_dc: &str,
total_nodes: usize,
data_centers: &mut BTreeMap<Cow<'static, str>, NodeCycler>,
consistency: Consistency
) -> Result<Vec<SocketAddr>, ConsistencyError>
fn select_nodes( &mut self, local_node: SocketAddr, local_dc: &str, total_nodes: usize, data_centers: &mut BTreeMap<Cow<'static, str>, NodeCycler>, consistency: Consistency ) -> Result<Vec<SocketAddr>, ConsistencyError>
Produces a set of node addresses based on the desired consistency level.
A set of nodes are provided with a mapping of data_center -> node_addresses.