Andrius Dagys
30ca340b6e
Refactored NotaryChangeProtocol and tests: moved the proposal verification step into the protocol.
...
Added another proposal verification step in the NotaryChangeProtocol.
Added the cause exception message to the 'notary change refused' error.
2016-06-17 15:05:35 +01:00
Andrius Dagys
0a5b7ace35
Made TransactionBuilder abstract. Every transaction type now needs to implement and provide its own Builder. This is required since for specific types we need to run different logic when adding new items to the transaction. For example, when adding a new input state to a transaction of type NotaryChange we need to add all of the states participants to the signers list.
2016-06-17 15:05:35 +01:00
Andrius Dagys
9958b5c603
Added 'signers' property to the transaction data models. Signers holds the list of all public keys that need to be signed for (command keys and additional ones such as notary).
...
Removed Notary & ChangeNotary commands, keys to be signed for are added to the signers list during transaction build phase.
2016-06-17 15:05:35 +01:00
Andrius Dagys
70495a021e
Introduce TransactionState, which wraps ContractState and holds the notary pointer.
...
Remove notary from ContractState.
Introduce TransactionType, which specifies custom validation logic for a transaction.
2016-06-17 15:05:35 +01:00
Andrius Dagys
3b1e020082
Extended the data model so that every state has to define a set of 'participants' - parties that are able to consume that state in a valid transaction.
...
Added protocol for changing the notary for a state, which requires signatures from all participants
2016-06-17 15:05:35 +01:00
Andras Slemmer
0c325c31a2
Revert "Merged in use-urandom-2 (pull request #159 )"
...
This reverts commit 1a1ed3b9e6
, reversing
changes made to 09e2e49d44
.
2016-06-17 14:12:19 +01:00
Andras Slemmer
1a1ed3b9e6
Merged in use-urandom-2 (pull request #159 )
...
Use /dev/urandom try no.2
2016-06-17 13:36:23 +01:00
Andras Slemmer
f9d1c54195
core: Add comments explaining the never-to-be-removed deprecated functions
2016-06-17 13:27:35 +01:00
Andras Slemmer
1f171a1ece
Revert "core: Removed unused deprecated test functions"
...
This reverts commit 1c09ff86ed6803fcda6c76b6f5e323621c4b0e06.
2016-06-17 13:27:35 +01:00
Andras Slemmer
eaf37e2e7a
core: make comment javadoc style
2016-06-17 13:27:35 +01:00
Andras Slemmer
643d3bab2b
core: force transaction tests to check for accept/fail
2016-06-17 13:27:35 +01:00
Andras Slemmer
f0d74d0859
core: Removed unused deprecated test functions
2016-06-17 13:27:35 +01:00
Andras Slemmer
ea7f9177d4
core: make newSecureRandom() a one-liner
2016-06-17 13:07:25 +01:00
Andras Slemmer
481d2f7151
core: use newSecureRandom() instead of SecureRandom.getInstanceStrong()
2016-06-17 13:07:25 +01:00
Andras Slemmer
6229e39b42
core: Add newSecureRandom() that uses a non-blocking SecureRandom provider
2016-06-17 13:07:25 +01:00
Andras Slemmer
f06487aa4c
Merged in sort-of-incremental-quasarScan (pull request #154 )
...
Sort of incremental quasarscan
2016-06-17 10:38:39 +01:00
Shams Asari
7f3458803c
Protocols can use the serviceHub lazily in their constructors
2016-06-17 10:30:25 +01:00
Andras Slemmer
dc5da8e1ad
build: use QuasarPlugin instead of copypasta
2016-06-17 10:16:46 +01:00
Andras Slemmer
2663a6390e
core: Kryo extension methods for reading/writing ByteArrays prefixed with their sizes
2016-06-16 17:03:44 +01:00
Andras Slemmer
5b4c4f167d
core: .equals() -> ==
2016-06-16 17:03:44 +01:00
Andras Slemmer
2b4ebd4f09
core: use optimizedPositive for size serialization
2016-06-16 17:03:44 +01:00
Andras Slemmer
cd91c6a0e7
core: add serialization test for keypairs
2016-06-16 17:03:44 +01:00
Andras Slemmer
af3d87803d
core: serialize bytearray sizes instead of relying on static sizes
2016-06-16 17:03:44 +01:00
Andras Slemmer
376b73b823
core: switch to static size bytearray serialization of keypairs
2016-06-16 17:03:44 +01:00
Andras Slemmer
22567d11b5
core: implement custom serializers for ed25519 keypairs
2016-06-16 17:03:44 +01:00
Andras Slemmer
1fe283c113
core: switch to ed25519
2016-06-16 17:03:44 +01:00
Andras Slemmer
9930e8d5c7
core: add net.i2p.crypto:eddsa dependency
2016-06-16 17:03:44 +01:00
Rick Parker
512e304bf1
Merged in remove-commented-out-resolve-tx-proto (pull request #156 )
...
Remove commented out ResolveTransactionsProtocol call as it is not required
2016-06-16 16:19:03 +01:00
Ross Nicoll
ad72f3e48f
Add issuer to cash amounts
...
Add issuer of a cash when referring to amounts of cash (except for the very few cases where
the issuer is not important, such as when referring to aggregated totals across a set of
issuers). Replaces CommonCashState with TokenDefinition, as a more accurate reflection of
what the class represents.
2016-06-16 15:05:49 +01:00
rick.parker
cae39332bf
Remove commented out ResolveTransactionsProtocol call as it is not required
2016-06-16 13:15:37 +01:00
Ross Nicoll
f831ffdf3d
Add tests for TransactionGraphSearch
2016-06-15 16:21:53 +01:00
Shams Asari
aa153be6f0
moved methods in ChildrenProgressTrackers into ProgressTracker
2016-06-14 16:42:42 +01:00
Richard Green
2ce0dce0aa
.
2016-06-14 11:28:58 +01:00
Richard Green
86203709c0
Payment dates now are calculated as an offset to the period end date
2016-06-13 19:00:27 +01:00
rick.parker
73cbab0084
Pull out Wallet observable into it's own branch
...
Review feedback
Review feedback
Apply feedback from previous PR
Apply feedback from previous PR
Apply feedback from previous PR
PR feedback
PR feedback
PR feedback
2016-06-10 17:16:56 +01:00
Shams Asari
2365f9bca5
Persisting transactions to disk
2016-06-08 10:15:14 +01:00
rick.parker
97e04ba7d0
Fix registration of services due to Kryo not following synthetic fields by default
...
Review feedback
2016-06-07 16:29:59 +01:00
Andrius Dagys
21f53a7d3e
Revert "Revert "Merged in validating-notary (pull request #123 )""
...
This reverts commit e64145991e
.
2016-06-07 13:53:00 +01:00
Ross Nicoll
f4f0e160d2
Genericise Cash contract to support non-Currency things
...
Split the verification and commands for the Cash contract into a new AbstractCashLike
class, and make Cash a concrete implementation of that class, specialised for dealing
with Currency as the underlying token.
2016-06-07 13:49:26 +01:00
Andrius Dagys
e64145991e
Revert "Merged in validating-notary (pull request #123 )"
...
This reverts commit d9f4e4da2e
, reversing
changes made to 654dc3f60a
.
2016-06-07 12:29:27 +01:00
Andrius Dagys
c45bc0df20
Split up Notary protocol into Client and Service parts. The Service protocol can be extended to provide additional transaction processing logic, e.g. validation.
...
Implemented a Simple and Validating Notary services.
2016-06-07 10:58:34 +01:00
Shams Asari
654dc3f60a
Resuming from checkpoints now working - seller (but not buyer) in trader demo can be restarted
2016-06-06 17:49:40 +01:00
rick.parker
8122e35a8a
Have ServiceHub entries implement SerializeAsToken so they are not copied into protocol checkpoints.
2016-06-06 16:55:46 +01:00
Ross Nicoll
d7b367965f
Genericise Amount class
...
Make the Amount class generic so it doesn't have to represent a quantity of a
currency, but can handle other things such as assets as well, or extended detail
(for example a currency-issuer tuple).
2016-06-01 11:58:13 +01:00
Ross Nicoll
f7c0756526
Add a dummy test to NonEmptySetTest.Guava
...
Add a dummy test so that when IntelliJ (incorrectly) scans NonEmptySetTest.Guava
looking for tests, it finds one and doesn't complain.
2016-05-25 10:17:02 +01:00
Ross Nicoll
e3727a1de6
Merged in rnicoll-base58-tests (pull request #113 )
...
Port Base58Test to Kotlin
2016-05-24 18:20:56 +01:00
Rick Parker
570dc38423
Merged in cor-133-clock-helpers (pull request #112 )
...
MutableClock for testing, simulation and demos plus associated utilities
2016-05-24 17:58:37 +01:00
Ross Nicoll
4744740913
Add NonEmptySet
...
Add a new set-like collection which is constrained to ensure it's never
empty.
2016-05-24 15:39:24 +01:00
Ross Nicoll
40b6b0d186
Port Base58Test to Kotlin
2016-05-24 14:20:53 +01:00
rick.parker
f8e610aa71
Re-apply changes
2016-05-24 09:41:00 +01:00