public class DnsDiscovery extends Object implements PeerDiscovery
Supports peer discovery through DNS.
Failure to resolve individual host names will not cause an Exception to be thrown. However, if all hosts passed fail to resolve a PeerDiscoveryException will be thrown during getPeers().
DNS seeds do not attempt to enumerate every peer on the network. getPeers(long, java.util.concurrent.TimeUnit)
will return up to 30 random peers from the set of those returned within the timeout period. If you want more peers
to connect to, you need to discover them via other means (like addr broadcasts).
Constructor and Description |
---|
DnsDiscovery(NetworkParameters netParams)
Supports finding peers through DNS A records.
|
DnsDiscovery(String[] hostNames,
NetworkParameters netParams)
Supports finding peers through DNS A records.
|
Modifier and Type | Method and Description |
---|---|
InetSocketAddress[] |
getPeers(long timeoutValue,
TimeUnit timeoutUnit)
Returns an array of addresses.
|
void |
shutdown()
We don't have a way to abort a DNS lookup, so this does nothing
|
public DnsDiscovery(NetworkParameters netParams)
netParams
- Network parameters to be used for port information.public DnsDiscovery(String[] hostNames, NetworkParameters netParams)
hostNames
- Host names to be examined for seed addresses.netParams
- Network parameters to be used for port information.public InetSocketAddress[] getPeers(long timeoutValue, TimeUnit timeoutUnit) throws PeerDiscoveryException
PeerDiscovery
getPeers
in interface PeerDiscovery
PeerDiscoveryException
public void shutdown()
shutdown
in interface PeerDiscovery
Copyright © 2014. All rights reserved.