A set of hosts a ZooKeeper client should connect to.
Classes implementing this interface must guarantee the following:
* Every call to next() returns an InetSocketAddress. So the iterator never
ends.
* The size() of a HostProvider may never be zero.
A HostProvider must return resolved InetSocketAddress instances on next(),
but it's up to the HostProvider, when it wants to do the resolving.
Different HostProvider could be imagined:
* A HostProvider thrli>