corda/docs/source/node-explorer.rst
josecoll eac2cb1cc6 Bank of Corda integration with Trader Demo and Explorer
Initial conversion of Explorer to use IssuerFlow (from BankOfCorda)

Initial conversion of TraderDemo to use IssuerFlow (from BankOfCorda)

Updated TraderDemo to use IssuerFlow (from BankOfCorda)

Fixed TraderDemo integration text (added new BankOfCorda node)

Updated Explorer with changes IssuerRequest params

Explorer now correctly displaying transaction id upon Issue.

Moved IssuerFlow into finance package so can be reused across multiple demos (TraderDemo) and applications (eg Explorer)

Refactored BankOfCorda demo to use Finance package and TestUtil constants

Updated TraderDemo to use IssuerFlow

Updated Explorer to use finance package IssuerFlow.

Advertised BankOfCorda as Issuer for usage by Explorer.

Explorer no longer depends on BankOfCorda demo since IssuerFlow promoted to Finance module

Added IssuerFlow to AbstractNode whitelist.
Explicit declarations of IssuerFlow no longer required.

Added plugin registration of IssuerFlow at bootstrap.

Revert whitelisting of IssuerFlow (plugin configured)

Refactored to use constant BOC definition.

Added gradle RPC security config.

Updated documentation

Fixed incorrect references.

Renamed Issuer banks.
Added new permission set (for Issuer nodes)
Added node nearestCity info
Added new Issuer Event Generator for Issuer nodes only

Associated currency with issuer using ServiceType naming structure.

Added argument flag (-S) to trigger event generator simulation node.

Fixed problem with issuers not resolving from network map.

Updated perms on Issuer rpc proxy nodes.

Fixed minor in cash generateExit identified by Explorer.

Changes applied in prep for AWG demo.

Added IntelliJ run-configurations for launching Explorer demo nodes (with and without simulation)

Updated documentation (and added additional gradle task to launch Explorer nodes in simulation mode).

Fix following rebase.

Addressed review items from PR.

Updated TraderDemo readme.

Updated TraderDemo gradle file to launch Bank of Corda node.

Updated JRE properties.

Updated IssuerModel to incorporate correct JFX Observable handling.
Fixed bug with Exit command not displaying any currency.

Added TODO's for revisiting correct Exception handling strategy.

Optimization for when issuing cash to self.

Minor updates following PR review.

Remove old refs to Royal Mint and Federal Reserve
2016-12-22 15:55:50 +00:00

5.4 KiB

Node Explorer

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)

Running the UI

Windows:

gradlew.bat tools:explorer:run

Other:

./gradlew tools:explorer:run

Running demo nodes

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.

Windows:

gradlew.bat tools:explorer:runDemoNodes

Other:

./gradlew tools:explorer:runDemoNodes
  1. Simulation

    In this mode Nodes will automatically commence executing commands as part of a random generation process. Issuer nodes will randomly issue, move and exit cash. Participant nodes will randomly generate spends (eg. move cash to other nodes, including issuers)

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.

  • Notary -> 20002
  • Alice -> 20004
  • Bob -> 20006
  • UK Bank Plc -> 20008 (Issuer node)
  • USA Bank Corp -> 20010 (Issuer node)

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. Please note you are not allowed to connect to the notary.

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)

Note

Use the Explorer in conjunction with the Trader Demo and Bank of Corda samples to use other Issuer nodes.

Interface

Login

User can login to any Corda node using the explorer. Alternatively, gradlew explorer:runDemoNodes can be used to start up demo nodes for testing. Corda node address, username and password are required for login, the address is defaulted to localhost:0 if leave blank. Username and password can be configured via the rpcUsers field in node's configuration file.

image

Dashboard

The dashboard shows the top level state of node and vault. Currently, it shows your cash balance and the numbers of transaction executed. The dashboard is intended to house widgets from different CordApp's and provide useful information to system admin at a glance.

image

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

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

Issuer Nodes

Issuer nodes can execute issue (to itself or to any other party), pay and exit transactions. The result of the transaction will be visible in the transaction screen when executed.

image

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

Network

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. The map provides a intuitive way of visualizing the Corda network and the participants.

image

Settings

User can configure the client preference in this view.

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.

image