2016-11-03 16:56:10 +00:00
Node Explorer
=============
2019-01-28 14:11:59 +00:00
.. note :: To run Node Explorer on your machine, you will need JavaFX for Java 8. If you don't have JavaFX
installed, you can either download and build your own version of OpenJFK, or use a pre-existing
build, like the one offered by Zulu. They have community builds of OpenJFX for Window, macOS and Linux
available on their `website <https://www.azul.com/downloads/zulu/zulufx/> `_ .
2016-12-06 16:16:47 +00:00
The node explorer provides views into a node's vault and transaction data using Corda's RPC framework.
The user can execute cash transaction commands to issue and move cash to other parties on the network or exit cash (eg. remove from the ledger)
2016-11-03 16:56:10 +00:00
Running the UI
--------------
**Windows** ::
gradlew.bat tools:explorer:run
**Other** ::
./gradlew tools:explorer:run
2018-12-29 11:18:07 +00:00
.. note :: In order to connect to a given node, the node explorer must have access to all CorDapps loaded on that particular node.
By default, it only has access to the finance CorDapp.
All other CorDapps present on the node must be copied to a `` cordapps `` directory located within the directory from which the node explorer is run.
2016-11-03 16:56:10 +00:00
2016-11-25 14:29:13 +00:00
Running demo nodes
2016-11-03 16:56:10 +00:00
------------------
2016-12-06 16:16:47 +00:00
A demonstration Corda network topology is configured with 5 nodes playing the following roles:
1. Notary
2. Issuer nodes, representing two fictional central banks (UK Bank Plc issuer of GBP and USA Bank Corp issuer of USD)
3. Participant nodes, representing two users (Alice and Bob)
When connected to an *Issuer* node, a user can execute cash transaction commands to issue and move cash to itself or other
parties on the network or to exit cash (for itself only).
When connected to a *Participant* node a user can only execute cash transaction commands to move cash to other parties on the network.
The Demo Nodes can be started in one of two modes:
1. Normal
Fresh clean environment empty of transactions.
Firstly, launch an Explorer instance to login to one of the Issuer nodes and issue some cash to the other participants (Bob and Alice).
Then launch another Explorer instance to login to a participant node and start making payments (eg. move cash).
You will only be able to exit (eg. redeem from the ledger) cash as an issuer node.
2016-11-03 16:56:10 +00:00
**Windows** ::
gradlew.bat tools:explorer:runDemoNodes
**Other** ::
./gradlew tools:explorer:runDemoNodes
2016-12-06 16:16:47 +00:00
2. Simulation
In this mode Nodes will automatically commence executing commands as part of a random generation process.
2017-03-31 13:19:02 +00:00
The simulation start with pre-allocating chunks of cash to each of the party in 2 currencies (USD, GBP), then it enter a loop to generate random events.
In each iteration, the issuers will execute a Cash Issue or Cash Exit command (at a 9:1 ratio) and a random party will execute a move of cash to another random party.
2016-12-06 16:16:47 +00:00
**Windows** ::
gradlew.bat tools:explorer:runSimulationNodes
**Other** ::
./gradlew tools:explorer:runSimulationNodes
.. note :: 5 Corda nodes will be created on the following port on localhost by default.
2016-11-03 16:56:10 +00:00
2018-03-08 11:11:28 +00:00
* Notary -> 20005 (Does not accept logins)
* UK Bank Plc -> 20011 (*Issuer node* )
* USA Bank Corp -> 20008 (*Issuer node* )
* Alice -> 20017
* Bob -> 20014
2016-12-06 16:16:47 +00:00
Explorer login credentials to the Issuer nodes are defaulted to `` manager `` and `` test `` .
Explorer login credentials to the Participants nodes are defaulted to `` user1 `` and `` test `` .
2017-03-20 16:25:45 +00:00
Please note you are not allowed to login to the notary.
2016-12-06 16:16:47 +00:00
2017-09-28 15:44:05 +00:00
.. note :: When you start the nodes in Windows using the command prompt, they might not be killed when you close the
window or terminate the task. If that happens you need to manually terminate the Java processes running the nodes.
2016-12-06 16:16:47 +00:00
.. note :: Alternatively, you may start the demo nodes from within IntelliJ using either of the run configurations
`` Explorer - demo nodes `` or `` Explorer - demo nodes (simulation) ``
2017-09-22 16:36:03 +00:00
.. note :: It is also possible to start the Explorer GUI from IntelliJ via `` Explorer - GUI `` run configuration, provided that the optional TornadoFX plugin has been installed first.
2016-12-06 16:16:47 +00:00
.. note :: Use the Explorer in conjunction with the Trader Demo and Bank of Corda samples to use other *Issuer* nodes.
2016-11-03 16:56:10 +00:00
Interface
---------
Login
2016-11-23 09:57:28 +00:00
User can login to any Corda node using the explorer. Alternatively, `` gradlew explorer:runDemoNodes `` can be used to start up demo nodes for testing.
2016-11-03 16:56:10 +00:00
Corda node address, username and password are required for login, the address is defaulted to localhost:0 if leave blank.
2016-12-06 16:16:47 +00:00
Username and password can be configured via the `` rpcUsers `` field in node's configuration file.
2016-11-22 11:56:15 +00:00
2016-11-03 16:56:10 +00:00
.. image :: resources/explorer/login.png
:scale: 50 %
:align: center
2016-11-22 11:56:15 +00:00
Dashboard
2016-11-23 09:57:28 +00:00
The dashboard shows the top level state of node and vault.
Currently, it shows your cash balance and the numbers of transaction executed.
2017-01-06 11:05:37 +00:00
The dashboard is intended to house widgets from different CordApps and provide useful information to system admin at a glance.
2016-11-03 16:56:10 +00:00
.. image :: resources/explorer/dashboard.png
Cash
The cash view shows all currencies you currently own in a tree table format, it is grouped by issuer -> currency.
Individual cash transactions can be viewed by clicking on the table row. The user can also use the search field to narrow down the scope.
.. image :: resources/explorer/vault.png
2016-12-06 16:16:47 +00:00
New Transactions
This is where you can create new cash transactions.
The user can choose from three transaction types (issue, pay and exit) and any party visible on the network.
General nodes can only execute pay commands to any other party on the network.
.. image :: resources/explorer/newTransactionCash.png
Issuer Nodes
Issuer nodes can execute issue (to itself or to any other party), pay and exit transactions.
2016-11-22 11:56:15 +00:00
The result of the transaction will be visible in the transaction screen when executed.
2016-12-06 16:16:47 +00:00
.. image :: resources/explorer/newTransactionIssuer.png
2016-11-22 11:56:15 +00:00
2016-11-03 16:56:10 +00:00
Transactions
The transaction view contains all transactions handled by the node in a table view. It shows basic information on the table e.g. Transaction ID,
command type, USD equivalence value etc. User can expand the row by double clicking to view the inputs,
outputs and the signatures details for that transaction.
.. image :: resources/explorer/transactionView.png
2016-11-22 11:56:15 +00:00
Network
2016-11-23 09:57:28 +00:00
The network view shows the network information on the world map. Currently only the user's node is rendered on the map.
This will be extended to other peers in a future release.
2017-01-06 11:05:37 +00:00
The map provides an intuitive way of visualizing the Corda network and the participants.
2016-11-03 16:56:10 +00:00
2016-11-22 11:56:15 +00:00
.. image :: resources/explorer/network.png
Settings
User can configure the client preference in this view.
2016-11-29 11:36:42 +00:00
2016-11-23 09:57:28 +00:00
.. note :: Although the reporting currency is configurable, FX conversion won't be applied to the values as we don't have an FX service yet.
2016-11-22 11:56:15 +00:00
.. image :: resources/explorer/settings.png