Andras Slemmer
f4a6a43aa6
contracts, core: Port CommercialPaperTests, IRSTests, ObligationTests, TransactioGroupTests
2016-07-06 13:25:08 +01:00
Andras Slemmer
cb47e00feb
core: Add convenience input(), remove TransactionGroupDSL
2016-07-06 13:25:08 +01:00
Shams Asari
5c0e7fbbf2
Moved topic parameter from send/receive methods to a ProtocolLogic property
2016-07-05 15:12:25 +01:00
rick.parker
5271882dcd
Event scheduling and docs for event scheduling
2016-06-30 08:51:52 +01:00
Ross Nicoll
c767638127
Move DummyContract.State into its own file
...
DummyContract.State isn't actually used by the DummyContract any more, so shouldn't
be part of that contract class.
2016-06-29 17:16:46 +01:00
rick.parker
717a5ab197
Break out message handler changes
...
Special serializer for kotlin object definitions
2016-06-22 09:50:15 +01:00
Ross Nicoll
93e9d0459c
Add custom serialiser for NonEmptySet
2016-06-20 16:08:17 +01:00
Andras Slemmer
878a683823
core: Remove warnings
2016-06-20 14:16:13 +01:00
Andras Slemmer
c9cb024bb5
Merged in use-urandom-2 (pull request #166 )
...
Use urandom 3
2016-06-20 14:15:03 +01:00
Andras Slemmer
a7419b116d
Add newSecureRandom() that uses a non-blocking SecureRandom provider on Linux
2016-06-20 14:11:03 +01:00
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
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 1a1ed3b9e6684131863e53b75b2c18ea785ca3ab, reversing
changes made to 09e2e49d44cf9197dd00464656bee0f33d2201cd.
2016-06-17 14:12:19 +01:00
Andras Slemmer
481d2f7151
core: use newSecureRandom() instead of SecureRandom.getInstanceStrong()
2016-06-17 13:07:25 +01:00
Andras Slemmer
cd91c6a0e7
core: add serialization test for keypairs
2016-06-16 17:03:44 +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
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
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
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
Matthew Nesbit
63a5fd1b9e
Add com.r3corda to all namespaces.
2016-05-23 14:53:56 +01:00
Matthew Nesbit
60ff42dd30
Move test to core as part of tidy up.
2016-05-20 16:43:02 +01:00
Matthew Nesbit
69cba98ddc
Push unit tests that needed some contract functionality into core by embedding the minimal contract support needed.
2016-05-20 16:43:02 +01:00
Matthew Nesbit
f6f56797ce
Refactor code into clear core, contracts and node namespaces. Move services into clear implementation and api sides. Push unit tests down to lowest level of dependency hierarchy possible.
2016-05-20 16:42:59 +01:00
rick.parker
041aab5af0
Serialization tokenization support for large objects (e.g. entries in ServiceHub)
2016-05-18 10:25:50 +01:00
Matthew Nesbit
058ac986bd
Move contracts base files to namespace to make api aspect clearer in includes.
...
Move Party to core.crypto as Party is closely aligned with the signing and used in code areas unrelated to the contract code.
2016-05-14 13:47:07 +01:00
Mike Hearn
81c698a260
Minor: fix some compiler warnings
2016-05-13 12:58:17 +02:00
Ross Nicoll
7c9cff799e
Add SignedData class
...
Adds a new SignedData class which will provide a deserialized copy of the data
contained only if the signature on it is valid.
2016-04-27 13:16:01 +01:00
Andrius Dagys
9a8b3bd1ef
Added interpolation functionality for the rates oracle. The oracle can be set up with different interpolation mechanisms, currently supported are: linear and cubic spline
2016-04-13 12:32:04 +01:00
Mike Hearn
49d5fb33c4
Remove copyright headers from the files and put the text in the README instead, per feedback from Jacob and external counsel.
2016-04-08 11:46:07 +02:00
Mike Hearn
caf48b65c9
Run auto-formatter over the code.
2016-04-07 20:16:28 +02:00
Andrius Dagys
ec80ddfcd5
Added an interpolator (natural cubic splines) to be used by the interest rate fix oracle for missing data points.
2016-04-05 15:35:47 +01:00
Richard Green
6c0e696107
Updated with new Tenor class that verifies string during construction.
...
Now uses new Tenor class for Interest Rate Oracle
2016-03-22 11:46:06 +00:00
Richard Green
a78c5b11d1
IRS Contract example
2016-03-22 11:36:40 +00:00
Richard Green
5e3ff4238f
Cosmetic change to Amount to display decimal places
2016-03-18 13:45:22 +00:00
Richard Green
966724f941
Utility functions / classes / enums that will assist in the writing of some financial products
2016-03-15 18:22:36 +00:00
Mike Hearn
105f9e1069
Add Apache JEXL as a dependency, as part of an exploration of on-the-fly contract specialisation (this solution may not be taken forward but suffices to unblock other work)
2016-02-29 18:56:03 +01:00
Mike Hearn
f32c83b8b3
Protocols: fix unit tests for progress tracker and don't emit UNSTARTED to all subscribers.
2016-02-24 14:51:04 +01:00
Mike Hearn
c3f86f6557
Integrate a simple progress tracking system into the protocol framework.
...
The progress tracker API lets you model a tree of steps, along the same structure as protocols and subprotocols. Each step has an (optionally changing) label, and thus progress trackers can be arranged in a tree. Updates to the progress at each level flow up the tree via an RxJava observable (I guess we will use this more in future).
A simple console renderer is provided that uses ANSI escapes and Emoji to show animated progress through a protocol.
The trader demo is enhanced to use this framework, when run outside of Gradle.
2016-02-24 12:58:37 +01:00