public Task Regist(IEnumerable <Assembly> assemblyList, ServiceAddress serverAddress) { foreach (var assembly in assemblyList) { var serviveName = assembly.ServiceName(); Regist(serviveName, serverAddress); } return(Task.CompletedTask); }
public void Regist(string serviceName, ServiceAddress address) { Logger?.LogInformation($"regist service:{serviceName},{address}"); if (!_serviceCenter.TryGetValue(serviceName, out var list)) { list = new List <ServiceAddress>(); } list.Add(address); _serviceCenter[serviceName] = list; }
public static EndPoint ToEndPoint(this ServiceAddress address, bool isServer = true) { var service = isServer ? address.Host : address.Service; if (string.IsNullOrWhiteSpace(service) || service == "localhost") { return(new IPEndPoint(IPAddress.Any, address.Port)); } if (service.IsIp()) { return(new IPEndPoint(IPAddress.Parse(service), address.Port)); } return(new DnsEndPoint(service, address.Port)); }
public static string ToJson(this ServiceAddress address) { return(JsonConvert.SerializeObject(address)); }
public static string Address(this ServiceAddress address) { return($"{address.Protocol.ToString().ToLower()}://{address.IpAddress}"); }
public abstract Task Regist(IEnumerable <Assembly> assemblyList, ServiceAddress serverAddress);