diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..7b016a89 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "java.compile.nullAnalysis.mode": "automatic" +} \ No newline at end of file diff --git a/WindowsInstaller/Install Files/log4j2.properties b/WindowsInstaller/Install Files/log4j2.properties index 44e1b1e3..54f295c1 100755 --- a/WindowsInstaller/Install Files/log4j2.properties +++ b/WindowsInstaller/Install Files/log4j2.properties @@ -1,7 +1,7 @@ rootLogger.level = info # On Windows, uncomment next line to set dirname: # property.dirname = ${sys:user.home}\\AppData\\Local\\qortal\\ -property.filename = ${sys:log4j2.filenameTemplate:-log.txt} +# property.filename = ${sys:log4j2.filenameTemplate:-log.txt} rootLogger.appenderRef.console.ref = stdout rootLogger.appenderRef.rolling.ref = FILE @@ -59,11 +59,14 @@ appender.console.filter.threshold.level = error appender.rolling.type = RollingFile appender.rolling.name = FILE +appender.rolling.fileName = qortal.log +appender.rolling.filePattern = qortal.%d{dd-MMM}.log.gz appender.rolling.layout.type = PatternLayout appender.rolling.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n -appender.rolling.filePattern = ./${filename}.%i appender.rolling.policy.type = SizeBasedTriggeringPolicy -appender.rolling.policy.size = 4MB +appender.rolling.policy.size = 10MB +appender.rolling.strategy.type = DefaultRolloverStrategy +appender.rolling.strategy.max = 7 # Set the immediate flush to true (default) # appender.rolling.immediateFlush = true # Set the append to true (default), should not overwrite diff --git a/lib/org/ciyam/AT/1.4.1/AT-1.4.1.jar b/lib/org/ciyam/AT/1.4.1/AT-1.4.1.jar new file mode 100644 index 00000000..05c548c8 Binary files /dev/null and b/lib/org/ciyam/AT/1.4.1/AT-1.4.1.jar differ diff --git a/lib/org/ciyam/AT/1.4.1/AT-1.4.1.pom b/lib/org/ciyam/AT/1.4.1/AT-1.4.1.pom new file mode 100644 index 00000000..16f644b9 --- /dev/null +++ b/lib/org/ciyam/AT/1.4.1/AT-1.4.1.pom @@ -0,0 +1,124 @@ + + 4.0.0 + org.ciyam + AT + 1.4.1 + jar + + + UTF-8 + false + + 3.8.1 + 3.2.0 + 3.3.1 + 3.0.0-M4 + 3.2.0 + + 1.64 + + + + src/main/java + src/test/java + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + 11 + 11 + + + + org.apache.maven.plugins + maven-surefire-plugin + ${maven-surefire-plugin.version} + + ${skipTests} + + + + org.apache.maven.plugins + maven-source-plugin + ${maven-source-plugin.version} + + + attach-sources + + jar + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + ${maven-javadoc-plugin.version} + + + attach-javadoc + + jar + + + + + + org.apache.maven.plugins + maven-jar-plugin + ${maven-jar-plugin.version} + + + + test-jar + + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + + org.apache.maven.plugins + maven-surefire-plugin + ${maven-surefire-plugin.version} + + + org.apache.maven.plugins + maven-source-plugin + ${maven-source-plugin.version} + + + org.apache.maven.plugins + maven-javadoc-plugin + ${maven-javadoc-plugin.version} + + + org.apache.maven.plugins + maven-jar-plugin + ${maven-jar-plugin.version} + + + org.bouncycastle + bcprov-jdk15on + ${bouncycastle.version} + test + + + junit + junit + 4.13 + test + + + diff --git a/lib/org/ciyam/AT/maven-metadata-local.xml b/lib/org/ciyam/AT/maven-metadata-local.xml index 063c735d..d8f3dd34 100644 --- a/lib/org/ciyam/AT/maven-metadata-local.xml +++ b/lib/org/ciyam/AT/maven-metadata-local.xml @@ -3,7 +3,7 @@ org.ciyam AT - 1.4.0 + 1.4.1 1.3.4 1.3.5 @@ -11,7 +11,8 @@ 1.3.7 1.3.8 1.4.0 + 1.4.1 - 20221105114346 + 20230821074325 diff --git a/log4j2.properties b/log4j2.properties index 44e1b1e3..54f295c1 100644 --- a/log4j2.properties +++ b/log4j2.properties @@ -1,7 +1,7 @@ rootLogger.level = info # On Windows, uncomment next line to set dirname: # property.dirname = ${sys:user.home}\\AppData\\Local\\qortal\\ -property.filename = ${sys:log4j2.filenameTemplate:-log.txt} +# property.filename = ${sys:log4j2.filenameTemplate:-log.txt} rootLogger.appenderRef.console.ref = stdout rootLogger.appenderRef.rolling.ref = FILE @@ -59,11 +59,14 @@ appender.console.filter.threshold.level = error appender.rolling.type = RollingFile appender.rolling.name = FILE +appender.rolling.fileName = qortal.log +appender.rolling.filePattern = qortal.%d{dd-MMM}.log.gz appender.rolling.layout.type = PatternLayout appender.rolling.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n -appender.rolling.filePattern = ./${filename}.%i appender.rolling.policy.type = SizeBasedTriggeringPolicy -appender.rolling.policy.size = 4MB +appender.rolling.policy.size = 10MB +appender.rolling.strategy.type = DefaultRolloverStrategy +appender.rolling.strategy.max = 7 # Set the immediate flush to true (default) # appender.rolling.immediateFlush = true # Set the append to true (default), should not overwrite diff --git a/pom.xml b/pom.xml index fbcd40a5..40d56990 100644 --- a/pom.xml +++ b/pom.xml @@ -11,32 +11,52 @@ 0.15.10 1.69 ${maven.build.timestamp} - 1.4.0 - 3.6 - 1.8 - 2.6 - 1.21 - 3.12.0 + 1.4.1 + 3.8.0 + 1.10.0 + 2.11.0 + 1.24.0 + 3.13.0 1.9 1.2.2 - 28.1-jre + 32.1.3-jre 2.5.1 1.2.1 - 70.1 + 73.2 1.1 - 2.29.1 - 9.4.29.v20200521 - 2.17.1 + 2.3.3 + 2.40 + 9.4.53.v20231009 + 2.20.0 UTF-8 - 1.7.12 - 2.0.9 - 3.23.8 + 1.7.36 + 2.0.10 + 3.52.5 1.1.0 - 1.13.1 - 4.10 - 1.45.1 - 3.19.4 + 1.16.1 + 4.12 + 1.58.0 + 3.24.4 1.17 + 2.16.1 + 3.11.0 + 4.9.10 + 1.5.3 + 3.3.1 + 3.4.0 + 3.3.0 + 3.5.1 + 0.16 + 3.1.2 + 1.0.0 + 3.4.0 + 1.1.1 + 20231013 + 0.12.3 + 4.0.1 + 1.5.0-b01 + 5.3.1 + 1.3 src/main/java @@ -51,14 +71,14 @@ org.codehaus.mojo versions-maven-plugin - 2.5 + ${versions-maven-plugin.version} false maven-compiler-plugin - 3.8.0 + ${maven-compiler-plugin.version} 11 @@ -89,7 +109,7 @@ pl.project13.maven git-commit-id-plugin - 4.0.0 + ${git-commit-id-plugin.version} get-the-git-infos @@ -121,7 +141,7 @@ com.google.code.maven-replacer-plugin replacer - 1.5.3 + ${replacer.version} replace-swagger-ui @@ -164,11 +184,13 @@ ${project.build.outputDirectory}/git.properties true - MULTILINE + + MULTILINE + ^(#.*$[\n\r]*) - + @@ -178,7 +200,10 @@ maven-resources-plugin - 3.1.0 + ${maven-resources-plugin.version} + + ISO-8859-1 + copy-resources @@ -232,7 +257,7 @@ org.codehaus.mojo build-helper-maven-plugin - 3.0.0 + ${build-helper-maven-plugin.version} generate-sources @@ -250,7 +275,7 @@ org.apache.maven.plugins maven-jar-plugin - 3.2.0 + ${maven-jar-plugin.version} @@ -268,13 +293,12 @@ org.apache.maven.plugins maven-shade-plugin - 2.4.3 + ${maven-shade-plugin.version} false - + org.webjars:swagger-ui junit:junit @@ -318,7 +342,7 @@ io.github.zlika reproducible-build-maven-plugin - 0.11 + ${reproducible-build-maven-plugin.version} package @@ -335,7 +359,7 @@ org.apache.maven.plugins maven-surefire-plugin - 2.22.2 + ${maven-surefire-plugin.version} ${skipTests} @@ -347,7 +371,7 @@ org.eclipse.m2e lifecycle-mapping - 1.0.0 + ${lifecycle-mapping.version} @@ -360,14 +384,14 @@ maven-dependency-plugin - [2.8,) + [3.6.0,) unpack - + @@ -386,7 +410,7 @@ - + @@ -413,15 +437,17 @@ org.codehaus.mojo build-helper-maven-plugin - 3.0.0 - provided + ${build-helper-maven-plugin.version} + provided + com.github.bohnman package-info-maven-plugin ${package-info-maven-plugin.version} - provided + provided + @@ -457,12 +483,12 @@ com.googlecode.json-simple json-simple - 1.1.1 + ${json-simple.version} org.json json - 20210307 + ${json.version} org.apache.commons @@ -493,7 +519,7 @@ io.druid extendedset - 0.12.3 + ${extendedset.version} @@ -564,12 +590,12 @@ javax.servlet javax.servlet-api - 4.0.1 + ${javax.servlet-api.version} javax.mail mail - 1.5.0-b01 + ${mail.version} @@ -638,7 +664,8 @@ jersey-hk2 ${jersey.version} - + + javax.inject javax.inject @@ -665,7 +692,8 @@ swagger-jaxrs2-servlet-initializer ${swagger-api.version} - + + io.swagger.core.v3 swagger-integration @@ -681,12 +709,12 @@ org.junit.jupiter junit-jupiter-engine - 5.3.1 + ${junit-jupiter-engine.version} org.hamcrest hamcrest-library - 1.3 + ${hamcrest-library.version} --> @@ -735,5 +763,11 @@ simplemagic ${simplemagic.version} + + + org.glassfish.jaxb + jaxb-runtime + ${jaxb-runtime.version} + diff --git a/src/main/java/org/qortal/api/restricted/resource/AdminResource.java b/src/main/java/org/qortal/api/restricted/resource/AdminResource.java index ecb8c6c9..178d7547 100644 --- a/src/main/java/org/qortal/api/restricted/resource/AdminResource.java +++ b/src/main/java/org/qortal/api/restricted/resource/AdminResource.java @@ -16,11 +16,6 @@ import java.net.InetSocketAddress; import java.net.UnknownHostException; import java.nio.file.Files; import java.nio.file.Paths; -import java.time.LocalDate; -import java.time.LocalTime; -import java.time.OffsetDateTime; -import java.time.ZoneOffset; -import java.util.Arrays; import java.util.List; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; @@ -38,7 +33,6 @@ import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.core.LoggerContext; import org.apache.logging.log4j.core.appender.RollingFileAppender; import org.json.JSONArray; -import org.json.JSONObject; import org.qortal.account.Account; import org.qortal.account.PrivateKeyAccount; import org.qortal.api.*; @@ -269,7 +263,7 @@ public class AdminResource { @GET @Path("/summary") @Operation( - summary = "Summary of activity since midnight, UTC", + summary = "Summary of activity past 24 hours", responses = { @ApiResponse( content = @Content(schema = @Schema(implementation = ActivitySummary.class)) @@ -282,23 +276,21 @@ public class AdminResource { Security.checkApiCallAllowed(request); ActivitySummary summary = new ActivitySummary(); - - LocalDate date = LocalDate.now(); - LocalTime time = LocalTime.of(0, 0); - ZoneOffset offset = ZoneOffset.UTC; - long start = OffsetDateTime.of(date, time, offset).toInstant().toEpochMilli(); + + long now = NTP.getTime(); + long oneday = now - 24 * 60 * 60 * 1000L; try (final Repository repository = RepositoryManager.getRepository()) { - int startHeight = repository.getBlockRepository().getHeightFromTimestamp(start); + int startHeight = repository.getBlockRepository().getHeightFromTimestamp(oneday); int endHeight = repository.getBlockRepository().getBlockchainHeight(); summary.setBlockCount(endHeight - startHeight); summary.setTransactionCountByType(repository.getTransactionRepository().getTransactionSummary(startHeight + 1, endHeight)); - summary.setAssetsIssued(repository.getAssetRepository().getRecentAssetIds(start).size()); + summary.setAssetsIssued(repository.getAssetRepository().getRecentAssetIds(oneday).size()); - summary.setNamesRegistered (repository.getNameRepository().getRecentNames(start).size()); + summary.setNamesRegistered (repository.getNameRepository().getRecentNames(oneday).size()); return summary; } catch (DataException e) { diff --git a/src/main/java/org/qortal/controller/tradebot/TradeBot.java b/src/main/java/org/qortal/controller/tradebot/TradeBot.java index 147554dd..e17f642f 100644 --- a/src/main/java/org/qortal/controller/tradebot/TradeBot.java +++ b/src/main/java/org/qortal/controller/tradebot/TradeBot.java @@ -712,30 +712,16 @@ public class TradeBot implements Listener { } try { - List signatures = repository.getTransactionRepository().getSignaturesMatchingCriteria(null, null, null, Arrays.asList(Transaction.TransactionType.MESSAGE), null, null, crossChainTradeData.qortalCreatorTradeAddress, TransactionsResource.ConfirmationStatus.CONFIRMED, null, null, null); - if (signatures.size() < getMaxTradeOfferAttempts) { - // Less than 3 (or user-specified number of) MESSAGE transactions relate to this trade, so assume it is ok - validTrades.put(crossChainTradeData.qortalAtAddress, now); - continue; - } + List transactions = repository.getTransactionRepository().getUnconfirmedTransactions(Arrays.asList(Transaction.TransactionType.MESSAGE), null, null, null, null); - List transactions = new ArrayList<>(signatures.size()); - for (byte[] signature : signatures) { - transactions.add(repository.getTransactionRepository().fromSignature(signature)); - } - transactions.sort(Transaction.getDataComparator()); - - // Get timestamp of the first MESSAGE transaction - long firstMessageTimestamp = transactions.get(0).getTimestamp(); - - // Treat as failed if first buy attempt was more than 60 mins ago (as it's still in the OFFERING state) - boolean isFailed = (now - firstMessageTimestamp > 60*60*1000L); - if (isFailed) { - failedTrades.put(crossChainTradeData.qortalAtAddress, now); - updatedCrossChainTrades.remove(crossChainTradeData); - } - else { - validTrades.put(crossChainTradeData.qortalAtAddress, now); + for (TransactionData transactionData : transactions) { + // Treat as failed if buy attempt was more than 60 mins ago (as it's still in the OFFERING state) + if (transactionData.getRecipient().equals(crossChainTradeData.qortalCreatorTradeAddress) && now - transactionData.getTimestamp() > 60*60*1000L) { + failedTrades.put(crossChainTradeData.qortalAtAddress, now); + updatedCrossChainTrades.remove(crossChainTradeData); + } else { + validTrades.put(crossChainTradeData.qortalAtAddress, now); + } } } catch (DataException e) { diff --git a/src/main/java/org/qortal/crosschain/Bitcoin.java b/src/main/java/org/qortal/crosschain/Bitcoin.java index b65bac8e..7925dd4e 100644 --- a/src/main/java/org/qortal/crosschain/Bitcoin.java +++ b/src/main/java/org/qortal/crosschain/Bitcoin.java @@ -44,89 +44,78 @@ public class Bitcoin extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - // Servers chosen on NO BASIS WHATSOEVER from various sources! - // Status verified at https://1209k.com/bitcoin-eye/ele.php?chain=btc - //CLOSED new Server("bitcoin.grey.pw", Server.ConnectionType.SSL, 50002), - //CLOSED new Server("btc.litepay.ch", Server.ConnectionType.SSL, 50002), - //CLOSED new Server("electrum.pabu.io", Server.ConnectionType.SSL, 50002), - //CLOSED new Server("electrumx.dev", Server.ConnectionType.SSL, 50002), - //CLOSED new Server("electrumx.hodlwallet.com", Server.ConnectionType.SSL, 50002), - //CLOSED new Server("gd42.org", Server.ConnectionType.SSL, 50002), - //CLOSED new Server("korea.electrum-server.com", Server.ConnectionType.SSL, 50002), - //CLOSED new Server("prospero.bitsrc.net", Server.ConnectionType.SSL, 50002), - //1.15.0 new Server("alviss.coinjoined.com", Server.ConnectionType.SSL, 50002), - //1.15.0 new Server("electrum.acinq.co", Server.ConnectionType.SSL, 50002), - //1.14.0 new Server("electrum.coinext.com.br", Server.ConnectionType.SSL, 50002), - //F1.7.0 new Server("btc.lastingcoin.net", Server.ConnectionType.SSL, 50002), - new Server("104.248.139.211", Server.ConnectionType.SSL, 50002), - new Server("128.0.190.26", Server.ConnectionType.SSL, 50002), - new Server("142.93.6.38", Server.ConnectionType.SSL, 50002), - new Server("157.245.172.236", Server.ConnectionType.SSL, 50002), - new Server("167.172.226.175", Server.ConnectionType.SSL, 50002), - new Server("167.172.42.31", Server.ConnectionType.SSL, 50002), - new Server("178.62.80.20", Server.ConnectionType.SSL, 50002), - new Server("185.64.116.15", Server.ConnectionType.SSL, 50002), - new Server("188.165.206.215", Server.ConnectionType.SSL, 50002), - new Server("188.165.211.112", Server.ConnectionType.SSL, 50002), - new Server("2azzarita.hopto.org", Server.ConnectionType.SSL, 50002), - new Server("2electrumx.hopto.me", Server.ConnectionType.SSL, 56022), - new Server("2ex.digitaleveryware.com", Server.ConnectionType.SSL, 50002), - new Server("65.39.140.37", Server.ConnectionType.SSL, 50002), - new Server("68.183.188.105", Server.ConnectionType.SSL, 50002), - new Server("71.73.14.254", Server.ConnectionType.SSL, 50002), - new Server("94.23.247.135", Server.ConnectionType.SSL, 50002), - new Server("assuredly.not.fyi", Server.ConnectionType.SSL, 50002), - new Server("ax101.blockeng.ch", Server.ConnectionType.SSL, 50002), - new Server("ax102.blockeng.ch", Server.ConnectionType.SSL, 50002), - new Server("b.1209k.com", Server.ConnectionType.SSL, 50002), - new Server("b6.1209k.com", Server.ConnectionType.SSL, 50002), - new Server("bitcoin.dermichi.com", Server.ConnectionType.SSL, 50002), - new Server("bitcoin.lu.ke", Server.ConnectionType.SSL, 50002), - new Server("bitcoin.lukechilds.co", Server.ConnectionType.SSL, 50002), - new Server("blkhub.net", Server.ConnectionType.SSL, 50002), - new Server("btc.electroncash.dk", Server.ConnectionType.SSL, 60002), - new Server("btc.ocf.sh", Server.ConnectionType.SSL, 50002), - new Server("btce.iiiiiii.biz", Server.ConnectionType.SSL, 50002), - new Server("caleb.vegas", Server.ConnectionType.SSL, 50002), - new Server("eai.coincited.net", Server.ConnectionType.SSL, 50002), - new Server("electrum.bhoovd.com", Server.ConnectionType.SSL, 50002), - new Server("electrum.bitaroo.net", Server.ConnectionType.SSL, 50002), - new Server("electrum.bitcoinlizard.net", Server.ConnectionType.SSL, 50002), - new Server("electrum.blockstream.info", Server.ConnectionType.SSL, 50002), - new Server("electrum.emzy.de", Server.ConnectionType.SSL, 50002), - new Server("electrum.exan.tech", Server.ConnectionType.SSL, 50002), - new Server("electrum.kendigisland.xyz", Server.ConnectionType.SSL, 50002), - new Server("electrum.mmitech.info", Server.ConnectionType.SSL, 50002), - new Server("electrum.petrkr.net", Server.ConnectionType.SSL, 50002), - new Server("electrum.stippy.com", Server.ConnectionType.SSL, 50002), - new Server("electrum.thomasfischbach.de", Server.ConnectionType.SSL, 50002), - new Server("electrum0.snel.it", Server.ConnectionType.SSL, 50002), - new Server("electrum1.cipig.net", Server.ConnectionType.SSL, 50002), - new Server("electrum2.cipig.net", Server.ConnectionType.SSL, 50002), - new Server("electrum3.cipig.net", Server.ConnectionType.SSL, 50002), - new Server("electrumx.alexridevski.net", Server.ConnectionType.SSL, 50002), - new Server("electrumx-core.1209k.com", Server.ConnectionType.SSL, 50002), - new Server("elx.bitske.com", Server.ConnectionType.SSL, 50002), - new Server("ex03.axalgo.com", Server.ConnectionType.SSL, 50002), - new Server("ex05.axalgo.com", Server.ConnectionType.SSL, 50002), - new Server("ex07.axalgo.com", Server.ConnectionType.SSL, 50002), - new Server("fortress.qtornado.com", Server.ConnectionType.SSL, 50002), - new Server("fulcrum.grey.pw", Server.ConnectionType.SSL, 50002), - new Server("fulcrum.sethforprivacy.com", Server.ConnectionType.SSL, 51002), - new Server("guichet.centure.cc", Server.ConnectionType.SSL, 50002), - new Server("hodlers.beer", Server.ConnectionType.SSL, 50002), - new Server("kareoke.qoppa.org", Server.ConnectionType.SSL, 50002), - new Server("kirsche.emzy.de", Server.ConnectionType.SSL, 50002), - new Server("node1.btccuracao.com", Server.ConnectionType.SSL, 50002), - new Server("osr1ex1.compumundohipermegared.one", Server.ConnectionType.SSL, 50002), - new Server("smmalis37.ddns.net", Server.ConnectionType.SSL, 50002), - new Server("ulrichard.ch", Server.ConnectionType.SSL, 50002), - new Server("vmd104012.contaboserver.net", Server.ConnectionType.SSL, 50002), - new Server("vmd104014.contaboserver.net", Server.ConnectionType.SSL, 50002), - new Server("vmd63185.contaboserver.net", Server.ConnectionType.SSL, 50002), - new Server("vmd71287.contaboserver.net", Server.ConnectionType.SSL, 50002), - new Server("vmd84592.contaboserver.net", Server.ConnectionType.SSL, 50002), - new Server("xtrum.com", Server.ConnectionType.SSL, 50002)); + // Servers chosen on NO BASIS WHATSOEVER from various sources! + // Status verified at https://1209k.com/bitcoin-eye/ele.php?chain=btc + new Server("104.248.139.211", Server.ConnectionType.SSL, 50002), + new Server("128.0.190.26", Server.ConnectionType.SSL, 50002), + new Server("142.93.6.38", Server.ConnectionType.SSL, 50002), + new Server("157.245.172.236", Server.ConnectionType.SSL, 50002), + new Server("167.172.226.175", Server.ConnectionType.SSL, 50002), + new Server("167.172.42.31", Server.ConnectionType.SSL, 50002), + new Server("178.62.80.20", Server.ConnectionType.SSL, 50002), + new Server("185.64.116.15", Server.ConnectionType.SSL, 50002), + new Server("188.165.206.215", Server.ConnectionType.SSL, 50002), + new Server("188.165.211.112", Server.ConnectionType.SSL, 50002), + new Server("2azzarita.hopto.org", Server.ConnectionType.SSL, 50002), + new Server("2electrumx.hopto.me", Server.ConnectionType.SSL, 56022), + new Server("2ex.digitaleveryware.com", Server.ConnectionType.SSL, 50002), + new Server("65.39.140.37", Server.ConnectionType.SSL, 50002), + new Server("68.183.188.105", Server.ConnectionType.SSL, 50002), + new Server("71.73.14.254", Server.ConnectionType.SSL, 50002), + new Server("94.23.247.135", Server.ConnectionType.SSL, 50002), + new Server("assuredly.not.fyi", Server.ConnectionType.SSL, 50002), + new Server("ax101.blockeng.ch", Server.ConnectionType.SSL, 50002), + new Server("ax102.blockeng.ch", Server.ConnectionType.SSL, 50002), + new Server("b.1209k.com", Server.ConnectionType.SSL, 50002), + new Server("b6.1209k.com", Server.ConnectionType.SSL, 50002), + new Server("bitcoin.dermichi.com", Server.ConnectionType.SSL, 50002), + new Server("bitcoin.lu.ke", Server.ConnectionType.SSL, 50002), + new Server("bitcoin.lukechilds.co", Server.ConnectionType.SSL, 50002), + new Server("blkhub.net", Server.ConnectionType.SSL, 50002), + new Server("btc.electroncash.dk", Server.ConnectionType.SSL, 60002), + new Server("btc.ocf.sh", Server.ConnectionType.SSL, 50002), + new Server("btce.iiiiiii.biz", Server.ConnectionType.SSL, 50002), + new Server("caleb.vegas", Server.ConnectionType.SSL, 50002), + new Server("eai.coincited.net", Server.ConnectionType.SSL, 50002), + new Server("electrum.bhoovd.com", Server.ConnectionType.SSL, 50002), + new Server("electrum.bitaroo.net", Server.ConnectionType.SSL, 50002), + new Server("electrum.bitcoinlizard.net", Server.ConnectionType.SSL, 50002), + new Server("electrum.blockstream.info", Server.ConnectionType.SSL, 50002), + new Server("electrum.emzy.de", Server.ConnectionType.SSL, 50002), + new Server("electrum.exan.tech", Server.ConnectionType.SSL, 50002), + new Server("electrum.kendigisland.xyz", Server.ConnectionType.SSL, 50002), + new Server("electrum.mmitech.info", Server.ConnectionType.SSL, 50002), + new Server("electrum.petrkr.net", Server.ConnectionType.SSL, 50002), + new Server("electrum.stippy.com", Server.ConnectionType.SSL, 50002), + new Server("electrum.thomasfischbach.de", Server.ConnectionType.SSL, 50002), + new Server("electrum0.snel.it", Server.ConnectionType.SSL, 50002), + new Server("electrum1.cipig.net", Server.ConnectionType.SSL, 50002), + new Server("electrum2.cipig.net", Server.ConnectionType.SSL, 50002), + new Server("electrum3.cipig.net", Server.ConnectionType.SSL, 50002), + new Server("electrumx.alexridevski.net", Server.ConnectionType.SSL, 50002), + new Server("electrumx-core.1209k.com", Server.ConnectionType.SSL, 50002), + new Server("elx.bitske.com", Server.ConnectionType.SSL, 50002), + new Server("ex03.axalgo.com", Server.ConnectionType.SSL, 50002), + new Server("ex05.axalgo.com", Server.ConnectionType.SSL, 50002), + new Server("ex07.axalgo.com", Server.ConnectionType.SSL, 50002), + new Server("fortress.qtornado.com", Server.ConnectionType.SSL, 50002), + new Server("fulcrum.grey.pw", Server.ConnectionType.SSL, 50002), + new Server("fulcrum.sethforprivacy.com", Server.ConnectionType.SSL, 51002), + new Server("guichet.centure.cc", Server.ConnectionType.SSL, 50002), + new Server("hodlers.beer", Server.ConnectionType.SSL, 50002), + new Server("kareoke.qoppa.org", Server.ConnectionType.SSL, 50002), + new Server("kirsche.emzy.de", Server.ConnectionType.SSL, 50002), + new Server("node1.btccuracao.com", Server.ConnectionType.SSL, 50002), + new Server("osr1ex1.compumundohipermegared.one", Server.ConnectionType.SSL, 50002), + new Server("smmalis37.ddns.net", Server.ConnectionType.SSL, 50002), + new Server("ulrichard.ch", Server.ConnectionType.SSL, 50002), + new Server("vmd104012.contaboserver.net", Server.ConnectionType.SSL, 50002), + new Server("vmd104014.contaboserver.net", Server.ConnectionType.SSL, 50002), + new Server("vmd63185.contaboserver.net", Server.ConnectionType.SSL, 50002), + new Server("vmd71287.contaboserver.net", Server.ConnectionType.SSL, 50002), + new Server("vmd84592.contaboserver.net", Server.ConnectionType.SSL, 50002), + new Server("xtrum.com", Server.ConnectionType.SSL, 50002) + ); } @Override @@ -152,12 +141,13 @@ public class Bitcoin extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - new Server("tn.not.fyi", Server.ConnectionType.SSL, 55002), - new Server("electrumx-test.1209k.com", Server.ConnectionType.SSL, 50002), - new Server("testnet.qtornado.com", Server.ConnectionType.SSL, 51002), - new Server("testnet.aranguren.org", Server.ConnectionType.TCP, 51001), - new Server("testnet.aranguren.org", Server.ConnectionType.SSL, 51002), - new Server("testnet.hsmiths.com", Server.ConnectionType.SSL, 53012)); + new Server("tn.not.fyi", Server.ConnectionType.SSL, 55002), + new Server("electrumx-test.1209k.com", Server.ConnectionType.SSL, 50002), + new Server("testnet.qtornado.com", Server.ConnectionType.SSL, 51002), + new Server("testnet.aranguren.org", Server.ConnectionType.TCP, 51001), + new Server("testnet.aranguren.org", Server.ConnectionType.SSL, 51002), + new Server("testnet.hsmiths.com", Server.ConnectionType.SSL, 53012) + ); } @Override @@ -179,8 +169,9 @@ public class Bitcoin extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - new Server("localhost", Server.ConnectionType.TCP, 50001), - new Server("localhost", Server.ConnectionType.SSL, 50002)); + new Server("localhost", Server.ConnectionType.TCP, 50001), + new Server("localhost", Server.ConnectionType.SSL, 50002) + ); } @Override diff --git a/src/main/java/org/qortal/crosschain/Digibyte.java b/src/main/java/org/qortal/crosschain/Digibyte.java index c5d96383..8e316173 100644 --- a/src/main/java/org/qortal/crosschain/Digibyte.java +++ b/src/main/java/org/qortal/crosschain/Digibyte.java @@ -43,14 +43,17 @@ public class Digibyte extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - // Servers chosen on NO BASIS WHATSOEVER from various sources! - // Status verified at https://1209k.com/bitcoin-eye/ele.php?chain=dgb - new Server("electrum.qortal.link", Server.ConnectionType.SSL, 55002), - new Server("electrum-dgb.qortal.online", ConnectionType.SSL, 50002), - new Server("electrum1-dgb.qortal.online", ConnectionType.SSL, 50002), - new Server("electrum1.cipig.net", ConnectionType.SSL, 20059), - new Server("electrum2.cipig.net", ConnectionType.SSL, 20059), - new Server("electrum3.cipig.net", ConnectionType.SSL, 20059)); + // Servers chosen on NO BASIS WHATSOEVER from various sources! + // Status verified at https://1209k.com/bitcoin-eye/ele.php?chain=dgb + new Server("electrum.qortal.link", Server.ConnectionType.SSL, 55002), + new Server("electrum1-dgb.qortal.online", Server.ConnectionType.SSL, 50002), + new Server("electrum2-dgb.qortal.online", Server.ConnectionType.SSL, 50002), + new Server("electrum3-dgb.qortal.online", Server.ConnectionType.SSL, 40002), + new Server("electrum4-dgb.qortal.online", Server.ConnectionType.SSL, 40002), + new Server("electrum1.cipig.net", Server.ConnectionType.SSL, 20059), + new Server("electrum2.cipig.net", Server.ConnectionType.SSL, 20059), + new Server("electrum3.cipig.net", Server.ConnectionType.SSL, 20059) + ); } @Override @@ -94,8 +97,9 @@ public class Digibyte extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - new Server("localhost", ConnectionType.TCP, 50001), - new Server("localhost", ConnectionType.SSL, 50002)); + new Server("localhost", Server.ConnectionType.TCP, 50001), + new Server("localhost", Server.ConnectionType.SSL, 50002) + ); } @Override diff --git a/src/main/java/org/qortal/crosschain/Dogecoin.java b/src/main/java/org/qortal/crosschain/Dogecoin.java index 99f557a5..93941c41 100644 --- a/src/main/java/org/qortal/crosschain/Dogecoin.java +++ b/src/main/java/org/qortal/crosschain/Dogecoin.java @@ -4,7 +4,6 @@ import org.bitcoinj.core.Coin; import org.bitcoinj.core.Context; import org.bitcoinj.core.NetworkParameters; import org.libdohj.params.DogecoinMainNetParams; -//import org.libdohj.params.DogecoinRegTestParams; import org.libdohj.params.DogecoinTestNet3Params; import org.qortal.crosschain.ElectrumX.Server; import org.qortal.crosschain.ElectrumX.Server.ConnectionType; @@ -44,14 +43,17 @@ public class Dogecoin extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - // Servers chosen on NO BASIS WHATSOEVER from various sources! - // Status verified at https://1209k.com/bitcoin-eye/ele.php?chain=doge - new Server("electrum.qortal.link", Server.ConnectionType.SSL, 54002), - new Server("electrum-doge.qortal.online", ConnectionType.SSL, 50002), - new Server("electrum1-doge.qortal.online", ConnectionType.SSL, 50002), - new Server("electrum1.cipig.net", ConnectionType.SSL, 20060), - new Server("electrum2.cipig.net", ConnectionType.SSL, 20060), - new Server("electrum3.cipig.net", ConnectionType.SSL, 20060)); + // Servers chosen on NO BASIS WHATSOEVER from various sources! + // Status verified at https://1209k.com/bitcoin-eye/ele.php?chain=doge + new Server("electrum.qortal.link", Server.ConnectionType.SSL, 54002), + new Server("electrum1-doge.qortal.online", Server.ConnectionType.SSL, 50002), + new Server("electrum2-doge.qortal.online", Server.ConnectionType.SSL, 50002), + new Server("electrum3-doge.qortal.online", Server.ConnectionType.SSL, 30002), + new Server("electrum4-doge.qortal.online", Server.ConnectionType.SSL, 30002), + new Server("electrum1.cipig.net", Server.ConnectionType.SSL, 20060), + new Server("electrum2.cipig.net", Server.ConnectionType.SSL, 20060), + new Server("electrum3.cipig.net", Server.ConnectionType.SSL, 20060) + ); } @Override @@ -95,8 +97,9 @@ public class Dogecoin extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - new Server("localhost", ConnectionType.TCP, 50001), - new Server("localhost", ConnectionType.SSL, 50002)); + new Server("localhost", Server.ConnectionType.TCP, 50001), + new Server("localhost", Server.ConnectionType.SSL, 50002) + ); } @Override diff --git a/src/main/java/org/qortal/crosschain/Litecoin.java b/src/main/java/org/qortal/crosschain/Litecoin.java index 1dd9037a..22825c74 100644 --- a/src/main/java/org/qortal/crosschain/Litecoin.java +++ b/src/main/java/org/qortal/crosschain/Litecoin.java @@ -43,22 +43,21 @@ public class Litecoin extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - // Servers chosen on NO BASIS WHATSOEVER from various sources! - // Status verified at https://1209k.com/bitcoin-eye/ele.php?chain=ltc - //CLOSED new Server("electrum-ltc.someguy123.net", Server.ConnectionType.SSL, 50002), - //CLOSED new Server("ltc.litepay.ch", Server.ConnectionType.SSL, 50022), - //BEHIND new Server("62.171.169.176", Server.ConnectionType.SSL, 50002), - //PHISHY new Server("electrum-ltc.bysh.me", Server.ConnectionType.SSL, 50002), - new Server("backup.electrum-ltc.org", Server.ConnectionType.SSL, 443), - new Server("electrum.qortal.link", Server.ConnectionType.SSL, 50002), - new Server("electrum.ltc.xurious.com", Server.ConnectionType.SSL, 50002), - new Server("electrum-ltc.petrkr.net", Server.ConnectionType.SSL, 60002), - new Server("electrum-ltc.qortal.online", Server.ConnectionType.SSL, 50002), - new Server("electrum1-ltc.qortal.online", Server.ConnectionType.SSL, 50002), - new Server("electrum1.cipig.net", Server.ConnectionType.SSL, 20063), - new Server("electrum2.cipig.net", Server.ConnectionType.SSL, 20063), - new Server("electrum3.cipig.net", Server.ConnectionType.SSL, 20063), - new Server("ltc.rentonrisk.com", Server.ConnectionType.SSL, 50002)); + // Servers chosen on NO BASIS WHATSOEVER from various sources! + // Status verified at https://1209k.com/bitcoin-eye/ele.php?chain=ltc + new Server("electrum.qortal.link", Server.ConnectionType.SSL, 50002), + new Server("electrum1-ltc.qortal.online", Server.ConnectionType.SSL, 50002), + new Server("electrum2-ltc.qortal.online", Server.ConnectionType.SSL, 50002), + new Server("electrum3-ltc.qortal.online", Server.ConnectionType.SSL, 20002), + new Server("electrum4-ltc.qortal.online", Server.ConnectionType.SSL, 20002), + new Server("backup.electrum-ltc.org", Server.ConnectionType.SSL, 443), + new Server("electrum.ltc.xurious.com", Server.ConnectionType.SSL, 50002), + new Server("electrum-ltc.petrkr.net", Server.ConnectionType.SSL, 60002), + new Server("electrum1.cipig.net", Server.ConnectionType.SSL, 20063), + new Server("electrum2.cipig.net", Server.ConnectionType.SSL, 20063), + new Server("electrum3.cipig.net", Server.ConnectionType.SSL, 20063), + new Server("ltc.rentonrisk.com", Server.ConnectionType.SSL, 50002) + ); } @Override @@ -81,10 +80,11 @@ public class Litecoin extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - new Server("electrum-ltc.bysh.me", Server.ConnectionType.TCP, 51001), - new Server("electrum-ltc.bysh.me", Server.ConnectionType.SSL, 51002), - new Server("electrum.ltc.xurious.com", Server.ConnectionType.TCP, 51001), - new Server("electrum.ltc.xurious.com", Server.ConnectionType.SSL, 51002)); + new Server("electrum-ltc.bysh.me", Server.ConnectionType.TCP, 51001), + new Server("electrum-ltc.bysh.me", Server.ConnectionType.SSL, 51002), + new Server("electrum.ltc.xurious.com", Server.ConnectionType.TCP, 51001), + new Server("electrum.ltc.xurious.com", Server.ConnectionType.SSL, 51002) + ); } @Override @@ -106,8 +106,9 @@ public class Litecoin extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - new Server("localhost", Server.ConnectionType.TCP, 50001), - new Server("localhost", Server.ConnectionType.SSL, 50002)); + new Server("localhost", Server.ConnectionType.TCP, 50001), + new Server("localhost", Server.ConnectionType.SSL, 50002) + ); } @Override diff --git a/src/main/java/org/qortal/crosschain/PirateChain.java b/src/main/java/org/qortal/crosschain/PirateChain.java index a1d31a4e..4881c8bb 100644 --- a/src/main/java/org/qortal/crosschain/PirateChain.java +++ b/src/main/java/org/qortal/crosschain/PirateChain.java @@ -56,11 +56,14 @@ public class PirateChain extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - // Servers chosen on NO BASIS WHATSOEVER from various sources! - new Server("wallet-arrr1.qortal.online", ConnectionType.SSL, 443), - new Server("wallet-arrr2.qortal.online", ConnectionType.SSL, 443), - new Server("wallet-arrr3.qortal.online", ConnectionType.SSL, 443), - new Server("lightd.pirate.black", ConnectionType.SSL, 443)); + // Servers chosen on NO BASIS WHATSOEVER from various sources! + new Server("wallet-arrr1.qortal.online", Server.ConnectionType.SSL, 443), + new Server("wallet-arrr2.qortal.online", Server.ConnectionType.SSL, 443), + new Server("wallet-arrr3.qortal.online", Server.ConnectionType.SSL, 443), + new Server("wallet-arrr4.qortal.online", Server.ConnectionType.SSL, 443), + new Server("wallet-arrr5.qortal.online", Server.ConnectionType.SSL, 443), + new Server("lightd.pirate.black", Server.ConnectionType.SSL, 443) + ); } @Override @@ -104,8 +107,9 @@ public class PirateChain extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - new Server("localhost", ConnectionType.TCP, 9067), - new Server("localhost", ConnectionType.SSL, 443)); + new Server("localhost", Server.ConnectionType.TCP, 9067), + new Server("localhost", Server.ConnectionType.SSL, 443) + ); } @Override diff --git a/src/main/java/org/qortal/crosschain/Ravencoin.java b/src/main/java/org/qortal/crosschain/Ravencoin.java index 6030fa50..51b65f68 100644 --- a/src/main/java/org/qortal/crosschain/Ravencoin.java +++ b/src/main/java/org/qortal/crosschain/Ravencoin.java @@ -43,19 +43,19 @@ public class Ravencoin extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - // Servers chosen on NO BASIS WHATSOEVER from various sources! - // Status verified at https://1209k.com/bitcoin-eye/ele.php?chain=rvn - //CLOSED new Server("aethyn.com", ConnectionType.SSL, 50002), - //CLOSED new Server("electrum2.rvn.rocks", ConnectionType.SSL, 50002), - //BEHIND new Server("electrum3.rvn.rocks", ConnectionType.SSL, 50002), - new Server("electrum.qortal.link", Server.ConnectionType.SSL, 56002), - new Server("electrum-rvn.qortal.online", ConnectionType.SSL, 50002), - new Server("electrum1-rvn.qortal.online", ConnectionType.SSL, 50002), - new Server("electrum1.cipig.net", ConnectionType.SSL, 20051), - new Server("electrum2.cipig.net", ConnectionType.SSL, 20051), - new Server("electrum3.cipig.net", ConnectionType.SSL, 20051), - new Server("rvn-dashboard.com", ConnectionType.SSL, 50002), - new Server("rvn4lyfe.com", ConnectionType.SSL, 50002)); + // Servers chosen on NO BASIS WHATSOEVER from various sources! + // Status verified at https://1209k.com/bitcoin-eye/ele.php?chain=rvn + new Server("electrum.qortal.link", Server.ConnectionType.SSL, 56002), + new Server("electrum1-rvn.qortal.online", Server.ConnectionType.SSL, 50002), + new Server("electrum2-rvn.qortal.online", Server.ConnectionType.SSL, 50002), + new Server("electrum3-rvn.qortal.online", Server.ConnectionType.SSL, 50002), + new Server("electrum4-rvn.qortal.online", Server.ConnectionType.SSL, 50002), + new Server("electrum1.cipig.net", Server.ConnectionType.SSL, 20051), + new Server("electrum2.cipig.net", Server.ConnectionType.SSL, 20051), + new Server("electrum3.cipig.net", Server.ConnectionType.SSL, 20051), + new Server("rvn-dashboard.com", Server.ConnectionType.SSL, 50002), + new Server("rvn4lyfe.com", Server.ConnectionType.SSL, 50002) + ); } @Override @@ -99,8 +99,9 @@ public class Ravencoin extends Bitcoiny { @Override public Collection getServers() { return Arrays.asList( - new Server("localhost", ConnectionType.TCP, 50001), - new Server("localhost", ConnectionType.SSL, 50002)); + new Server("localhost", Server.ConnectionType.TCP, 50001), + new Server("localhost", Server.ConnectionType.SSL, 50002) + ); } @Override diff --git a/src/main/java/org/qortal/data/transaction/TransactionData.java b/src/main/java/org/qortal/data/transaction/TransactionData.java index c4a115df..21628bb9 100644 --- a/src/main/java/org/qortal/data/transaction/TransactionData.java +++ b/src/main/java/org/qortal/data/transaction/TransactionData.java @@ -75,6 +75,9 @@ public abstract class TransactionData { @Schema(description = "groupID for this transaction") protected int txGroupId; + @Schema(description = "recipient for this transaction") + protected String recipient; + // Not always present @Schema(accessMode = AccessMode.READ_ONLY, hidden = true, description = "height of block containing transaction") protected Integer blockHeight; @@ -105,7 +108,7 @@ public abstract class TransactionData { /** Constructor for use by transaction subclasses. */ protected TransactionData(TransactionType type, BaseTransactionData baseTransactionData) { this.type = type; - + this.recipient = baseTransactionData.recipient; this.timestamp = baseTransactionData.timestamp; this.txGroupId = baseTransactionData.txGroupId; this.reference = baseTransactionData.reference; @@ -136,6 +139,10 @@ public abstract class TransactionData { return this.txGroupId; } + public String getRecipient() { + return this.recipient; + } + public void setTxGroupId(int txGroupId) { this.txGroupId = txGroupId; } @@ -250,5 +257,4 @@ public abstract class TransactionData { return Arrays.equals(this.signature, otherTransactionData.signature); } - -} +} \ No newline at end of file diff --git a/src/main/java/org/qortal/repository/hsqldb/HSQLDBDatabaseUpdates.java b/src/main/java/org/qortal/repository/hsqldb/HSQLDBDatabaseUpdates.java index cd2b30fa..8763961d 100644 --- a/src/main/java/org/qortal/repository/hsqldb/HSQLDBDatabaseUpdates.java +++ b/src/main/java/org/qortal/repository/hsqldb/HSQLDBDatabaseUpdates.java @@ -1014,5 +1014,4 @@ public class HSQLDBDatabaseUpdates { LOGGER.info(() -> String.format("HSQLDB repository updated to version %d", databaseVersion + 1)); return true; } - -} +} \ No newline at end of file diff --git a/src/main/java/org/qortal/settings/Settings.java b/src/main/java/org/qortal/settings/Settings.java index 9d25e846..679fe120 100644 --- a/src/main/java/org/qortal/settings/Settings.java +++ b/src/main/java/org/qortal/settings/Settings.java @@ -48,8 +48,8 @@ public class Settings { private static final int MAINNET_GATEWAY_PORT = 80; private static final int TESTNET_GATEWAY_PORT = 8080; - private static final int MAINNET_DEV_PROXY_PORT = 12393; - private static final int TESTNET_DEV_PROXY_PORT = 62393; + private static final int MAINNET_DEV_PROXY_PORT = 12393; + private static final int TESTNET_DEV_PROXY_PORT = 62393; private static final Logger LOGGER = LogManager.getLogger(Settings.class); private static final String SETTINGS_FILENAME = "settings.json"; @@ -111,10 +111,9 @@ public class Settings { private boolean gatewayLoggingEnabled = false; private boolean gatewayLoopbackEnabled = false; - // Developer Proxy + // Developer Proxy private Integer devProxyPort; - private boolean devProxyLoggingEnabled = false; - + private boolean devProxyLoggingEnabled = false; // Specific to this node private boolean wipeUnconfirmedOnStart = false; @@ -187,7 +186,6 @@ public class Settings { * This has a significant effect on execution time. */ private int blockPruneBatchSize = 10000; // blocks - /** Whether we should archive old data to reduce the database size */ private boolean archiveEnabled = true; /** How often to attempt archiving (ms). */ @@ -195,15 +193,12 @@ public class Settings { /** Serialization version to use when building an archive */ private int defaultArchiveVersion = 2; - /** Whether to automatically bootstrap instead of syncing from genesis */ private boolean bootstrap = true; - /** Registered names integrity check */ private boolean namesIntegrityCheckEnabled = false; - // Peer-to-peer related private boolean isTestNet = false; /** Single node testnet mode */ @@ -290,10 +285,10 @@ public class Settings { // Bootstrap sources private String[] bootstrapHosts = new String[] { - "http://bootstrap.qortal.org", - "http://bootstrap2.qortal.org", - "http://bootstrap3.qortal.org", - "http://bootstrap.qortal.online" + "http://bootstrap.qortal.org", + "http://bootstrap2.qortal.org", + "http://bootstrap3.qortal.org", + "http://bootstrap.qortal.online" }; // Auto-update sources @@ -312,17 +307,35 @@ public class Settings { "1.pool.ntp.org", "2.pool.ntp.org", "3.pool.ntp.org", - "cn.pool.ntp.org", - "0.cn.pool.ntp.org", - "1.cn.pool.ntp.org", - "2.cn.pool.ntp.org", - "3.cn.pool.ntp.org" + "asia.pool.ntp.org", + "0.asia.pool.ntp.org", + "1.asia.pool.ntp.org", + "2.asia.pool.ntp.org", + "3.asia.pool.ntp.org", + "europe.pool.ntp.org", + "0.europe.pool.ntp.org", + "1.europe.pool.ntp.org", + "2.europe.pool.ntp.org", + "3.europe.pool.ntp.org", + "north-america.pool.ntp.org", + "0.north-america.pool.ntp.org", + "1.north-america.pool.ntp.org", + "2.north-america.pool.ntp.org", + "3.north-america.pool.ntp.org", + "oceania.pool.ntp.org", + "0.oceania.pool.ntp.org", + "1.oceania.pool.ntp.org", + "2.oceania.pool.ntp.org", + "3.oceania.pool.ntp.org", + "south-america.pool.ntp.org", + "0.south-america.pool.ntp.org", + "1.south-america.pool.ntp.org", + "2.south-america.pool.ntp.org", + "3.south-america.pool.ntp.org" }; /** Additional offset added to values returned by NTP.getTime() */ private Long testNtpOffset = null; - - /* Foreign chains */ /** The number of consecutive empty addresses required before treating a wallet's transaction set as complete */ @@ -331,8 +344,6 @@ public class Settings { /** How many wallet keys to generate when using bitcoinj as the blockchain interface (e.g. when sending coins) */ private int bitcoinjLookaheadSize = 50; - - // Data storage (QDN) /** Data storage enabled/disabled*/ @@ -449,7 +460,6 @@ public class Settings { } } - // Constructors private Settings() { @@ -732,17 +742,16 @@ public class Settings { } - public int getDevProxyPort() { - if (this.devProxyPort != null) - return this.devProxyPort; + public int getDevProxyPort() { + if (this.devProxyPort != null) + return this.devProxyPort; - return this.isTestNet ? TESTNET_DEV_PROXY_PORT : MAINNET_DEV_PROXY_PORT; - } - - public boolean isDevProxyLoggingEnabled() { - return this.devProxyLoggingEnabled; - } + return this.isTestNet ? TESTNET_DEV_PROXY_PORT : MAINNET_DEV_PROXY_PORT; + } + public boolean isDevProxyLoggingEnabled() { + return this.devProxyLoggingEnabled; + } public boolean getWipeUnconfirmedOnStart() { return this.wipeUnconfirmedOnStart;