diff --git a/doc/bitsquare.conf b/doc/bitsquare.conf index 76dd87bf9c..2a4da4ad8d 100644 --- a/doc/bitsquare.conf +++ b/doc/bitsquare.conf @@ -17,6 +17,6 @@ # Supported properties: -# networkType=regtest | testnet | mainnet +# bitcoin.network=regtest | testnet | mainnet -networkType=regtest +bitcoin.network=regtest diff --git a/src/main/java/io/bitsquare/app/ArgumentParser.java b/src/main/java/io/bitsquare/app/ArgumentParser.java index 0b5ca26f0d..e3a847d77e 100644 --- a/src/main/java/io/bitsquare/app/ArgumentParser.java +++ b/src/main/java/io/bitsquare/app/ArgumentParser.java @@ -17,6 +17,7 @@ package io.bitsquare.app; +import io.bitsquare.btc.BitcoinModule; import io.bitsquare.network.Node; import net.sourceforge.argparse4j.ArgumentParsers; @@ -53,6 +54,10 @@ public class ArgumentParser { parser.addArgument("--" + NETWORK_INTERFACE_KEY) .help("Network interface"); + parser.addArgument("--" + BitcoinModule.BITCOIN_NETWORK_KEY) + .setDefault(BitcoinModule.DEFAULT_BITCOIN_NETWORK.toString()) + .help("Bitcoin network to use"); + // Args for app config parser.addArgument("-n", "--" + APP_NAME_KEY) .help("Name to append to default application name"); diff --git a/src/main/java/io/bitsquare/app/gui/Main.java b/src/main/java/io/bitsquare/app/gui/Main.java index fadb2288b8..ded08d0aa6 100644 --- a/src/main/java/io/bitsquare/app/gui/Main.java +++ b/src/main/java/io/bitsquare/app/gui/Main.java @@ -50,6 +50,7 @@ import lighthouse.files.AppDirectory; import net.sourceforge.argparse4j.inf.Namespace; import static io.bitsquare.app.AppModule.APP_NAME_KEY; +import static io.bitsquare.btc.BitcoinModule.BITCOIN_NETWORK_KEY; import static io.bitsquare.msg.tomp2p.TomP2PMessageModule.*; import static io.bitsquare.network.Node.*; @@ -89,6 +90,9 @@ public class Main extends Application { if (argumentsNamespace.getString(NETWORK_INTERFACE_KEY) != null) properties.setProperty(NETWORK_INTERFACE_KEY, argumentsNamespace.getString(NETWORK_INTERFACE_KEY)); + if (argumentsNamespace.getString(BITCOIN_NETWORK_KEY) != null) + properties.setProperty(BITCOIN_NETWORK_KEY, argumentsNamespace.getString(BITCOIN_NETWORK_KEY)); + Application.launch(Main.class, args); } diff --git a/src/main/java/io/bitsquare/btc/BitcoinModule.java b/src/main/java/io/bitsquare/btc/BitcoinModule.java index 15794095bb..c43edba080 100644 --- a/src/main/java/io/bitsquare/btc/BitcoinModule.java +++ b/src/main/java/io/bitsquare/btc/BitcoinModule.java @@ -30,17 +30,11 @@ import java.util.Properties; public class BitcoinModule extends BitsquareModule { - private static final BitcoinNetwork DEFAULT_NETWORK = BitcoinNetwork.TESTNET; - - private final BitcoinNetwork network; + public static final String BITCOIN_NETWORK_KEY = "bitcoin.network"; + public static final String DEFAULT_BITCOIN_NETWORK = BitcoinNetwork.TESTNET.toString(); public BitcoinModule(Properties properties) { - this(properties, DEFAULT_NETWORK); - } - - public BitcoinModule(Properties properties, BitcoinNetwork network) { super(properties); - this.network = network; } @Override @@ -57,9 +51,10 @@ public class BitcoinModule extends BitsquareModule { } private NetworkParameters network() { - String networkName = properties.getProperty("networkType", network.name()); + BitcoinNetwork network = BitcoinNetwork.valueOf( + properties.getProperty(BITCOIN_NETWORK_KEY, DEFAULT_BITCOIN_NETWORK).toUpperCase()); - switch (BitcoinNetwork.valueOf(networkName.toUpperCase())) { + switch (network) { case MAINNET: return MainNetParams.get(); case TESTNET: @@ -67,7 +62,7 @@ public class BitcoinModule extends BitsquareModule { case REGTEST: return RegTestParams.get(); default: - throw new IllegalArgumentException("Unknown bitcoin network name: " + networkName); + throw new IllegalArgumentException("Unknown bitcoin network: " + network); } } } diff --git a/src/main/java/io/bitsquare/btc/BitcoinNetwork.java b/src/main/java/io/bitsquare/btc/BitcoinNetwork.java index 444b2a7bea..d0a1fa2007 100644 --- a/src/main/java/io/bitsquare/btc/BitcoinNetwork.java +++ b/src/main/java/io/bitsquare/btc/BitcoinNetwork.java @@ -18,5 +18,5 @@ package io.bitsquare.btc; public enum BitcoinNetwork { - MAINNET, TESTNET, REGTEST + MAINNET, TESTNET, REGTEST; }