public async Task <IList <Uri> > GetGateways()
        {
            Logger?.Debug($"{nameof(GetGateways)}");
            var all = await _table.ReadAll();

            var result = all.Members
                         .Where(x => x.Item1.Status == SiloStatus.Active && x.Item1.ProxyPort != 0)
                         .Select(x =>
            {
                x.Item1.SiloAddress.Endpoint.Port = x.Item1.ProxyPort;
                return(x.Item1.SiloAddress.ToGatewayUri());
            }).ToList();

            return(await Task.FromResult(result));
        }
        public async Task <IList <Uri> > GetGateways()
        {
            if (!_table.IsInitialized)
            {
                await _table.InitializeMembershipTable(true);
            }

            var all = await _table.ReadAll();

            var result = all.Members
                         .Where(x => x.Item1.Status == SiloStatus.Active && x.Item1.ProxyPort != 0)
                         .Select(x =>
            {
                x.Item1.SiloAddress.Endpoint.Port = x.Item1.ProxyPort;
                return(x.Item1.SiloAddress.ToGatewayUri());
            }).ToList();

            return(result);
        }