3
0
mirror of https://github.com/Qortal/altcoinj.git synced 2025-02-01 07:42:17 +00:00
Commit Graph

1217 Commits

Author SHA1 Message Date
Mike Hearn
52586edb33 NetworkParameters: Refactor out into separate classes.
Hide fields behind getters and make unit tests create anonymous subclasses
to tweak them rather than overwriting global variables.

Introduce a regtest params class for use in the comparison tool.

Conflicts:
	core/src/test/java/com/google/bitcoin/core/BitcoindComparisonTool.java
	core/src/test/java/com/google/bitcoin/core/FullPrunedBlockChainTest.java
2013-06-05 14:10:39 +02:00
Mike Hearn
f6f290cc05 NetworkParameters: hide more params behind a getter. 2013-06-05 14:10:39 +02:00
Mike Hearn
1f005d7b3d NetworkParameters: hide packet magic behind a getter.
Conflicts:
	tools/src/main/java/com/google/bitcoin/tools/BlockImporter.java
	core/src/main/java/com/google/bitcoin/utils/BlockFileLoader.java
	core/src/test/java/com/google/bitcoin/core/FullBlockTestGenerator.java
2013-06-05 14:10:39 +02:00
Mike Hearn
8043bc335b NetworkParameters: hide port behind a getter. 2013-06-05 14:10:38 +02:00
Mike Hearn
ec62bbdeab NetworkParameters: hide genesis block behind a getter.
Conflicts:
	core/src/test/java/com/google/bitcoin/core/FullBlockTestGenerator.java
2013-06-05 14:10:38 +02:00
Mike Hearn
619495875c Block: Make some things public that aren't going to change.
Conflicts:
        core/src/main/java/com/google/bitcoin/core/Block.java
2013-06-05 14:10:38 +02:00
Matt Corallo
28292b45a5 Implement dumb Comparable in Sha256Hash. 2013-06-05 14:10:37 +02:00
Matt Corallo
6cdfad43a3 Make Tx.connect public by exposing enums + tweak DISCONNECT_ON_CONFLICT 2013-06-05 14:10:37 +02:00
Matt Corallo
f7c09d74ea Introduce Transaction.hasLockTime() and use it where appropriate. 2013-06-05 14:10:37 +02:00
Matt Corallo
2bd9531da6 Add txout.setValue, public decodeFromOpN+appendByte new MultiSig. 2013-06-05 14:10:37 +02:00
Matt Corallo
b840ddfcc8 Require bitcoind replies to a inv instead of just sending blocks.
This makes b57 testing actually useful.
2013-06-05 14:10:36 +02:00
Matt Corallo
60520ba17a Add new data-driven tests from the reference client 2013-06-05 14:10:36 +02:00
Matt Corallo
fad5356bd9 Properly uncache scriptSig in TransactionInput.setScriptBytes 2013-06-05 14:10:36 +02:00
Matt Corallo
70685745c3 Fix a possible ArrayIndexOOBEx in Script processing (cleaner error). 2013-06-05 14:10:36 +02:00
Matt Corallo
304bc705b8 Fix script parsing bug and test for it (partially reverts 7837a54) 2013-06-05 14:10:23 +02:00
Matt Corallo
e8ea5cea7c Re-enable port selection as pull-tester will need it 2013-06-04 22:18:11 +02:00
Matt Corallo
a1c1a1117a Rename blocks in FullBlockTestGenerator to make new tests easier 2013-06-04 22:18:11 +02:00
Matt Corallo
f9ebf56047 Test importing first 100K of blocks. 2013-06-04 22:18:11 +02:00
Matt Corallo
68e6228356 Handle duplicate chain.add calls significantly more effeciently. 2013-06-04 22:18:11 +02:00
Matt Corallo
ecca1c6f47 Add new BlockImporter. 2013-06-04 22:18:11 +02:00
Matt Corallo
729f2f5312 Store blocks on disk during BitcoindComparisonTool to save memory. 2013-06-04 22:18:11 +02:00
Matt Corallo
a131d08a58 Move BlockImporter to a util and make it an Iterator<Block> 2013-06-04 22:18:11 +02:00
Matt Corallo
1dadb33c28 Split expensive blocks into sigExpensive and largeReorg. 2013-06-04 22:18:11 +02:00
Matt Corallo
d1e689e6c5 Delete bitcoind patch, it is now in bitcoin/contrib/ 2013-06-04 22:18:11 +02:00
Matt Corallo
9cbd824457 Create very large reorg test. 2013-06-04 22:18:10 +02:00
Matt Corallo
0390bc9371 Add height info to FullBlockTests, to verify the tests are correct. 2013-06-04 22:18:10 +02:00
Matt Corallo
9ddbcb88b9 Make txCounter work for larger values. 2013-06-04 22:18:10 +02:00
Matt Corallo
2e5ca9e72b Allow FullBlockTestGenerator to indicate maximum reorg depth. 2013-06-04 22:18:10 +02:00
Matt Corallo
0ada33d2b1 Provide more opacity into exceptions. 2013-06-04 22:18:10 +02:00
Matt Corallo
939337b2db Fix premature optimization in H2FullPrunedBlockStore (resets state)
This replaces the H2FullPrunedBlockStore schema with one that will
take (maybe) some more disk space while being a good bit faster.
The tradeoff made was really not worth it.

