public static List<Host> validateAndParseHostsString(DescriptorProperties descriptorProperties) {
		final List<Host> hostList = new ArrayList<>();

		descriptorProperties.validateString(CONNECTOR_HOSTS, false, 1);
		final String hostsStr = descriptorProperties.getString(CONNECTOR_HOSTS);

		final String[] hosts = hostsStr.split(";");
		final String validationExceptionMessage = "Properties '" + CONNECTOR_HOSTS + "' format should " +
			"follow the format 'http://host_name:port', but is '" + hostsStr + "'.";

		if (hosts.length == 0) {
			throw new ValidationException(validationExceptionMessage);
		}
		for (String host : hosts) {
			try {
				final URL url = new URL(host);
				final String protocol = url.getProtocol();
				final String hostName = url.getHost();
				final int hostPort = url.getPort();

				if (StringUtils.isNullOrWhitespaceOnly(protocol) ||
					StringUtils.isNullOrWhitespaceOnly(hostName) ||
					-1 == hostPort) {
					throw new ValidationException(validationExceptionMessage);
				}

				hostList.add(new Host(hostName, hostPort, protocol));
			} catch (MalformedURLException e) {
				throw new ValidationException(validationExceptionMessage, e);
			}
		}
		return hostList;
	}
Parse Hosts String to list.

<p>Hosts String format was given as following:

<pre>
    connector.hosts = http://host_name:9092;http://host_name:9093
</pre>
elasticsearch5-xh/elasticsearch5-xh-sink/src/main/java/org/apache/flink/table/descriptors/ElasticsearchValidator.java