Пример #1
0
		public ESNode(NodeDefinition nodeDefinition)
		{
			Enabled = nodeDefinition.Enabled;
			Host = nodeDefinition.Host;
			Port = nodeDefinition.Port;
//			Framed = nodeDefinition.IsFramed;
			DangerZoneThreshold = nodeDefinition.DangerZoneThreshold;
			DangerZoneSeconds = nodeDefinition.DangerZoneSeconds;
			ConnectionProvider = new ConnectionPool(nodeDefinition.Host, nodeDefinition.Port, nodeDefinition.ConnectionPool??ElasticSearchConfig.Instance.ConnectionPool,nodeDefinition.IsFramed);
		}
		private static List<string> BuildHttpNodes(NodeDefinition[] definitions)
		{
			var result = new List<string>();
			if (definitions != null && definitions.Length > 0)
			{
				foreach (NodeDefinition nodeDefinition in definitions)
				{
					if (nodeDefinition.Enabled)
					{
						if (nodeDefinition.Port <= 0||nodeDefinition.Port>65534)
						{
							nodeDefinition.Port = 80;
						}
						result.Add("http://" + nodeDefinition.Host.Trim() + ":" + nodeDefinition.Port);
					}
				}
			}
			return result;
		}
		private static List<ESNode> BuildThriftNodes(NodeDefinition[] definitions)
		{
			var result = new List<ESNode>();
			if (definitions != null && definitions.Length > 0)
			{
				foreach (NodeDefinition nodeDefinition in definitions)
				{
					if (nodeDefinition.Enabled)
					{
						result.Add(new ESNode(nodeDefinition));
					}
				}
			}
			return result;
		}