352 Commits

Author SHA1 Message Date
Mike Hearn
28869ad85d Export attachment count via JMX 2016-03-11 17:26:17 +01:00
Mike Hearn
730b7949ea Export stats to JMX from the state machine manager. 2016-03-11 17:26:17 +01:00
Mike Hearn
139bf1e450 Minor: fix trader demo 2016-03-11 17:02:35 +01:00
Mike Hearn
87e8562675 Make Jolokia return data as application/json 2016-03-11 11:57:38 +01:00
Mike Hearn
c436841461 Restrict Jolokia JMX access 2016-03-11 11:49:50 +01:00
Mike Hearn
fce799726f Minor: rename NetworkMap -> NetworkMapService for consistency 2016-03-11 11:49:50 +01:00
rick.parker
429ac589df Clean integration of Jersey & Jackson for JAX-RS support, with Config for setting up custom marshalling. No API classes configured by default
Enable Jersey monitoring JMX MBean

Updates based on Mike's feedback
2016-03-11 08:37:53 +00:00
Mike Hearn
a03352e6cd Export JMX statistics via JSON REST endpoints using Jolokia. 2016-03-09 15:53:32 +01:00
Mike Hearn
b2f9aa64d5 RatesFixProtocol: add progress tracking 2016-03-09 14:38:03 +01:00
Mike Hearn
4e15755883 RatesFixProtocol: add an empty, overridable beforeSigning method that lets you customise the logic of the protocol. 2016-03-09 14:08:37 +01:00
Mike Hearn
0f208d8b4d Check in a demo of how to get an interest rate fix from an oracle. 2016-03-08 17:31:35 +01:00
Mike Hearn
d63a3a8923 Minor: add a toString for the UnknownFix exception 2016-03-08 17:31:35 +01:00
Mike Hearn
6ac05c2edb Minor: don't check the file name in an upload if there isn't one 2016-03-08 17:31:35 +01:00
Mike Hearn
29e58ce3db Allow upload of interest rate fixes to the oracle over HTTP. 2016-03-08 17:31:35 +01:00
Mike Hearn
2b4a1eedc3 Generalise support for file uploads over HTTP to allow reuse of the upload servlet. 2016-03-08 17:29:56 +01:00
Mike Hearn
a7fec047ed Add an interest rates oracle.
Currently lacking the following useful things:
- Progress reporting
- Ability to upload new rates
- Demo app[s]
2016-03-08 17:29:56 +01:00
Mike Hearn
8d3c9643e9 Minor: Move TraderDemo to demos package 2016-03-08 17:29:23 +01:00
Mike Hearn
92a7363c83 Minor: add a couple more utilities for converting strings into the type safe endpoint address objects 2016-03-08 17:29:08 +01:00
Mike Hearn
5aaa6bd204 Minor: rename NodeAttachmentStorage -> NodeAttachmentService 2016-03-08 17:29:08 +01:00
Mike Hearn
ffcc0507c4 Return the hashes of newly uploaded attachments to the uploader. 2016-03-08 15:41:44 +01:00
Mike Hearn
5eda0e066e Minor: add a TODO about a little rpc framework to StateMachineManager 2016-03-08 15:19:44 +01:00
Mike Hearn
dc6ef73b6b Minor: more code motion ... TimestampingProtocol now split to top level class and moved to same location as the other protocols. Few other timestamping related classes reorganised. 2016-03-08 12:17:07 +01:00
Mike Hearn
2c4475b0d9 Minor: TimestamperNodeService -> NodeTimestamperService for consistency 2016-03-08 12:01:49 +01:00
Mike Hearn
8d041a6b1a Minor: yet another small move 2016-03-08 11:12:45 +01:00
Mike Hearn
bf3aed11e7 Minor: another small move 2016-03-08 11:10:31 +01:00
Mike Hearn
e9fddbc709 Reorganise the file hierarchy a bit. 2016-03-08 11:06:16 +01:00
Mike Hearn
d26b06c35c Allow download of attachments, and files within attachments, over HTTP. 2016-03-04 15:56:25 +01:00
Mike Hearn
6cb86ab840 Plumb attachments through to the contract verify functions (no contract uses them yet).
The right way to do this is probably to put the contracts onto the classpath before execution of the contract. However, this interacts closely with the sandboxing work, which isn't yet started, so for now this will do.
2016-03-02 15:35:46 +01:00
Mike Hearn
1123c28f02 Make the trader demo attach a PDF to the commercial paper self-issuance and then scan for it on the buyer side, print out the path on the filesystem where the PDF can be found. 2016-03-02 15:08:55 +01:00
Mike Hearn
8d906c703d Support auto-expansion of attachment jars on disk. 2016-03-02 14:51:42 +01:00
Mike Hearn
f0fa9e3097 Resolve and insert attachments to the local store when resolving transactions. Attachments aren't yet exposed to contract code. 2016-03-02 14:51:42 +01:00
Mike Hearn
7f5eb5bf2f Minor: make TwoPartyTradeProtocolTests use the new MockNode infrastructure 2016-03-02 14:51:42 +01:00
Mike Hearn
dc0925840a Make AbstractNode more customisable and upgrade the MockNode implementation. 2016-03-02 14:51:42 +01:00
Mike Hearn
1bd63c030c Minor: delete dead test-related code from Services.kt 2016-03-01 15:20:03 +01:00
Mike Hearn
3f19842632 Minor: logging, two more utility methods. 2016-03-01 15:13:43 +01:00
Mike Hearn
1330f33aba First pass trivial wallet: basic tracking of relevant states. 2016-02-29 22:14:25 +01:00
Mike Hearn
e2deea598e Minor: tweak the mock key management service a bit. 2016-02-29 22:06:18 +01:00
Mike Hearn
49b20df6cd Minor: add a couple of utilities to BriefLogFormatter to help cut down on unit test log spew. 2016-02-29 22:06:18 +01:00
Mike Hearn
48b2e561b7 Minor: make NodeAttachmentStorage open streams lazily to avoid resource leaks and to make checking for attachment existence fast. 2016-02-29 19:05:06 +01:00
Mike Hearn
a6835c4c04 Add unit tests for attachment fetch. 2016-02-29 19:05:06 +01:00
Mike Hearn
5bd8a3408b Minor: rename InMemoryNetwork/Node to talk more about messaging, to deconflict with the new mock node (which ties together all the various node services). 2016-02-29 19:05:06 +01:00
Mike Hearn
6bdfbb2a4f Refactor Node into AbstractNode+Node, to make it easier to introduce a MockNode for unit testing purposes. 2016-02-29 19:05:06 +01:00
Mike Hearn
37f1de8a4d Refactor FetchTransactionsProtocol into FetchDataProtocol and add support for fetching attachments. 2016-02-29 19:05:05 +01:00
Mike Hearn
0224bca1a9 Add a simple file backed attachment store, with tests. 2016-02-29 19:04:41 +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
Mike Hearn
c35d7794d8 Minor: make BriefLogFormatter.initVerbose take a set of flags saying what logging to activate vs silence. 2016-02-23 18:28:06 +01:00
Mike Hearn
9de104df7b Refactor the protocol framework out into separate files. 2016-02-23 18:28:06 +01:00
Richard Green
bc8962b0dc Minor: Moved JavaCommercialPaper.java from src/main... to contracts/src/main 2016-02-23 14:14:01 +00:00
Mike Hearn
adda2bbe6b Minor: move ExcessivelyLargeTransactionGraph exception into the right place 2016-02-18 17:29:44 +01:00
Mike Hearn
1243ca2066 Trading: in the two party trade protocol, check that the proposed transaction is contract-valid, and that the missing signatures are what is expected. 2016-02-17 18:38:24 +01:00