public void RemoveServiceNode(string serviceName, ConsulEndPoint endPoint) { var index = _serviceNodes[serviceName].FindIndex(ep => ep.HostName == endPoint.HostName && ep.Port == endPoint.Port); if (index < 0) { throw new Exception($"Endpoint not exists for service {serviceName}, cannot remove it"); } _serviceNodes[serviceName].RemoveAt(index); IncreaseHealthModifyIndex(); }
public void AddServiceEndpoint(string serviceName, ConsulEndPoint endPoint) { _serviceNodes.TryAdd(serviceName, new List <ConsulEndPoint>()); _serviceNodes[serviceName].Add(endPoint); if (endPoint.Version != null && !_serviceActiveVersion.TryGetValue(serviceName, out string _)) { SetServiceVersion(serviceName, endPoint.Version); } IncreaseHealthModifyIndex(); }