Package org.bitcoinj.net.discovery
Class DnsDiscovery
- java.lang.Object
-
- org.bitcoinj.net.discovery.MultiplexingDiscovery
-
- org.bitcoinj.net.discovery.DnsDiscovery
-
- All Implemented Interfaces:
PeerDiscovery
public class DnsDiscovery extends MultiplexingDiscovery
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.
PeerDiscovery.getPeers(long, long, 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).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DnsDiscovery.DnsSeedDiscovery
Implements discovery from a single DNS host.
-
Field Summary
-
Fields inherited from class org.bitcoinj.net.discovery.MultiplexingDiscovery
netParams, seeds
-
-
Constructor Summary
Constructors Constructor Description DnsDiscovery(java.lang.String[] dnsSeeds, NetworkParameters params)
Supports finding peers through DNS A records.DnsDiscovery(NetworkParameters netParams)
Supports finding peers through DNS A records.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.util.concurrent.ExecutorService
createExecutor()
-
Methods inherited from class org.bitcoinj.net.discovery.MultiplexingDiscovery
forServices, forServices, getPeers, shutdown
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.bitcoinj.net.discovery.PeerDiscovery
getPeers
-
-
-
-
Constructor Detail
-
DnsDiscovery
public DnsDiscovery(NetworkParameters netParams)
Supports finding peers through DNS A records. Community run DNS entry points will be used.- Parameters:
netParams
- Network parameters to be used for port information.
-
DnsDiscovery
public DnsDiscovery(java.lang.String[] dnsSeeds, NetworkParameters params)
Supports finding peers through DNS A records.- Parameters:
dnsSeeds
- Host names to be examined for seed addresses.params
- Network parameters to be used for port information.
-
-
Method Detail
-
createExecutor
protected java.util.concurrent.ExecutorService createExecutor()
- Overrides:
createExecutor
in classMultiplexingDiscovery
-
-