pub fn set_node_state(&self, addr: SocketAddr, state: AddressState, services: u64) -> AddressState {
let mut nodes_lock = self.nodes.write().unwrap();
let nodes = nodes_lock.borrow_mut();
pub fn set_node_state(&self, addr: SocketAddr, state: AddressState, services: u64) -> AddressState {
let mut nodes_lock = self.nodes.write().unwrap();
let nodes = nodes_lock.borrow_mut();
if (state_ref.state == AddressState::Good || state_ref.state == AddressState::WasGood)
&& state != AddressState::Good
&& state_ref.last_good >= now - Duration::from_secs(self.get_u64(U64Setting::WasGoodTimeout)) {
if (state_ref.state == AddressState::Good || state_ref.state == AddressState::WasGood)
&& state != AddressState::Good
&& state_ref.last_good >= now - Duration::from_secs(self.get_u64(U64Setting::WasGoodTimeout)) {