getHealthyRelays method

List<String> getHealthyRelays(
  1. List<String> availableRelays
)

Get all healthy relays sorted by load.

Implementation

List<String> getHealthyRelays(List<String> availableRelays) {
  final healthyRelays = availableRelays
      .where((url) => _relayHealth[url]?.isHealthy ?? true)
      .toList();

  healthyRelays.sort((a, b) {
    final aConnections = getActiveConnections(a);
    final bConnections = getActiveConnections(b);
    return aConnections.compareTo(bConnections);
  });

  return healthyRelays;
}