Commit Graph

494 Commits

Author SHA1 Message Date
Stefan Iliev
e4615f7f47 CORDA-2586 explorer exception handling (#4957)
* Initial version of new(old) dialog that won't print a stacktrace for rpc exceptions.

* Decoupled CordaVersionProvider. Moved common files to common-logging to lower dependencies on the node explorer.

* Removed unused import and duplicate documentation comment.

* Moved error code rewrite policy in the new common/logging module according to PR review.

* Removed extra line.

* Updated log4j configurations with new package name where logging policies will be contained.

* Included common-logging module with cliutils.
2019-04-09 19:14:37 +00:00
cburlinchon
c33ccc1e1b Dont add cliutils to non cli app, remove addition of log4j2 from config/dev 2019-03-22 14:54:17 +01:00
cburlinchon
bc74ba4be4 Add missing cliutils dependency to explorer 2019-03-22 14:54:17 +01:00
Jonathan Locke
eabd056511 ENT-3333: Return error code for invalid cmdline options (#4910)
If an invalid command line option is specified and the parser is unable to parse the input, return an error code to the caller. This is useful in scripting scenarios where it might be important to detect that Corda failed to start due to invalid command line parameters
2019-03-21 11:15:32 +00:00
JamesHR3
a90f394d43 [CORDA-2738] Allow the ProgressTracker to cope with child trackers with the same steps (#4894) 2019-03-18 13:50:29 +00:00
Jonathan Locke
82c45c6f83 CORDA-2506: Better handling of invalid log path (#4895)
Test if we have access to the logging path (baseDirectory/logs) before attempting to write to them. This allows us to shut down gracefully with an easily understandable error message.
Without doing this, the log4j2 will attempt to access the logPath when it first uses the logger in the call() function.
2019-03-15 09:54:53 +00:00
JamesHR3
76dc981b91 [CORDA-2737] Buffer events from observables in ProgressTracker until subscribed to (#4882) 2019-03-13 16:33:29 +00:00
Chris Rankin
ea263b3e54 CORDA-2569: Add "flow kill <ID>" command to Corda's shell. (#4861)
* CORDA-2569: Add "flow kill <ID>" command to Corda's shell.

* Add testing and documentation for RPC killFlow operation.
2019-03-08 16:39:22 +00:00
Chris Rankin
b9e4804388 ENT-3128: Update documentation for Node Explorer. (#4817) 2019-02-27 14:32:39 +00:00
Chris Rankin
04ba77732b ENT-3128: Tidy up DemoBench's "built-in CorDapp" management. (#4814) 2019-02-25 18:11:21 +00:00
Chris Rankin
111acc5d6e CORDA-2671: Remove broken ExplorerSimulator from Node Explorer. (#4811)
* CORDA-2671: Remove broken ExplorerSimulator from Node Explorer.

* CORDA-2671: Document that Node Explorer is included with DemoBench.
2019-02-25 18:11:06 +00:00
Tommy Lillehagen
8fb3d4dc01
CORDA-2669 - Reintroduce pendingFlowsCount (#4806)
* CORDA-2669 - pendingFlowsCount not in public API

Reintroduce `pendingFlowsCount` to public API (as deprecated). Advise
to use the `gracefulShutdown` command in the shell instead.

* CORDA-2669 - Add pendingFlowsCount to api-current.txt
2019-02-23 17:10:32 +00:00
Mike Hearn
1ed5fce6a6 Backwards compat: Put the confidential-identities module back in the node classpath by default. Separating it out into a standalone "app" needs more thought and design work, if we do it at all. 2019-02-18 14:02:36 +01:00
Tommy Lillehagen
4434a005dd
CORDA-2622 - Fix shell extensions (#4774)
* CORDA-2622 - Fix shell extensions

* CORDA-2622 - Only add auto-completion stuff if enabled
2019-02-17 17:16:57 +00:00
Tommy Lillehagen
f781edccd4
CORDA-2623 - Add help screen to Network Builder CLI tool (#4775) 2019-02-17 16:33:08 +00:00
Chris Rankin
7866dde91b
CORDA-2556: Refactor World City database into a library module. (#4718)
* Refactor World City database into a library module.
* Migrate CityDatabaseTest into worldmap module.
2019-02-05 15:29:26 +00:00
Shams Asari
c39c61ecab
CORDA-2467: Moved non-contract things out of finance-contracts and into finance-workflows (#4700)
This includes all of the cash selection logic, JSON support using jackson and a bunch of utilities which are not relevant to contract verification. The exception to this are Interpolator which has been moved to the IRS demo, and PhysicalLocationStructures.kt which is now in explorer.
2019-02-01 17:31:12 +00:00
Tudor Malene
262a7ad1b7
Backport merge fixes added to ENT (#4618)
Fix test and address code review comments.
2019-01-29 13:45:04 +00:00
Viktor Kolomeyko
5744614886
ENT-3001: Make subCommands lazy val (#4668)
This is to prevent initialising it multiple times.
Please see linked Jira to understand how this can cause harm.
2019-01-29 10:48:33 +00:00
Shams Asari
5656d8ee80 CORDA-2510: Added missing confidential-identities CorDapp to DemoBench (#4636) 2019-01-25 17:48:10 +00:00
Katarzyna Streich
e93327bb6a
CORDA-2351 - Fix Demobench readme (#4624)
* CORDA-2351 - Fix Demobench readme

Remove information that BankOfCorda app is automatically loaded. Add
new up-to-date screenshots and information on how to check issuable
currencies on the node.
2019-01-23 13:45:53 +00:00
Stefano Franz
97df10e1f5 print out the underlying error when an RPC call fails (#4605)
make it red.
2019-01-22 10:14:01 +00:00
Shams Asari
c6a7d14f4f
Reducing the size of the CorDapp jars used in tests (#4600)
The helper method enclosedCordapp is a replacement to scanning the current package (which pulls in a lot more into the jar than intended).
2019-01-21 13:54:26 +00:00
JamesHR3
2ec6fe4c0a [CORDA-2441] Fix Stdout progress renderer to swap out correct appender (#4582)
* Fix stdout renderer to swap out correctly named appender.

Also fix two compiler warnings

* Add clearer exception when console appender cannot be found

* Change error displayed when appender not found to warning

* Remove type declaration on separate line
2019-01-15 18:54:08 +00:00
Shams Asari
24a7821dce
CORDA-2434: CordaRPCClient now only has c'tors rather a mix of c'tors and factory methods (#4569) 2019-01-14 16:07:56 +00:00
JamesHR3
5e32e718ae
[CORDA-2326] Ensure right step is rendered by AnsiProgressRenderer (#4514)
* Add test to reproduce problem

* Remap step indices when the step tree changes
2019-01-11 09:53:58 +00:00
JamesHR3
f9e0c518b9
[CORDA-2374] Avoid using Unicode in the Progress Tracker output on Windows (#4485)
* Avoid Unicode output from the Progress Tracker on Windows
* Fix an issue with the Progress Tracker where the currently executing state is reported as done
2019-01-03 13:34:34 +00:00
Shams Asari
c08f65a92c
CORDA-2128: Moved all the helper methods added to NetworkParameters.kt into internal (#4466) 2018-12-27 14:21:37 +00:00
Anthony Keenan
af75a05502
Fix irs-demo dependency issues (#4438)
* Fix irs-demo dependency issues

* Fixed a problem with the IRS demo test JAR.

* Fixed deployNodes problem and log4j info statement.
2018-12-20 12:31:16 +00:00
Shams Asari
830959c9f7
CORDA-2345: Simplified TestCordapp to make it inline with the recent CorDapp versioning changes (#4434)
TestCordapp has now two implementations to clearly separate the two use cases it has in the Corda repo:

* TestCordappImpl which implements the revised public API of TestCordapp; namely that a TestCordapp instance references a real CorDapp jar on the classpath. This is either an external dependency jar in which case it’s taken as is and given to the node, or it’s a local gradle project in which case it’s compiled using the gradle “jar” task to generate the CorDapp jar. This approach means the jar has all the original CorDapp versioning information, which is important that it’s correct when testing. To this end, TestCordapp only needs to expose the ability to specify the app’s config. All the remaining properties have moved to CustomCordapp.

* CustomCordapp for creating arbitrary custom CorDapps, including specifying the jar’s MANIFEST values. This is internal API and only used for testing the platform. Technically this shouldn’t implement TestCordapp but does so to reduce the complexity of the driver and mock network.
2018-12-20 09:49:58 +00:00
szymonsztuka
4aaefb4fe9 CORDA-2331 Split Workflow and contracts of Finance App into separate Cordapps (#4422)
* Split Workflow and contracts of Finance App into separate Cordapps, part 1 - content which is different between OS and ENT is still in contract Cordapp.

* Move CashSelection implementations to workflow module.

* Move CashSelection implmentations to workflow module.

* Move finance module to finance-flows, top level finance module is empty.

* Move finance module to finance-flows, top level finance module is empty.

* Updated build comment.

* Revert publication of combined (contracts and flows) corda-finance.jar (to maintain backwards compatibility with 3rd party cordapps dependent on finance)

* Added backwards compatibility clarification comment.

* Re-instate new cordapp metadata.

* Global rename of `finance-flows` to `finance-workflows` to follow adopted naming conventions.

* Addressed final review comments.

* Rename application to "Corda Finance Demo"

* Generation of original corda-finance jar from new sub-modules.

* Fixed and tested demobench with new split finance contract and workflow jars.

* Renamed finance sub-modules to contracts and workflows.

* Remove Michele!!!

* Minor fix to filtering logic.

* Align CorDapp configuration filename with workflows jar.

* Fix breaks caused by finance module naming changes.

* Final alignment between OS/ENT of finance contract code.
2018-12-19 18:02:51 +00:00
Dimos Raptis
f58757bda9
[CORDA-1676] Adjust progress tracking rendering for skipped elements (#4372)
* Adjust styling for flow steps that are skipped
2018-12-10 15:00:47 +00:00
Shams Asari
b020e602ba
Fingerprint for Exception class reverted to V3 (fixes CORDA-2227 & CORDA-2292) (#4386) 2018-12-07 18:57:51 +00:00
josecoll
63e326aedb
CORDA-2157 - Hash to Signature constraints migration V2 (#4261)
* Hash to signature constraints migration #1

* After rebase from Attachments Classloader commit.

* Simplified implementation without CZ whitelisting and relaxing the no-overlap rule slightly.

* Further simplification.

* Detailed implementation.

* Use fully loaded Cash contract jar for hash to signature constraints migration test.
Additional debug logging.

* Minor cleanup.

* Address PR review feedback.

* Minor fix.

* Fixes following rebase from master.

* Implemented `calculateEntriesHashes` to improve classloader validation performance.

* Address minor PR review comments.

* Added integration tests and some minor fixes.

* Minor fixes following rebase from master.

* Updates and fixes following integration testing.

* Added changelog entry.

* Fix broken unit tests.

* Fix compilation errors in DriverDSL tests after rebase from master.

* Minor fix to test cordapp jar signing using explicit keystore.

* Run hash-to-signature constraints integration test out of process using a non-validating notary.

* Address PR review feedback: contract version from database + other minor changes.

* Address final PR review feedback: remove signed attachment field from attachmentWithContext

* Resolve conflicts following rebase from master.

* Fix failing junit test.

* Fix Kryo serialization error (forgot to write new `version` identifier field)

* Removed redundant query carried over from previous commit.

* Added documentation.

* Fix test case where explicit Hash Constraint input and Signature Constraint output explicitly configured.

* Addressing PR review comments from SA.

* AttachmentQueryCriteria API: added wither methods and Java Unit tests.

* Fixed compilation error caused by Unit tests being in wrong module.

* Added @CordaInternal to canBeTransitionedFrom function.

* Minimized AttachmentClassloader overlap duplicates checking.

* Moved JarSignatureTestUtils and ContractJarTestUtils to internal pending clean-up and documentation before public release.

* Minor fix following rebase from master.

* Removed redundant checkNotNull(networkParameters) checks now that these are always passed into the main (non-deprecated) constructor.

* Remove capitalization.
2018-12-04 18:45:29 +00:00
Shams Asari
c03ad5abc3
CORDA-2254: Replaced JmxPolicy.httpPort with the original PortAllocation (#4345)
The httpPort parameter is fundamentally wrong as it gives the same monitoring port to each node!

Added JmxPolicy.defaultEnabled() to workaround the (incorrect) default false value of startJmxHttpServer.
2018-12-03 17:25:56 +00:00
Anthony Keenan
ec42d30661
Fix windows build (#4335) 2018-11-30 19:01:15 +00:00
Dimos Raptis
11e7bf5bbc
CORDA-1456: Change output format in the shell (#4318)
* [CORDA-1456] Add support and switch for JSON/YAML output format
2018-11-30 10:14:26 +00:00
Shams Asari
36fdb858c6 CORDA-2239: DriverDSL.startNode overload cleanup (#4252)
The overload that takes in a bunch of the node parameters with default values has been fixed to the V3 version. New node parameters since V3 now only exist in NodeParameters.

The reason for this is otherwise each new release of Corda that introduces new node parameters will force a new startNode overload to be added to DriverDSL to preserve backwards compatibility.

NodeParameters has been moved to its own file and logLevel is removed as it doesn't do anything.
2018-11-28 14:36:26 +00:00
Anthony Keenan
994afcfef7 [CORDA-2055] [CORDA-2236]: Bootstrapper cordapp copying (#4309) 2018-11-28 13:28:56 +00:00
Shams Asari
fd60c82134
CORDA-2254: JmxPolicy fixed so that it turns on monitoring via the jmxMonitoringHttpPort config (#4298)
* CORDA-2254: JmxPolicy fixed so that it turns on monitoring via the jmxMonitoringHttpPort config

To make the API easier to use, httpPort was introduced and both startJmxHttpServer and jmxHttpServerPortAllocation deprecated.
2018-11-28 09:50:29 +00:00
Michele Sollecito
dc1f5f0ccd
[CORDA-2257]: Enabling optional global test port allocation (#4310) 2018-11-27 16:40:30 +00:00
Tudor Malene
8784e51a8f
CORDA-2248 fix rpc classloader issue (#4288) 2018-11-27 09:53:44 +00:00
Anthony Keenan
b7d04b1c6e
[CORDA-2235]: Add overrides for network parameters via command line and file (#4279)
* Temp commit

* Print the error message first by default, makes error output more natural.

* Polishing

* Further modifications after testing

* Documentation updates

* Couple of fixes after review

* Removing unnecessary tests

* Fix broken test

* Add interface to bootstrapper for testign

* Added unit tests

* Remove unused class

* Fix up bootstrapper unit tests and add a couple more

* Refactor the tests slightly

* Review comments

* Couple of minor tweaks
2018-11-26 17:11:05 +00:00
Vardan Nadkarni
e14421b7b4 CORDA-1480: In Demobench, saving a profile, opening it, and adding a node skips next name (#4113)
* Fixes Github #3800 ,Jira Issue CORDA-1480

* did the requested changes

* does the requested changes

* Did requested changes

* Does the required changes
2018-11-23 10:18:02 +00:00
Dominic Fox
2c6bce3e5d
CORDA-2099 serialisation rewrite (#4257)
* Type model first draft

* Introduce TypeIdentifier

* Attempting to retrofit fingerprinter with type model

* Complete retrofitting typemodel to fingerprinter

* Ensure component types are resolved correctly

* Fixes and tests

* Move resolveAgainst to TypeIdentifier

* Remote type modelling and reflection

* Convert TypeIdentifiers back into types

* Translate AMQP type strings to type identifiers

* Start replacing DeserializedParameterizedType

* Start roundtripping types through AMQP serialization

* Comments on type modelling fingerprinter

* kdocs and interface reorganisation

* Lots and lots of kdocs, bugfix for cyclic references

* Separate SerializerFactory construction from concrete implementation

* Fewer build methods

* Method naming that doesn't fatally confuse determinisation

* Extract SerializerFactory interface

* Reset to master's version of compiler.xml

* Un-ignore flickering test

* Enums don't have superclasses

* Break out custom serializer registry

* Refactor to separate remote and local serializer factories

* Shrink interfaces

* Further interface narrowing

* Fingerprinting local type model

* LocalSerializerFactory uses LocalTypeInformation

* Resolve wildcards to their upper bounds

* Actually cache custom serializers

* Fix various bugs

* Remove print statements

* There are no cycles in type identifiers

* Drive class carpentry from RemoteTypeInformation

* Refactor and comment

* Comments

* Comments and pretty-printer extraction

* Format long methods with braces

* Serialise composable types using LocalTypeInformation

* Warnings if a type is non-composable

* Rename lookup -> findOrBuild

* Evolution serialisation (no enums yet)

* Eliminate old ObjectSerializer and evolver

* Enum evolution

* Opacity claims types less greedily

* Fix type notation and type erasure bug

* Clean up unused code paths

* Delete unused codepaths

* Move whitelist based type model configuration to own file

* Move opaque type list

* Make all evolution serialisers in one go when schema received

* Minor tweaks

* Commenting and tidying

* Comments

* Rebase against master

* Make flag for controlling evolution behaviour visible

* propertiesOrEmptyMap

* Restore error messages

* Test for CORDA-4107

* PR fixes

* Patch cycles in remote type information after creation

* Fix line breaks in unit test on Windows

* This time for sure

* EvolutionSerializerFactoryTests

* Fix some pretty-printing issues, and a carpenter bug

* PR fixes

* Clarify evolution constructor ordering

* Remote TODO comment, which has been moved to a JIRA story
2018-11-22 11:44:40 +00:00
Tudor Malene
504f650022
ENT-2763 - Change packageOwnership type (#4273)
* ENT-2763 - Change packageOwnership type

* ENT-2763 - Address code review comment.

* ENT-2673 Address code review comments.

* ENT-2673 Address code review comments.

* ENT-2673 Fix test

* ENT-2673 Address code review comments.
2018-11-21 20:41:56 +00:00
Viktor Kolomeyko
0fe7f513e2
ENT-2653: Introducing CommonCliConstants (#4265) 2018-11-20 17:15:48 +00:00
Michele Sollecito
97c1e5babc
[CORDA-2211]: Added error for older bash versions when attempting to install shell extensions. (#4263) 2018-11-20 14:01:39 +00:00
Mike Hearn
4d2d9b8304 Fix a regression in the shell that was preventing it from fuzzy matching against notary names. 2018-11-16 14:37:43 +00:00
Michele Sollecito
4059966ccb
[CORDA-2203]: Demobench ends up with a stuck tab when you unselect notary type for the first node. (fix) (#4235) 2018-11-14 14:42:57 +00:00