Also adds a version field to settings database incase something
other than schema changes in the future.
2013-06-04 22:18:10 +02:00
Matt Corallo
59e096e2ea Add optional support native ECDSA (designed for sipa's impl).
This could be significantly more optimized if we avoided crossing
the JNI barrier as often, but as it is its waaay faster than
BouncyCastle.
2013-06-04 22:18:10 +02:00
Matt Corallo
70bffcd6f4 Move onPeerConnected to after VerAck. 2013-05-22 22:46:10 +02:00
Mike Hearn
f1750679b6 Use non-deprecated asserts in AlertMessageTest. Found by IntelliJ inspections. 2013-05-08 16:33:22 +02:00
Mike Hearn
2830d48ac1 Simply a few assertions. 2013-05-08 15:42:27 +02:00
Mike Hearn
1463213f25 Use port 18444 for regtest mode. 2013-05-08 14:30:15 +02:00
Mike Hearn
9d5b3865f5 Wallet: remove an unused variable from reorganize(). 2013-05-07 12:48:34 +02:00
Mike Hearn
e2291d2fb4 Wallet: remove the affectedUs check in reorganize(). It was buggy, and if it had worked it would have introduced other issues. We always need to process the entire reorg to keep the depth and workDone counters on transactions accurate. 2013-05-07 12:00:50 +02:00
Mike Hearn
4886a137bc TransactionConfidence: make accessors return zero rather than throw when pending, and add a method to get a depth future. 2013-05-06 17:59:31 +02:00
Mike Hearn
bacc67f26f Peer: fix buggy log statement. 2013-05-06 17:34:48 +02:00
Mike Hearn
857da6bb29 AbstractBlockChain: add a helper method to create futures that complete when the chain reaches a particular height. 2013-05-06 16:23:08 +02:00
Mike Hearn
9a20c39b15 A few simplifications suggested by IntelliJ 2013-05-06 16:21:32 +02:00
Mike Hearn
c64453f835 Wallet: change the extensions API.
The old API was very limiting. Rather than have extensions be a single object that creates subclasses of the Wallet class, allow arbitrary objects to be attached to Wallets. Objects know if they are mandatory and how to serialize themselves. A wallet can have as many extensions as wanted in this way.
2013-05-06 15:40:36 +02:00
Mike Hearn
3eb3dbcf89 Better output for unusual script types in Transaction. 2013-05-06 13:53:39 +02:00
Mike Hearn
ee0b56180b WalletAppKit - block on shutdown. 2013-05-06 13:53:15 +02:00
Mike Hearn
82e056cab7 Rename Wallet.waitForBalance() to be Wallet.getBalanceFuture(). 2013-05-06 12:00:39 +02:00
Mike Hearn
e8f1418865 Wallet: Add a Wallet.waitForBalance() method. 2013-05-02 16:51:29 +02:00
Mike Hearn
dddf02d6a1 Script: Use Guava ImmutableMap for the opcodes. This is more memory efficient. They could also be lazy initialized later if we need to. 2013-04-29 14:16:48 +02:00
Mike Hearn
69537c0bf0 Script: some minor tweaks and use the ScriptOpCodes parsing in ScriptTest. 2013-04-29 14:10:36 +02:00
Mike Hearn
95b7b90d4a Update AUTHORS and remove duplicated list from the pom. 2013-04-29 13:43:44 +02:00
Alexander Lolis
52cec7f6be Refactored the huge switch. Replaced it with a HashMap which contains OpCode -> String instead; less lines
Implemented getOpCode method and added a HashMap which contains String -> OpCode for the lookup
2013-04-29 13:41:03 +02:00