mirror of
https://github.com/Qortal/altcoinj.git
synced 2025-11-02 21:47:18 +00:00
Switch to using DNS for testnet discovery, as LFnet has gone away.
Put DNS seeds into NetworkParams. Deprecate IrcDiscovery and remove the unit tests for it. Update examples and tools to use DNS for everything. Resolves issue 299.
This commit is contained in:
@@ -19,7 +19,6 @@ package com.google.bitcoin.examples;
|
||||
import com.google.bitcoin.core.*;
|
||||
import com.google.bitcoin.crypto.KeyCrypterException;
|
||||
import com.google.bitcoin.discovery.DnsDiscovery;
|
||||
import com.google.bitcoin.discovery.IrcDiscovery;
|
||||
import com.google.bitcoin.store.BlockStore;
|
||||
import com.google.bitcoin.store.SPVBlockStore;
|
||||
import com.google.bitcoin.utils.BriefLogFormatter;
|
||||
@@ -101,11 +100,7 @@ public class PingService {
|
||||
chain = new BlockChain(params, wallet, blockStore);
|
||||
peerGroup = new PeerGroup(params, chain);
|
||||
peerGroup.setUserAgent("PingService", "1.0");
|
||||
if (testNet) {
|
||||
peerGroup.addPeerDiscovery(new IrcDiscovery("#bitcoinTEST3"));
|
||||
} else {
|
||||
peerGroup.addPeerDiscovery(new DnsDiscovery(params));
|
||||
}
|
||||
peerGroup.addPeerDiscovery(new DnsDiscovery(params));
|
||||
peerGroup.addWallet(wallet);
|
||||
|
||||
// We want to know when the balance changes.
|
||||
|
||||
@@ -20,7 +20,6 @@ import com.google.bitcoin.core.NetworkParameters;
|
||||
import com.google.bitcoin.core.TCPNetworkConnection;
|
||||
import com.google.bitcoin.core.VersionMessage;
|
||||
import com.google.bitcoin.discovery.DnsDiscovery;
|
||||
import com.google.bitcoin.discovery.IrcDiscovery;
|
||||
import com.google.bitcoin.discovery.PeerDiscoveryException;
|
||||
import com.google.bitcoin.utils.BriefLogFormatter;
|
||||
import com.google.common.collect.Lists;
|
||||
@@ -35,10 +34,10 @@ import java.util.List;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
/**
|
||||
* Prints a list of IP addresses connected to the rendezvous point on the LFnet IRC channel.
|
||||
* Prints a list of IP addresses obtained from DNS.
|
||||
*/
|
||||
public class PrintPeers {
|
||||
private static InetSocketAddress[] dnsPeers, ircPeers;
|
||||
private static InetSocketAddress[] dnsPeers;
|
||||
|
||||
private static void printElapsed(long start) {
|
||||
long now = System.currentTimeMillis();
|
||||
@@ -48,28 +47,10 @@ public class PrintPeers {
|
||||
private static void printPeers(InetSocketAddress[] addresses) {
|
||||
for (InetSocketAddress address : addresses) {
|
||||
String hostAddress = address.getAddress().getHostAddress();
|
||||
System.out.println(String.format("%s:%d", hostAddress.toString(), address.getPort()));
|
||||
System.out.println(String.format("%s:%d", hostAddress, address.getPort()));
|
||||
}
|
||||
}
|
||||
|
||||
private static void printIRC() throws PeerDiscoveryException {
|
||||
long start = System.currentTimeMillis();
|
||||
IrcDiscovery d = new IrcDiscovery("#bitcoinTEST3") {
|
||||
@Override
|
||||
protected void onIRCReceive(String message) {
|
||||
System.out.println("<- " + message);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onIRCSend(String message) {
|
||||
System.out.println("-> " + message);
|
||||
}
|
||||
};
|
||||
ircPeers = d.getPeers(10, TimeUnit.SECONDS);
|
||||
printPeers(ircPeers);
|
||||
printElapsed(start);
|
||||
}
|
||||
|
||||
private static void printDNS() throws PeerDiscoveryException {
|
||||
long start = System.currentTimeMillis();
|
||||
DnsDiscovery dns = new DnsDiscovery(NetworkParameters.prodNet());
|
||||
@@ -80,15 +61,12 @@ public class PrintPeers {
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
BriefLogFormatter.init();
|
||||
System.out.println("=== IRC ===");
|
||||
printIRC();
|
||||
System.out.println("=== DNS ===");
|
||||
printDNS();
|
||||
System.out.println("=== Version/chain heights ===");
|
||||
|
||||
ArrayList<InetAddress> addrs = new ArrayList<InetAddress>();
|
||||
for (InetSocketAddress peer : dnsPeers) addrs.add(peer.getAddress());
|
||||
for (InetSocketAddress peer : ircPeers) addrs.add(peer.getAddress());
|
||||
System.out.println("Scanning " + addrs.size() + " peers:");
|
||||
|
||||
final NetworkParameters params = NetworkParameters.prodNet();
|
||||
|
||||
@@ -18,8 +18,6 @@ package com.google.bitcoin.examples.toywallet;
|
||||
|
||||
import com.google.bitcoin.core.*;
|
||||
import com.google.bitcoin.discovery.DnsDiscovery;
|
||||
import com.google.bitcoin.discovery.IrcDiscovery;
|
||||
import com.google.bitcoin.store.BoundedOverheadBlockStore;
|
||||
import com.google.bitcoin.store.H2FullPrunedBlockStore;
|
||||
import com.google.bitcoin.store.SPVBlockStore;
|
||||
import com.google.bitcoin.utils.BriefLogFormatter;
|
||||
@@ -174,11 +172,7 @@ public class ToyWallet {
|
||||
|
||||
peerGroup = new PeerGroup(params, chain);
|
||||
peerGroup.setUserAgent("ToyWallet", "1.0");
|
||||
if (testnet) {
|
||||
peerGroup.addPeerDiscovery(new IrcDiscovery("#bitcoinTEST3"));
|
||||
} else {
|
||||
peerGroup.addPeerDiscovery(new DnsDiscovery(params));
|
||||
}
|
||||
peerGroup.addPeerDiscovery(new DnsDiscovery(params));
|
||||
peerGroup.addWallet(wallet);
|
||||
|
||||
// Watch for peers coming and going so we can update the UI.
|
||||
|
||||
Reference in New Issue
Block a user