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<Nodes, 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<Nodes, 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<Nodes, 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
.