From 9e3acae887bc9063295a3c83b856bee21a3f89c5 Mon Sep 17 00:00:00 2001 From: Utkarsh Gupta Date: Wed, 31 Aug 2022 03:59:18 +0530 Subject: [PATCH] cluster_client: use nodes.first() instead of nodes.is_empty() --- redis/src/cluster_client.rs | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/redis/src/cluster_client.rs b/redis/src/cluster_client.rs index 0bd542e9c..e1d6b4ba3 100644 --- a/redis/src/cluster_client.rs +++ b/redis/src/cluster_client.rs @@ -41,22 +41,26 @@ impl ClusterClientBuilder { /// usernames, an error is returned. pub fn build(self) -> RedisResult { let mut initial_nodes = self.initial_nodes?; - if initial_nodes.is_empty() { - return Err(RedisError::from(( - ErrorKind::InvalidClientConfig, - "Initial nodes can't be empty.", - ))); - } + + let first_node = match initial_nodes.first() { + Some(node) => node, + None => { + return Err(RedisError::from(( + ErrorKind::InvalidClientConfig, + "Initial nodes can't be empty.", + ))) + } + }; let mut cluster_params = self.cluster_params; let password = if cluster_params.password.is_none() { - cluster_params.password = initial_nodes[0].redis.password.clone(); + cluster_params.password = first_node.redis.password.clone(); &cluster_params.password } else { &None }; let username = if cluster_params.username.is_none() { - cluster_params.username = initial_nodes[0].redis.username.clone(); + cluster_params.username = first_node.redis.username.clone(); &cluster_params.username } else { &None