mirror of
https://github.com/corda/corda.git
synced 2024-12-23 14:52:29 +00:00
Regen docsite
This commit is contained in:
parent
af8859ebf1
commit
e94c5b869b
BIN
docs/build/doctrees/building-the-docs.doctree
vendored
BIN
docs/build/doctrees/building-the-docs.doctree
vendored
Binary file not shown.
BIN
docs/build/doctrees/creating-a-cordapp.doctree
vendored
BIN
docs/build/doctrees/creating-a-cordapp.doctree
vendored
Binary file not shown.
BIN
docs/build/doctrees/environment.pickle
vendored
BIN
docs/build/doctrees/environment.pickle
vendored
Binary file not shown.
BIN
docs/build/doctrees/index.doctree
vendored
BIN
docs/build/doctrees/index.doctree
vendored
Binary file not shown.
BIN
docs/build/doctrees/merkle-trees.doctree
vendored
Normal file
BIN
docs/build/doctrees/merkle-trees.doctree
vendored
Normal file
Binary file not shown.
BIN
docs/build/doctrees/running-the-demos.doctree
vendored
BIN
docs/build/doctrees/running-the-demos.doctree
vendored
Binary file not shown.
2
docs/build/html/.buildinfo
vendored
2
docs/build/html/.buildinfo
vendored
@ -1,4 +1,4 @@
|
||||
# Sphinx build info version 1
|
||||
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
|
||||
config: 02da61908148262295ef57918c434b8d
|
||||
config: ad4aa434cfebd269fdbb85815bc6eb43
|
||||
tags: 645f666f9bcd5a90fca523b33c5a78b7
|
||||
|
BIN
docs/build/html/_images/merkleTree.png
vendored
Normal file
BIN
docs/build/html/_images/merkleTree.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
BIN
docs/build/html/_images/partialMerkle.png
vendored
Normal file
BIN
docs/build/html/_images/partialMerkle.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 8.5 KiB |
11
docs/build/html/_sources/creating-a-cordapp.txt
vendored
11
docs/build/html/_sources/creating-a-cordapp.txt
vendored
@ -197,7 +197,7 @@ Cordformation is the local node deployment system for Cordapps, the nodes genera
|
||||
experimenting, debugging, and testing node configurations and setups but not intended for production or testnet
|
||||
deployment.
|
||||
|
||||
To use this gradle plugin you must add a new task that is of the type `com.r3corda.plugins.Cordform` to your
|
||||
To use this gradle plugin you must add a new task that is of the type ``com.r3corda.plugins.Cordform`` to your
|
||||
build.gradle and then configure the nodes you wish to deploy with the Node and nodes configuration DSL.
|
||||
This DSL is specified in the `JavaDoc <api/index.html>`_. An example of this is in the template-cordapp and below
|
||||
is a three node example;
|
||||
@ -211,8 +211,7 @@ is a three node example;
|
||||
name "Controller"
|
||||
dirName "controller"
|
||||
nearestCity "London"
|
||||
notary true // Sets this node to be a notary
|
||||
advertisedServices []
|
||||
advertisedServices = [ "corda.notary.validating" ]
|
||||
artemisPort 12345
|
||||
webPort 12346
|
||||
cordapps []
|
||||
@ -221,7 +220,7 @@ is a three node example;
|
||||
name "NodeA"
|
||||
dirName "nodea"
|
||||
nearestCity "London"
|
||||
advertisedServices []
|
||||
advertisedServices = []
|
||||
artemisPort 31337
|
||||
webPort 31339
|
||||
cordapps []
|
||||
@ -230,7 +229,7 @@ is a three node example;
|
||||
name "NodeB"
|
||||
dirName "nodeb"
|
||||
nearestCity "New York"
|
||||
advertisedServices []
|
||||
advertisedServices = []
|
||||
artemisPort 31338
|
||||
webPort 31340
|
||||
cordapps []
|
||||
@ -244,4 +243,4 @@ run this task it will install the nodes to the directory specified and a script
|
||||
at present) to run the nodes with one command.
|
||||
|
||||
Other cordapps can also be specified if they are already specified as classpath or compile dependencies in your
|
||||
build.gradle.
|
||||
``build.gradle``.
|
||||
|
1
docs/build/html/_sources/index.txt
vendored
1
docs/build/html/_sources/index.txt
vendored
@ -28,6 +28,7 @@ Read on to learn:
|
||||
getting-set-up
|
||||
data-model
|
||||
transaction-data-types
|
||||
merkle-trees
|
||||
consensus
|
||||
messaging
|
||||
persistence
|
||||
|
111
docs/build/html/_sources/merkle-trees.txt
vendored
Normal file
111
docs/build/html/_sources/merkle-trees.txt
vendored
Normal file
@ -0,0 +1,111 @@
|
||||
Transaction Tear-offs
|
||||
======================
|
||||
|
||||
One of the basic data structures in our platform is a transaction. It can be passed around to be signed and verified,
|
||||
also by third parties. The construction of transactions assumes that they form a whole entity with input and output states,
|
||||
commands and attachments inside. However all sensitive data shouldn’t be revealed to other nodes that take part in
|
||||
the creation of transaction on validation level (a good example of this situation is the Oracle which validates only
|
||||
embedded commands). How to achive it in a way that convinces the other party the data they got for signing really did form
|
||||
a part of the transaction?
|
||||
|
||||
We decided to use well known and described cryptographic scheme to provide proofs of inclusion and data integrity.
|
||||
Merkle trees are widely used in peer-to-peer networks, blockchain systems and git.
|
||||
You can read more on the concept `here <https://en.wikipedia.org/wiki/Merkle_tree>`_.
|
||||
|
||||
Merkle trees in Corda
|
||||
----------------------
|
||||
|
||||
Transactions are split into leaves, each of them contains either input, output, command or attachment. Other fields like
|
||||
timestamp or signers are not used in the calculation.
|
||||
Next, the Merkle tree is built in the normal way by hashing the concatenation
|
||||
of nodes’ hashes below the current one together. It’s visible on the example image below, where ``H`` denotes sha256 function,
|
||||
"+" - concatenation.
|
||||
|
||||
.. image:: resources/merkleTree.png
|
||||
|
||||
The transaction has one input state, one output and three commands. If a tree is not a full binary tree, the rightmost nodes are
|
||||
duplicated in hash calculation (dotted lines).
|
||||
|
||||
Finally, the hash of the root is the identifier of the transaction, it's also used for signing and verification of data integrity.
|
||||
Every change in transaction on a leaf level will change its identifier.
|
||||
|
||||
Hiding data
|
||||
-----------
|
||||
|
||||
Hiding data and providing the proof that it formed a part of a transaction is done by constructing Partial Merkle Trees
|
||||
(or Merkle branches). A Merkle branch is a set of hashes, that given the leaves’ data, is used to calculate the root’s hash.
|
||||
Then that hash is compared with the hash of a whole transaction and if they match it means that data we obtained belongs
|
||||
to that particular transaction.
|
||||
|
||||
.. image:: resources/partialMerkle.png
|
||||
|
||||
In the example above, the red node is the one holding data for signing Oracle service. Blue nodes' hashes form the Partial Merkle
|
||||
Tree, dotted ones are not included. Having the command that should be in a red node place and branch we are able to calculate
|
||||
root of this tree and compare it with original transaction identifier - we have a proof that this command belongs to this transaction.
|
||||
|
||||
Example of usage
|
||||
-----------------
|
||||
|
||||
Let’s focus on a code example. We want to construct a transaction with commands containing interest rate fix data as in:
|
||||
:doc:`oracles`.
|
||||
After construction of a partial transaction, with included ``Fix`` commands in it, we want to send it to the Oracle for checking
|
||||
and signing. To do so we need to specify which parts of the transaction are going to be revealed. That can be done by constructing
|
||||
filtering functions for inputs, outputs, attachments and commands separately. If a function is not provided by default none
|
||||
of the elements from this group will be included in a Partial Merkle Tree.
|
||||
|
||||
.. container:: codeset
|
||||
|
||||
.. sourcecode:: kotlin
|
||||
|
||||
val partialTx = ...
|
||||
val oracle: Party = ...
|
||||
fun filterCommands(c: Command) = oracle.owningKey in c.signers && c.value is Fix
|
||||
val filterFuns = FilterFuns(filterCommands = ::filterCommands)
|
||||
|
||||
Assuming that we already assembled partialTx with some commands and know the identity of Oracle service,
|
||||
we pass filtering function over commands - ``filterCommands`` to ``FilterFuns``. It filters only
|
||||
commands of type ``Fix`` as in IRSDemo example. Then we can construct ``FilteredTransaction``:
|
||||
|
||||
.. container:: codeset
|
||||
|
||||
.. sourcecode:: kotlin
|
||||
|
||||
val wtx: WireTransaction = partialTx.toWireTransaction()
|
||||
val ftx = FilteredTransaction.buildMerkleTransaction(wtx, filterFuns)
|
||||
|
||||
In the Oracle example this step takes place in ``RatesFixProtocol``:
|
||||
|
||||
.. container:: codeset
|
||||
|
||||
.. sourcecode:: kotlin
|
||||
|
||||
val protocol = RatesFixProtocol(partialTx, filterFuns, oracle, fixOf, "0.675".bd, "0.1".bd)
|
||||
|
||||
``FilteredTransaction`` holds ``filteredLeaves`` (data that we wanted to reveal) and Merkle branch for them.
|
||||
|
||||
.. container:: codeset
|
||||
|
||||
.. sourcecode:: kotlin
|
||||
|
||||
// Getting included commands, inputs, outputs, attachments.
|
||||
val cmds: List<Command> = ftx.filteredLeaves.commands
|
||||
val ins: List<StateRef> = ftx.filteredLeaves.inputs
|
||||
val outs: List<TransactionState<ContractState>> = ftx.filteredLeaves.outputs
|
||||
val attchs: List<SecureHash> = ftx.filteredLeaves.attachments
|
||||
|
||||
|
||||
If you want to verify obtained ``FilteredTransaction`` all you need is the root hash of the full transaction:
|
||||
|
||||
.. container:: codeset
|
||||
|
||||
.. sourcecode:: kotlin
|
||||
|
||||
if (!ftx.verify(merkleRoot)){
|
||||
throw MerkleTreeException("Rate Fix Oracle: Couldn't verify partial Merkle tree.")
|
||||
}
|
||||
|
||||
|
||||
.. note:: The way the ``FilteredTransaction`` is constructed ensures that after signing of the root hash it's impossible to add or remove
|
||||
leaves. However, it can happen that having transaction with multiple commands one party reveals only subset of them to the Oracle.
|
||||
As signing is done now over the merkle root hash, the service signs all commands of given type, even though it didn't see
|
||||
all of them. This issue will be handled after implementing partial signatures.
|
209
docs/build/html/_sources/running-the-demos.txt
vendored
209
docs/build/html/_sources/running-the-demos.txt
vendored
@ -9,171 +9,57 @@ so far. We have:
|
||||
2. The IRS demo, which shows two nodes establishing an interest rate swap between them and performing fixings with a
|
||||
rates oracle, all driven via the HTTP API.
|
||||
3. The IRS demo web interface - a web interface to the IRS demo.
|
||||
4. The attachment demo, which demonstrates uploading attachments to nodes.
|
||||
5. The SIMM valuation demo, a large demo which shows two nodes agreeing on a portfolio and valuing the initial margin
|
||||
using the Standard Initial Margin Model.
|
||||
|
||||
The demos create node data directories in the root of the project. If something goes wrong with them, blow away the
|
||||
directories and try again.
|
||||
.. note:: The demos currently must be run from IntelliJ, this will change before M6.
|
||||
|
||||
.. note:: If any demos don't work please jump on our mailing list and let us know.
|
||||
|
||||
Trader demo
|
||||
-----------
|
||||
|
||||
Open two terminals, and in the first run:
|
||||
|
||||
.. note:: If you are planning to use non-default configuration you will need to run with --role=SetupA and --role=SetupB
|
||||
beforehand with the same parameters you plan to supply to the respective nodes.
|
||||
|
||||
**Windows**::
|
||||
|
||||
gradlew.bat & .\build\install\r3prototyping\bin\trader-demo --role=BUYER
|
||||
|
||||
**Other**::
|
||||
|
||||
./gradlew installDist && ./build/install/r3prototyping/bin/trader-demo --role=BUYER
|
||||
|
||||
It will compile things, if necessary, then create a directory named trader-demo/buyer with a bunch of files inside and
|
||||
start the node. You should see it waiting for a trade to begin.
|
||||
|
||||
In the second terminal, run:
|
||||
|
||||
**Windows**::
|
||||
|
||||
.\build\install\r3prototyping\bin\trader-demo --role=SELLER
|
||||
|
||||
**Other**::
|
||||
|
||||
./build/install/r3prototyping/bin/trader-demo --role=SELLER
|
||||
|
||||
You should see some log lines scroll past, and within a few seconds the messages "Purchase complete - we are a
|
||||
happy customer!" and "Sale completed - we have a happy customer!" should be printed.
|
||||
|
||||
If it doesn't work, jump on the mailing list and let us know.
|
||||
1. Open the Corda project in IntelliJ and run the "Install" configuration
|
||||
2. Open the Corda samples project in IntelliJ and run the "Trader Demo: Run Nodes" configuration
|
||||
3. Run "Trader Demo: Run Buyer"
|
||||
4. Run "Trader Demo: Run Seller"
|
||||
|
||||
In the "Trader Demo: Run Nodes" windows you should see some log lines scroll past, and within a few seconds the messages
|
||||
"Purchase complete - we are a happy customer!" and "Sale completed - we have a happy customer!" should be printed.
|
||||
|
||||
IRS demo
|
||||
--------
|
||||
|
||||
Open three terminals. In the first run:
|
||||
|
||||
**Windows**::
|
||||
|
||||
gradlew.bat installDist & .\build\install\r3prototyping\bin\irsdemo.bat --role=NodeA
|
||||
|
||||
**Other**::
|
||||
|
||||
./gradlew installDist && ./build/install/r3prototyping/bin/irsdemo --role=NodeA
|
||||
|
||||
And in the second run:
|
||||
|
||||
**Windows**::
|
||||
|
||||
.\build\install\r3prototyping\bin\irsdemo.bat --role=NodeB
|
||||
|
||||
**Other**::
|
||||
|
||||
./build/install/r3prototyping/bin/irsdemo --role=NodeB
|
||||
|
||||
NodeB also doubles up as the interest rates oracle and you should see some rates data get loaded.
|
||||
|
||||
Now in the third terminal run:
|
||||
|
||||
**Windows**::
|
||||
|
||||
.\build\install\r3prototyping\bin\irsdemo.bat --role=Trade trade1
|
||||
|
||||
**Other**::
|
||||
|
||||
./build/install/r3prototyping/bin/irsdemo --role=Trade trade1
|
||||
|
||||
You should see some activity in the other two terminals as they set up the deal. You can now run this command in
|
||||
a separate window to roll the fake clock forward and trigger lots of fixing events. Things go fast so make sure you
|
||||
can see the other terminals whilst you run this command!:
|
||||
|
||||
**Windows**::
|
||||
|
||||
.\build\install\r3prototyping\bin\irsdemo.bat --role=Date 2017-01-30
|
||||
|
||||
**Other**::
|
||||
|
||||
./build/install/r3prototyping/bin/irsdemo --role=Date 2017-01-30
|
||||
1. Open the Corda project in IntelliJ and run the "Install" configuration
|
||||
2. Open the Corda samples project in IntelliJ and run the "IRS Demo: Run Nodes" configuration
|
||||
3. Run "IRS Demo: Run Upload Rates" to upload rates to the oracle.
|
||||
4. Run "IRS Demo: Run Trade" to have nodes agree on a trade.
|
||||
5. Run "IRS Demo: Run Date Change" to run the fixings.
|
||||
|
||||
In the "IRS Demo: Run Nodes" window you'll see a lot of activity when you run the trade and when you run the date change.
|
||||
The date change rolls the clock forwards and causes the nodes to agree on the fixings over a period.
|
||||
|
||||
IRS web demo
|
||||
------------
|
||||
|
||||
To install the web demo please follow these steps;
|
||||
|
||||
1. Install Node: https://nodejs.org/en/download/ and ensure the npm executable is on your classpath
|
||||
2. Open a terminal
|
||||
3. Run `npm install -g bower` or `sudo npm install -g bower` if on a Unix system.
|
||||
4. In the terminal navigate to `<corda>/src/main/resources/com/r3corda/demos/irswebdemo`
|
||||
5. Run `bower install`
|
||||
|
||||
To run the web demo, run the first two steps from the IRS Demo:
|
||||
|
||||
Open two terminals and in the first:
|
||||
|
||||
**Windows**::
|
||||
|
||||
gradlew.bat installDist & .\build\install\r3prototyping\bin\irsdemo.bat --role=NodeA
|
||||
|
||||
**Other**::
|
||||
|
||||
./gradlew installDist && ./build/install/r3prototyping/bin/irsdemo --role=NodeA
|
||||
|
||||
And in the second run:
|
||||
|
||||
**Windows**::
|
||||
|
||||
.\build\install\r3prototyping\bin\irsdemo.bat --role=NodeB
|
||||
|
||||
**Other**::
|
||||
|
||||
./build/install/r3prototyping/bin/irsdemo --role=NodeB
|
||||
|
||||
Now open your web browser to this URL:
|
||||
|
||||
.. note:: If using a custom node port address or port those must be used instead.
|
||||
|
||||
**Node A**:
|
||||
|
||||
http://localhost:31338/web/irsdemo
|
||||
|
||||
**Node B**:
|
||||
|
||||
http://localhost:31340/web/irsdemo
|
||||
There is also an IRS web demo installed. To use this follow steps 1-3 in the IRS demo and then navigate to
|
||||
http://localhost:10005/web/irsdemo and http://localhost:10005/web/irsdemo to see both node's view of the trades.
|
||||
|
||||
To use the demos click the "Create Deal" button, fill in the form, then click the "Submit" button. Now you will be
|
||||
able to use the time controls at the top left of the home page to run the fixings. Click any individual trade in the
|
||||
blotter to view it.
|
||||
|
||||
|
||||
|
||||
Attachment demo
|
||||
----------------
|
||||
---------------
|
||||
|
||||
Open two terminals, and in the first run:
|
||||
1. Open the Corda project in IntelliJ and run the "Install" configuration
|
||||
2. Open the Corda samples project in IntelliJ and run the "Attachment Demo: Run Nodes" configuration
|
||||
3. Run "Attachment Demo: Run Recipient" - this waits for a trade to start
|
||||
4. Run "Attachment Demo: Run Sender" - sends the attachment
|
||||
|
||||
**Windows**::
|
||||
|
||||
gradlew.bat & .\build\install\r3prototyping\bin\attachment-demo --role=RECIPIENT
|
||||
|
||||
**Other**::
|
||||
|
||||
./gradlew installDist && ./build/install/r3prototyping/bin/attachment-demo --role=RECIPIENT
|
||||
|
||||
It will compile things, if necessary, then create a directory named attachment-demo/buyer with a bunch of files inside and
|
||||
start the node. You should see it waiting for a trade to begin.
|
||||
|
||||
In the second terminal, run:
|
||||
|
||||
**Windows**::
|
||||
|
||||
.\build\install\r3prototyping\bin\attachment-demo --role=SENDER
|
||||
|
||||
**Other**::
|
||||
|
||||
./build/install/r3prototyping/bin/attachment-demo --role=SENDER
|
||||
|
||||
You should see some log lines scroll past, and within a few seconds the message "File received - we're happy!" should be printed.
|
||||
In the "Attachment Demo: Run Nodes" window you should see some log lines scroll past, and within a few seconds the
|
||||
message "File received - we're happy!" should be printed.
|
||||
|
||||
SIMM and Portfolio Demo
|
||||
-----------------------
|
||||
@ -182,40 +68,9 @@ SIMM and Portfolio Demo
|
||||
|
||||
To run the demo run:
|
||||
|
||||
**Windows**
|
||||
1. Open the Corda project in IntelliJ and run the "Install" configuration
|
||||
2. Open the Corda samples project in IntelliJ and run the "Simm Valuation Demo" configuration
|
||||
|
||||
Open a terminal window and navigate to the root directory of Corda and run:
|
||||
|
||||
.. sourcecode:: shell
|
||||
|
||||
gradlew apps:vega:installTemplateNodes
|
||||
cd build\nodes\nameserver
|
||||
java -jar corda.jar
|
||||
|
||||
Now open another terminal in the root directory of Corda and run:
|
||||
|
||||
.. sourcecode:: shell
|
||||
|
||||
cd build\nodes\nodea
|
||||
java -jar corda.jar
|
||||
|
||||
Now open a third terminal in the root directory of Corda and run:
|
||||
|
||||
.. sourcecode:: shell
|
||||
|
||||
cd build\nodes\nodeb
|
||||
java -jar corda.jar
|
||||
|
||||
**Other**
|
||||
|
||||
Open one terminal window and run the following commands from the root directory of Corda:
|
||||
|
||||
.. sourcecode:: shell
|
||||
|
||||
./gradlew apps:vega:installTemplateNodes
|
||||
cd build/nodes
|
||||
./runnodes
|
||||
|
||||
Now open http://localhost:31339/web/vega and http://localhost:31340/web/vega to view the two nodes that this
|
||||
will have started respectively.
|
||||
Now open http://localhost:10005/web/simmvaluationdemo and http://localhost:10005/web/simmvaluationdemo to view the two nodes that this
|
||||
will have started respectively. You can now use the demo by creating trades and agreeing the valuations.
|
||||
|
||||
|
3
docs/build/html/api/alltypes/index.html
vendored
3
docs/build/html/api/alltypes/index.html
vendored
@ -2479,7 +2479,8 @@ a public key that is mentioned inside a transaction command. SignedTransaction i
|
||||
and the type most frequently passed around the network and stored. The identity of a transaction is the hash
|
||||
of a WireTransaction, therefore if you are storing data keyed by WT hash be aware that multiple different STs may
|
||||
map to the same key (and they could be different in important ways, like validity). The signatures on a
|
||||
SignedTransaction might be invalid or missing: the type does not imply validity.</p>
|
||||
SignedTransaction might be invalid or missing: the type does not imply validity.
|
||||
A transaction ID should be the hash of the <a href="../com.r3corda.core.transactions/-wire-transaction/index.html">WireTransaction</a> Merkle tree root. Thus adding or removing a signature does not change it.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
@ -56,7 +56,8 @@ a public key that is mentioned inside a transaction command. SignedTransaction i
|
||||
and the type most frequently passed around the network and stored. The identity of a transaction is the hash
|
||||
of a WireTransaction, therefore if you are storing data keyed by WT hash be aware that multiple different STs may
|
||||
map to the same key (and they could be different in important ways, like validity). The signatures on a
|
||||
SignedTransaction might be invalid or missing: the type does not imply validity.</p>
|
||||
SignedTransaction might be invalid or missing: the type does not imply validity.
|
||||
A transaction ID should be the hash of the <a href="../../com.r3corda.core.transactions/-wire-transaction/index.html">WireTransaction</a> Merkle tree root. Thus adding or removing a signature does not change it.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
@ -7,13 +7,14 @@
|
||||
<a href="../index.html">com.r3corda.core.transactions</a> / <a href="index.html">SignedTransaction</a> / <a href="."><init></a><br/>
|
||||
<br/>
|
||||
<h1><init></h1>
|
||||
<code><span class="identifier">SignedTransaction</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)))/txBits">txBits</span><span class="symbol">:</span> <a href="../../com.r3corda.core.serialization/-serialized-bytes/index.html"><span class="identifier">SerializedBytes</span></a><span class="symbol"><</span><a href="../-wire-transaction/index.html"><span class="identifier">WireTransaction</span></a><span class="symbol">></span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)))/sigs">sigs</span><span class="symbol">:</span> <span class="identifier">List</span><span class="symbol"><</span><a href="../../com.r3corda.core.crypto/-digital-signature/-with-key/index.html"><span class="identifier">WithKey</span></a><span class="symbol">></span><span class="symbol">)</span></code><br/>
|
||||
<code><span class="identifier">SignedTransaction</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)), com.r3corda.core.crypto.SecureHash)/txBits">txBits</span><span class="symbol">:</span> <a href="../../com.r3corda.core.serialization/-serialized-bytes/index.html"><span class="identifier">SerializedBytes</span></a><span class="symbol"><</span><a href="../-wire-transaction/index.html"><span class="identifier">WireTransaction</span></a><span class="symbol">></span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)), com.r3corda.core.crypto.SecureHash)/sigs">sigs</span><span class="symbol">:</span> <span class="identifier">List</span><span class="symbol"><</span><a href="../../com.r3corda.core.crypto/-digital-signature/-with-key/index.html"><span class="identifier">WithKey</span></a><span class="symbol">></span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)), com.r3corda.core.crypto.SecureHash)/id">id</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-secure-hash/index.html"><span class="identifier">SecureHash</span></a><span class="symbol">)</span></code><br/>
|
||||
<p>SignedTransaction wraps a serialized WireTransaction. It contains one or more signatures, each one for
|
||||
a public key that is mentioned inside a transaction command. SignedTransaction is the top level transaction type
|
||||
and the type most frequently passed around the network and stored. The identity of a transaction is the hash
|
||||
of a WireTransaction, therefore if you are storing data keyed by WT hash be aware that multiple different STs may
|
||||
map to the same key (and they could be different in important ways, like validity). The signatures on a
|
||||
SignedTransaction might be invalid or missing: the type does not imply validity.</p>
|
||||
SignedTransaction might be invalid or missing: the type does not imply validity.
|
||||
A transaction ID should be the hash of the <a href="../-wire-transaction/index.html">WireTransaction</a> Merkle tree root. Thus adding or removing a signature does not change it.</p>
|
||||
<br/>
|
||||
<br/>
|
||||
</BODY>
|
||||
|
@ -10,7 +10,6 @@
|
||||
<a name="com.r3corda.core.transactions.SignedTransaction$id"></a>
|
||||
<code><span class="keyword">val </span><span class="identifier">id</span><span class="symbol">: </span><a href="../../com.r3corda.core.crypto/-secure-hash/index.html"><span class="identifier">SecureHash</span></a></code><br/>
|
||||
Overrides <a href="../../com.r3corda.core.contracts/-named-by-hash/id.html">NamedByHash.id</a><br/>
|
||||
<p>A transaction ID is the hash of the <a href="../-wire-transaction/index.html">WireTransaction</a>. Thus adding or removing a signature does not change it.</p>
|
||||
<br/>
|
||||
<br/>
|
||||
</BODY>
|
||||
|
@ -13,7 +13,8 @@ a public key that is mentioned inside a transaction command. SignedTransaction i
|
||||
and the type most frequently passed around the network and stored. The identity of a transaction is the hash
|
||||
of a WireTransaction, therefore if you are storing data keyed by WT hash be aware that multiple different STs may
|
||||
map to the same key (and they could be different in important ways, like validity). The signatures on a
|
||||
SignedTransaction might be invalid or missing: the type does not imply validity.</p>
|
||||
SignedTransaction might be invalid or missing: the type does not imply validity.
|
||||
A transaction ID should be the hash of the <a href="../-wire-transaction/index.html">WireTransaction</a> Merkle tree root. Thus adding or removing a signature does not change it.</p>
|
||||
<br/>
|
||||
<br/>
|
||||
<h3>Exceptions</h3>
|
||||
@ -34,12 +35,13 @@ SignedTransaction might be invalid or missing: the type does not imply validity.
|
||||
<td>
|
||||
<a href="-init-.html"><init></a></td>
|
||||
<td>
|
||||
<code><span class="identifier">SignedTransaction</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)))/txBits">txBits</span><span class="symbol">:</span> <a href="../../com.r3corda.core.serialization/-serialized-bytes/index.html"><span class="identifier">SerializedBytes</span></a><span class="symbol"><</span><a href="../-wire-transaction/index.html"><span class="identifier">WireTransaction</span></a><span class="symbol">></span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)))/sigs">sigs</span><span class="symbol">:</span> <span class="identifier">List</span><span class="symbol"><</span><a href="../../com.r3corda.core.crypto/-digital-signature/-with-key/index.html"><span class="identifier">WithKey</span></a><span class="symbol">></span><span class="symbol">)</span></code><p>SignedTransaction wraps a serialized WireTransaction. It contains one or more signatures, each one for
|
||||
<code><span class="identifier">SignedTransaction</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)), com.r3corda.core.crypto.SecureHash)/txBits">txBits</span><span class="symbol">:</span> <a href="../../com.r3corda.core.serialization/-serialized-bytes/index.html"><span class="identifier">SerializedBytes</span></a><span class="symbol"><</span><a href="../-wire-transaction/index.html"><span class="identifier">WireTransaction</span></a><span class="symbol">></span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)), com.r3corda.core.crypto.SecureHash)/sigs">sigs</span><span class="symbol">:</span> <span class="identifier">List</span><span class="symbol"><</span><a href="../../com.r3corda.core.crypto/-digital-signature/-with-key/index.html"><span class="identifier">WithKey</span></a><span class="symbol">></span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)), com.r3corda.core.crypto.SecureHash)/id">id</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-secure-hash/index.html"><span class="identifier">SecureHash</span></a><span class="symbol">)</span></code><p>SignedTransaction wraps a serialized WireTransaction. It contains one or more signatures, each one for
|
||||
a public key that is mentioned inside a transaction command. SignedTransaction is the top level transaction type
|
||||
and the type most frequently passed around the network and stored. The identity of a transaction is the hash
|
||||
of a WireTransaction, therefore if you are storing data keyed by WT hash be aware that multiple different STs may
|
||||
map to the same key (and they could be different in important ways, like validity). The signatures on a
|
||||
SignedTransaction might be invalid or missing: the type does not imply validity.</p>
|
||||
SignedTransaction might be invalid or missing: the type does not imply validity.
|
||||
A transaction ID should be the hash of the <a href="../-wire-transaction/index.html">WireTransaction</a> Merkle tree root. Thus adding or removing a signature does not change it.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@ -51,8 +53,7 @@ SignedTransaction might be invalid or missing: the type does not imply validity.
|
||||
<td>
|
||||
<a href="id.html">id</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">val </span><span class="identifier">id</span><span class="symbol">: </span><a href="../../com.r3corda.core.crypto/-secure-hash/index.html"><span class="identifier">SecureHash</span></a></code><p>A transaction ID is the hash of the <a href="../-wire-transaction/index.html">WireTransaction</a>. Thus adding or removing a signature does not change it.</p>
|
||||
</td>
|
||||
<code><span class="keyword">val </span><span class="identifier">id</span><span class="symbol">: </span><a href="../../com.r3corda.core.crypto/-secure-hash/index.html"><span class="identifier">SecureHash</span></a></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -62,7 +62,8 @@ a public key that is mentioned inside a transaction command. SignedTransaction i
|
||||
and the type most frequently passed around the network and stored. The identity of a transaction is the hash
|
||||
of a WireTransaction, therefore if you are storing data keyed by WT hash be aware that multiple different STs may
|
||||
map to the same key (and they could be different in important ways, like validity). The signatures on a
|
||||
SignedTransaction might be invalid or missing: the type does not imply validity.</p>
|
||||
SignedTransaction might be invalid or missing: the type does not imply validity.
|
||||
A transaction ID should be the hash of the <a href="-wire-transaction/index.html">WireTransaction</a> Merkle tree root. Thus adding or removing a signature does not change it.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
@ -98,8 +98,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../../../com.r3corda.core.protocols/-protocol-logic/receive.html">receive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
@ -111,8 +111,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../../../com.r3corda.core.protocols/-protocol-logic/send-and-receive.html">sendAndReceive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -143,8 +143,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../../com.r3corda.core.protocols/-protocol-logic/send-and-receive.html">sendAndReceive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -146,8 +146,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../../com.r3corda.core.protocols/-protocol-logic/send-and-receive.html">sendAndReceive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -136,8 +136,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../com.r3corda.core.protocols/-protocol-logic/receive.html">receive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
@ -149,8 +149,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../com.r3corda.core.protocols/-protocol-logic/send-and-receive.html">sendAndReceive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -179,8 +179,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../com.r3corda.core.protocols/-protocol-logic/receive.html">receive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
@ -192,8 +192,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../com.r3corda.core.protocols/-protocol-logic/send-and-receive.html">sendAndReceive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -153,8 +153,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../com.r3corda.core.protocols/-protocol-logic/send-and-receive.html">sendAndReceive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -136,8 +136,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../../com.r3corda.core.protocols/-protocol-logic/send-and-receive.html">sendAndReceive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -130,8 +130,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../../com.r3corda.core.protocols/-protocol-logic/receive.html">receive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -126,8 +126,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../com.r3corda.core.protocols/-protocol-logic/receive.html">receive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
@ -139,8 +139,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../com.r3corda.core.protocols/-protocol-logic/send-and-receive.html">sendAndReceive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -200,8 +200,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../../com.r3corda.core.protocols/-protocol-logic/send-and-receive.html">sendAndReceive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -151,8 +151,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../../com.r3corda.core.protocols/-protocol-logic/receive.html">receive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -145,8 +145,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../../com.r3corda.core.protocols/-protocol-logic/receive.html">receive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
@ -163,8 +163,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../../com.r3corda.core.protocols/-protocol-logic/receive.html">receive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.receive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">receive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$receive(com.r3corda.core.crypto.Party)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
@ -176,8 +176,8 @@ will do as long as the other side registers with it.</p>
|
||||
<td>
|
||||
<a href="../../../com.r3corda.core.protocols/-protocol-logic/send-and-receive.html">sendAndReceive</a></td>
|
||||
<td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any, java.lang.Class((com.r3corda.core.protocols.ProtocolLogic.sendAndReceive.T)))/receiveType">receiveType</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html"><span class="identifier">Class</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code><br/>
|
||||
<code><span class="keyword">fun </span><span class="symbol"><</span><span class="identifier">T</span> <span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">></span> <span class="identifier">sendAndReceive</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/otherParty">otherParty</span><span class="symbol">:</span> <a href="../../../com.r3corda.core.crypto/-party/index.html"><span class="identifier">Party</span></a><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.protocols.ProtocolLogic$sendAndReceive(com.r3corda.core.crypto.Party, kotlin.Any)/payload">payload</span><span class="symbol">:</span> <span class="identifier">Any</span><span class="symbol">)</span><span class="symbol">: </span><a href="../../../com.r3corda.core.utilities/-untrustworthy-data/index.html"><span class="identifier">UntrustworthyData</span></a><span class="symbol"><</span><span class="identifier">T</span><span class="symbol">></span></code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
4
docs/build/html/api/index-outline.html
vendored
4
docs/build/html/api/index-outline.html
vendored
@ -7324,7 +7324,7 @@
|
||||
<link rel="stylesheet" href="style.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<a href="docs/build/html/api/index"><a href="com.r3corda.core.transactions/-signed-transaction/-init-.html"><span class="identifier">SignedTransaction</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)))/txBits">txBits</span><span class="symbol">:</span> <a href="com.r3corda.core.serialization/-serialized-bytes/index.html"><span class="identifier">SerializedBytes</span></a><span class="symbol"><</span><a href="com.r3corda.core.transactions/-wire-transaction/index.html"><span class="identifier">WireTransaction</span></a><span class="symbol">></span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)))/sigs">sigs</span><span class="symbol">:</span> <span class="identifier">List</span><span class="symbol"><</span><a href="com.r3corda.core.crypto/-digital-signature/-with-key/index.html"><span class="identifier">WithKey</span></a><span class="symbol">></span><span class="symbol">)</span></a></a><br/>
|
||||
<a href="docs/build/html/api/index"><a href="com.r3corda.core.transactions/-signed-transaction/-init-.html"><span class="identifier">SignedTransaction</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)), com.r3corda.core.crypto.SecureHash)/txBits">txBits</span><span class="symbol">:</span> <a href="com.r3corda.core.serialization/-serialized-bytes/index.html"><span class="identifier">SerializedBytes</span></a><span class="symbol"><</span><a href="com.r3corda.core.transactions/-wire-transaction/index.html"><span class="identifier">WireTransaction</span></a><span class="symbol">></span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)), com.r3corda.core.crypto.SecureHash)/sigs">sigs</span><span class="symbol">:</span> <span class="identifier">List</span><span class="symbol"><</span><a href="com.r3corda.core.crypto/-digital-signature/-with-key/index.html"><span class="identifier">WithKey</span></a><span class="symbol">></span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)), com.r3corda.core.crypto.SecureHash)/id">id</span><span class="symbol">:</span> <a href="com.r3corda.core.crypto/-secure-hash/index.html"><span class="identifier">SecureHash</span></a><span class="symbol">)</span></a></a><br/>
|
||||
<a href="docs/build/html/api/index"><a href="com.r3corda.core.transactions/-signed-transaction/-signatures-missing-exception/index.html"><span class="keyword">class </span><span class="identifier">SignaturesMissingException</span> <span class="symbol">:</span> <a href="com.r3corda.core.contracts/-named-by-hash/index.html"><span class="identifier">NamedByHash</span></a><span class="symbol">, </span><a href="http://docs.oracle.com/javase/6/docs/api/java/security/SignatureException.html"><span class="identifier">SignatureException</span></a></a></a><br/>
|
||||
<ul>
|
||||
<HTML>
|
||||
@ -15850,7 +15850,7 @@
|
||||
<link rel="stylesheet" href="style.css">
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<a href="docs/build/html/api/index"><a href="com.r3corda.core.transactions/-signed-transaction/-init-.html"><span class="identifier">SignedTransaction</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)))/txBits">txBits</span><span class="symbol">:</span> <a href="com.r3corda.core.serialization/-serialized-bytes/index.html"><span class="identifier">SerializedBytes</span></a><span class="symbol"><</span><a href="com.r3corda.core.transactions/-wire-transaction/index.html"><span class="identifier">WireTransaction</span></a><span class="symbol">></span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)))/sigs">sigs</span><span class="symbol">:</span> <span class="identifier">List</span><span class="symbol"><</span><a href="com.r3corda.core.crypto/-digital-signature/-with-key/index.html"><span class="identifier">WithKey</span></a><span class="symbol">></span><span class="symbol">)</span></a></a><br/>
|
||||
<a href="docs/build/html/api/index"><a href="com.r3corda.core.transactions/-signed-transaction/-init-.html"><span class="identifier">SignedTransaction</span><span class="symbol">(</span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)), com.r3corda.core.crypto.SecureHash)/txBits">txBits</span><span class="symbol">:</span> <a href="com.r3corda.core.serialization/-serialized-bytes/index.html"><span class="identifier">SerializedBytes</span></a><span class="symbol"><</span><a href="com.r3corda.core.transactions/-wire-transaction/index.html"><span class="identifier">WireTransaction</span></a><span class="symbol">></span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)), com.r3corda.core.crypto.SecureHash)/sigs">sigs</span><span class="symbol">:</span> <span class="identifier">List</span><span class="symbol"><</span><a href="com.r3corda.core.crypto/-digital-signature/-with-key/index.html"><span class="identifier">WithKey</span></a><span class="symbol">></span><span class="symbol">, </span><span class="identifier" id="com.r3corda.core.transactions.SignedTransaction$<init>(com.r3corda.core.serialization.SerializedBytes((com.r3corda.core.transactions.WireTransaction)), kotlin.collections.List((com.r3corda.core.crypto.DigitalSignature.WithKey)), com.r3corda.core.crypto.SecureHash)/id">id</span><span class="symbol">:</span> <a href="com.r3corda.core.crypto/-secure-hash/index.html"><span class="identifier">SecureHash</span></a><span class="symbol">)</span></a></a><br/>
|
||||
<a href="docs/build/html/api/index"><a href="com.r3corda.core.transactions/-signed-transaction/-signatures-missing-exception/index.html"><span class="keyword">class </span><span class="identifier">SignaturesMissingException</span> <span class="symbol">:</span> <a href="com.r3corda.core.contracts/-named-by-hash/index.html"><span class="identifier">NamedByHash</span></a><span class="symbol">, </span><a href="http://docs.oracle.com/javase/6/docs/api/java/security/SignatureException.html"><span class="identifier">SignatureException</span></a></a></a><br/>
|
||||
<ul>
|
||||
<HTML>
|
||||
|
1
docs/build/html/building-the-docs.html
vendored
1
docs/build/html/building-the-docs.html
vendored
@ -90,6 +90,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/clientrpc.html
vendored
1
docs/build/html/clientrpc.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/codestyle.html
vendored
1
docs/build/html/codestyle.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
5
docs/build/html/consensus.html
vendored
5
docs/build/html/consensus.html
vendored
@ -32,7 +32,7 @@
|
||||
|
||||
<link rel="top" title="R3 Corda latest documentation" href="index.html"/>
|
||||
<link rel="next" title="Networking and messaging" href="messaging.html"/>
|
||||
<link rel="prev" title="Data types" href="transaction-data-types.html"/>
|
||||
<link rel="prev" title="Transaction Tear-offs" href="merkle-trees.html"/>
|
||||
|
||||
|
||||
<script src="_static/js/modernizr.min.js"></script>
|
||||
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">Consensus model</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#notary">Notary</a><ul>
|
||||
<li class="toctree-l3"><a class="reference internal" href="#multiple-notaries">Multiple notaries</a></li>
|
||||
@ -379,7 +380,7 @@ can be used when writing a custom protocol:</p>
|
||||
<a href="messaging.html" class="btn btn-neutral float-right" title="Networking and messaging" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
|
||||
|
||||
|
||||
<a href="transaction-data-types.html" class="btn btn-neutral" title="Data types" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
|
||||
<a href="merkle-trees.html" class="btn btn-neutral" title="Transaction Tear-offs" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
1
docs/build/html/contract-catalogue.html
vendored
1
docs/build/html/contract-catalogue.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/contract-irs.html
vendored
1
docs/build/html/contract-irs.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
12
docs/build/html/creating-a-cordapp.html
vendored
12
docs/build/html/creating-a-cordapp.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
@ -367,7 +368,7 @@ the following segments to the relevant part of your build.gradle.</p>
|
||||
<p>Cordformation is the local node deployment system for Cordapps, the nodes generated are intended to be used for
|
||||
experimenting, debugging, and testing node configurations and setups but not intended for production or testnet
|
||||
deployment.</p>
|
||||
<p>To use this gradle plugin you must add a new task that is of the type <cite>com.r3corda.plugins.Cordform</cite> to your
|
||||
<p>To use this gradle plugin you must add a new task that is of the type <code class="docutils literal"><span class="pre">com.r3corda.plugins.Cordform</span></code> to your
|
||||
build.gradle and then configure the nodes you wish to deploy with the Node and nodes configuration DSL.
|
||||
This DSL is specified in the <a class="reference external" href="api/index.html">JavaDoc</a>. An example of this is in the template-cordapp and below
|
||||
is a three node example;</p>
|
||||
@ -378,8 +379,7 @@ is a three node example;</p>
|
||||
name "Controller"
|
||||
dirName "controller"
|
||||
nearestCity "London"
|
||||
notary true // Sets this node to be a notary
|
||||
advertisedServices []
|
||||
advertisedServices = [ "corda.notary.validating" ]
|
||||
artemisPort 12345
|
||||
webPort 12346
|
||||
cordapps []
|
||||
@ -388,7 +388,7 @@ is a three node example;</p>
|
||||
name "NodeA"
|
||||
dirName "nodea"
|
||||
nearestCity "London"
|
||||
advertisedServices []
|
||||
advertisedServices = []
|
||||
artemisPort 31337
|
||||
webPort 31339
|
||||
cordapps []
|
||||
@ -397,7 +397,7 @@ is a three node example;</p>
|
||||
name "NodeB"
|
||||
dirName "nodeb"
|
||||
nearestCity "New York"
|
||||
advertisedServices []
|
||||
advertisedServices = []
|
||||
artemisPort 31338
|
||||
webPort 31340
|
||||
cordapps []
|
||||
@ -410,7 +410,7 @@ is a three node example;</p>
|
||||
run this task it will install the nodes to the directory specified and a script will be generated (for UNIX users only
|
||||
at present) to run the nodes with one command.</p>
|
||||
<p>Other cordapps can also be specified if they are already specified as classpath or compile dependencies in your
|
||||
build.gradle.</p>
|
||||
<code class="docutils literal"><span class="pre">build.gradle</span></code>.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
1
docs/build/html/data-model.html
vendored
1
docs/build/html/data-model.html
vendored
@ -100,6 +100,7 @@
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/event-scheduling.html
vendored
1
docs/build/html/event-scheduling.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/genindex.html
vendored
1
docs/build/html/genindex.html
vendored
@ -90,6 +90,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/getting-set-up.html
vendored
1
docs/build/html/getting-set-up.html
vendored
@ -95,6 +95,7 @@
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
7
docs/build/html/index.html
vendored
7
docs/build/html/index.html
vendored
@ -90,6 +90,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
@ -228,6 +229,12 @@ relevant sections of the technology white paper and now wish to learn how to use
|
||||
<li class="toctree-l2"><a class="reference internal" href="transaction-data-types.html#cryptography-maths-support">Cryptography & maths support</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="merkle-trees.html#merkle-trees-in-corda">Merkle trees in Corda</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="merkle-trees.html#hiding-data">Hiding data</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="merkle-trees.html#example-of-usage">Example of usage</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="consensus.html#notary">Notary</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="consensus.html#validation">Validation</a></li>
|
||||
|
1
docs/build/html/initialmarginagreement.html
vendored
1
docs/build/html/initialmarginagreement.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/inthebox.html
vendored
1
docs/build/html/inthebox.html
vendored
@ -94,6 +94,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
348
docs/build/html/merkle-trees.html
vendored
Normal file
348
docs/build/html/merkle-trees.html
vendored
Normal file
@ -0,0 +1,348 @@
|
||||
|
||||
|
||||
<!DOCTYPE html>
|
||||
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
|
||||
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<title>Transaction Tear-offs — R3 Corda latest documentation</title>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<link rel="stylesheet" href="_static/css/custom.css" type="text/css" />
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<link rel="top" title="R3 Corda latest documentation" href="index.html"/>
|
||||
<link rel="next" title="Consensus model" href="consensus.html"/>
|
||||
<link rel="prev" title="Data types" href="transaction-data-types.html"/>
|
||||
|
||||
|
||||
<script src="_static/js/modernizr.min.js"></script>
|
||||
|
||||
</head>
|
||||
|
||||
<body class="wy-body-for-nav" role="document">
|
||||
|
||||
<div class="wy-grid-for-nav">
|
||||
|
||||
|
||||
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
|
||||
<div class="wy-side-scroll">
|
||||
<div class="wy-side-nav-search">
|
||||
|
||||
|
||||
|
||||
|
||||
<a href="index.html" class="icon icon-home"> R3 Corda
|
||||
|
||||
|
||||
|
||||
</a>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="version">
|
||||
latest
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div role="search">
|
||||
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
|
||||
<input type="text" name="q" placeholder="Search docs" />
|
||||
<input type="hidden" name="check_keywords" value="yes" />
|
||||
<input type="hidden" name="area" value="default" />
|
||||
</form>
|
||||
</div>
|
||||
|
||||
|
||||
<br>
|
||||
<a href="api/index.html">API reference</a>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
|
||||
|
||||
|
||||
|
||||
<p class="caption"><span class="caption-text">Overview</span></p>
|
||||
<ul class="current">
|
||||
<li class="toctree-l1"><a class="reference internal" href="inthebox.html">What’s included?</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">Transaction Tear-offs</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#merkle-trees-in-corda">Merkle trees in Corda</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#hiding-data">Hiding data</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#example-of-usage">Example of usage</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="creating-a-cordapp.html">Creating a Cordapp</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="creating-a-cordapp.html#gradle-plugins-for-cordapps">Gradle Plugins for Cordapps</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="running-the-demos.html">Running the demos</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="node-administration.html">Node administration</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="corda-configuration-files.html">The Corda Configuration File</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="corda-configuration-files.html#rpc-users-file">RPC Users File</a></li>
|
||||
</ul>
|
||||
<p class="caption"><span class="caption-text">Tutorials</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="where-to-start.html">Where to start</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="tutorial-contract.html">Writing a contract</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="tutorial-contract-clauses.html">Writing a contract using clauses</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="tutorial-test-dsl.html">Writing a contract test</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="tutorial-clientrpc-api.html">Client RPC API</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="protocol-state-machines.html">Protocol state machines</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="oracles.html">Writing oracle services</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="tutorial-attachments.html">Using attachments</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="event-scheduling.html">Event scheduling</a></li>
|
||||
</ul>
|
||||
<p class="caption"><span class="caption-text">Contracts</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="contract-catalogue.html">Contract catalogue</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="contract-irs.html">Interest Rate Swaps</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="initialmarginagreement.html">Initial Margin Agreements</a></li>
|
||||
</ul>
|
||||
<p class="caption"><span class="caption-text">Node API</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="clientrpc.html">Client RPC</a></li>
|
||||
</ul>
|
||||
<p class="caption"><span class="caption-text">Appendix</span></p>
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="secure-coding-guidelines.html">Secure coding guidelines</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="release-process.html">Release process</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="release-process.html#steps-to-cut-a-release">Steps to cut a release</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="release-notes.html">Release notes</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="network-simulator.html">Network Simulator</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="node-explorer.html">Node Explorer</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="codestyle.html">Code style guide</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="building-the-docs.html">Building the documentation</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
|
||||
|
||||
|
||||
<nav class="wy-nav-top" role="navigation" aria-label="top navigation">
|
||||
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
|
||||
<a href="index.html">R3 Corda</a>
|
||||
</nav>
|
||||
|
||||
|
||||
|
||||
<div class="wy-nav-content">
|
||||
<div class="rst-content">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div role="navigation" aria-label="breadcrumbs navigation">
|
||||
<ul class="wy-breadcrumbs">
|
||||
<li><a href="index.html">Docs</a> »</li>
|
||||
|
||||
<li>Transaction Tear-offs</li>
|
||||
<li class="wy-breadcrumbs-aside">
|
||||
|
||||
|
||||
<a href="_sources/merkle-trees.txt" rel="nofollow"> View page source</a>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<hr/>
|
||||
</div>
|
||||
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
|
||||
<div itemprop="articleBody">
|
||||
|
||||
<div class="section" id="transaction-tear-offs">
|
||||
<h1>Transaction Tear-offs<a class="headerlink" href="#transaction-tear-offs" title="Permalink to this headline">¶</a></h1>
|
||||
<p>One of the basic data structures in our platform is a transaction. It can be passed around to be signed and verified,
|
||||
also by third parties. The construction of transactions assumes that they form a whole entity with input and output states,
|
||||
commands and attachments inside. However all sensitive data shouldn’t be revealed to other nodes that take part in
|
||||
the creation of transaction on validation level (a good example of this situation is the Oracle which validates only
|
||||
embedded commands). How to achive it in a way that convinces the other party the data they got for signing really did form
|
||||
a part of the transaction?</p>
|
||||
<p>We decided to use well known and described cryptographic scheme to provide proofs of inclusion and data integrity.
|
||||
Merkle trees are widely used in peer-to-peer networks, blockchain systems and git.
|
||||
You can read more on the concept <a class="reference external" href="https://en.wikipedia.org/wiki/Merkle_tree">here</a>.</p>
|
||||
<div class="section" id="merkle-trees-in-corda">
|
||||
<h2>Merkle trees in Corda<a class="headerlink" href="#merkle-trees-in-corda" title="Permalink to this headline">¶</a></h2>
|
||||
<p>Transactions are split into leaves, each of them contains either input, output, command or attachment. Other fields like
|
||||
timestamp or signers are not used in the calculation.
|
||||
Next, the Merkle tree is built in the normal way by hashing the concatenation
|
||||
of nodes’ hashes below the current one together. It’s visible on the example image below, where <code class="docutils literal"><span class="pre">H</span></code> denotes sha256 function,
|
||||
“+” - concatenation.</p>
|
||||
<img alt="_images/merkleTree.png" src="_images/merkleTree.png" />
|
||||
<p>The transaction has one input state, one output and three commands. If a tree is not a full binary tree, the rightmost nodes are
|
||||
duplicated in hash calculation (dotted lines).</p>
|
||||
<p>Finally, the hash of the root is the identifier of the transaction, it’s also used for signing and verification of data integrity.
|
||||
Every change in transaction on a leaf level will change its identifier.</p>
|
||||
</div>
|
||||
<div class="section" id="hiding-data">
|
||||
<h2>Hiding data<a class="headerlink" href="#hiding-data" title="Permalink to this headline">¶</a></h2>
|
||||
<p>Hiding data and providing the proof that it formed a part of a transaction is done by constructing Partial Merkle Trees
|
||||
(or Merkle branches). A Merkle branch is a set of hashes, that given the leaves’ data, is used to calculate the root’s hash.
|
||||
Then that hash is compared with the hash of a whole transaction and if they match it means that data we obtained belongs
|
||||
to that particular transaction.</p>
|
||||
<img alt="_images/partialMerkle.png" src="_images/partialMerkle.png" />
|
||||
<p>In the example above, the red node is the one holding data for signing Oracle service. Blue nodes’ hashes form the Partial Merkle
|
||||
Tree, dotted ones are not included. Having the command that should be in a red node place and branch we are able to calculate
|
||||
root of this tree and compare it with original transaction identifier - we have a proof that this command belongs to this transaction.</p>
|
||||
</div>
|
||||
<div class="section" id="example-of-usage">
|
||||
<h2>Example of usage<a class="headerlink" href="#example-of-usage" title="Permalink to this headline">¶</a></h2>
|
||||
<p>Let’s focus on a code example. We want to construct a transaction with commands containing interest rate fix data as in:
|
||||
<a class="reference internal" href="oracles.html"><span class="doc">Writing oracle services</span></a>.
|
||||
After construction of a partial transaction, with included <code class="docutils literal"><span class="pre">Fix</span></code> commands in it, we want to send it to the Oracle for checking
|
||||
and signing. To do so we need to specify which parts of the transaction are going to be revealed. That can be done by constructing
|
||||
filtering functions for inputs, outputs, attachments and commands separately. If a function is not provided by default none
|
||||
of the elements from this group will be included in a Partial Merkle Tree.</p>
|
||||
<div class="codeset container">
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="k">val</span> <span class="py">partialTx</span> <span class="p">=</span> <span class="p">...</span>
|
||||
<span class="k">val</span> <span class="py">oracle</span><span class="p">:</span> <span class="n">Party</span> <span class="p">=</span> <span class="p">...</span>
|
||||
<span class="k">fun</span> <span class="nf">filterCommands</span><span class="p">(</span><span class="n">c</span><span class="p">:</span> <span class="n">Command</span><span class="p">)</span> <span class="p">=</span> <span class="n">oracle</span><span class="p">.</span><span class="n">owningKey</span> <span class="k">in</span> <span class="n">c</span><span class="p">.</span><span class="n">signers</span> <span class="p">&&</span> <span class="n">c</span><span class="p">.</span><span class="n">value</span> <span class="k">is</span> <span class="n">Fix</span>
|
||||
<span class="k">val</span> <span class="py">filterFuns</span> <span class="p">=</span> <span class="n">FilterFuns</span><span class="p">(</span><span class="n">filterCommands</span> <span class="p">=</span> <span class="o">::</span><span class="n">filterCommands</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
<p>Assuming that we already assembled partialTx with some commands and know the identity of Oracle service,
|
||||
we pass filtering function over commands - <code class="docutils literal"><span class="pre">filterCommands</span></code> to <code class="docutils literal"><span class="pre">FilterFuns</span></code>. It filters only
|
||||
commands of type <code class="docutils literal"><span class="pre">Fix</span></code> as in IRSDemo example. Then we can construct <code class="docutils literal"><span class="pre">FilteredTransaction</span></code>:</p>
|
||||
<div class="codeset container">
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="k">val</span> <span class="py">wtx</span><span class="p">:</span> <span class="n">WireTransaction</span> <span class="p">=</span> <span class="n">partialTx</span><span class="p">.</span><span class="n">toWireTransaction</span><span class="p">()</span>
|
||||
<span class="k">val</span> <span class="py">ftx</span> <span class="p">=</span> <span class="n">FilteredTransaction</span><span class="p">.</span><span class="n">buildMerkleTransaction</span><span class="p">(</span><span class="n">wtx</span><span class="p">,</span> <span class="n">filterFuns</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
<p>In the Oracle example this step takes place in <code class="docutils literal"><span class="pre">RatesFixProtocol</span></code>:</p>
|
||||
<div class="codeset container">
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="k">val</span> <span class="py">protocol</span> <span class="p">=</span> <span class="n">RatesFixProtocol</span><span class="p">(</span><span class="n">partialTx</span><span class="p">,</span> <span class="n">filterFuns</span><span class="p">,</span> <span class="n">oracle</span><span class="p">,</span> <span class="n">fixOf</span><span class="p">,</span> <span class="s">"0.675"</span><span class="p">.</span><span class="n">bd</span><span class="p">,</span> <span class="s">"0.1"</span><span class="p">.</span><span class="n">bd</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
<p><code class="docutils literal"><span class="pre">FilteredTransaction</span></code> holds <code class="docutils literal"><span class="pre">filteredLeaves</span></code> (data that we wanted to reveal) and Merkle branch for them.</p>
|
||||
<div class="codeset container">
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="c1">// Getting included commands, inputs, outputs, attachments.</span>
|
||||
<span class="k">val</span> <span class="py">cmds</span><span class="p">:</span> <span class="n">List</span><span class="p"><</span><span class="n">Command</span><span class="p">></span> <span class="p">=</span> <span class="n">ftx</span><span class="p">.</span><span class="n">filteredLeaves</span><span class="p">.</span><span class="n">commands</span>
|
||||
<span class="k">val</span> <span class="py">ins</span><span class="p">:</span> <span class="n">List</span><span class="p"><</span><span class="n">StateRef</span><span class="p">></span> <span class="p">=</span> <span class="n">ftx</span><span class="p">.</span><span class="n">filteredLeaves</span><span class="p">.</span><span class="n">inputs</span>
|
||||
<span class="k">val</span> <span class="py">outs</span><span class="p">:</span> <span class="n">List</span><span class="p"><</span><span class="n">TransactionState</span><span class="p"><</span><span class="n">ContractState</span><span class="p">>></span> <span class="p">=</span> <span class="n">ftx</span><span class="p">.</span><span class="n">filteredLeaves</span><span class="p">.</span><span class="n">outputs</span>
|
||||
<span class="k">val</span> <span class="py">attchs</span><span class="p">:</span> <span class="n">List</span><span class="p"><</span><span class="n">SecureHash</span><span class="p">></span> <span class="p">=</span> <span class="n">ftx</span><span class="p">.</span><span class="n">filteredLeaves</span><span class="p">.</span><span class="n">attachments</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
<p>If you want to verify obtained <code class="docutils literal"><span class="pre">FilteredTransaction</span></code> all you need is the root hash of the full transaction:</p>
|
||||
<div class="codeset container">
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="p">(!</span><span class="n">ftx</span><span class="p">.</span><span class="n">verify</span><span class="p">(</span><span class="n">merkleRoot</span><span class="p">)){</span>
|
||||
<span class="k">throw</span> <span class="n">MerkleTreeException</span><span class="p">(</span><span class="s">"Rate Fix Oracle: Couldn't verify partial Merkle tree."</span><span class="p">)</span>
|
||||
<span class="p">}</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="admonition note">
|
||||
<p class="first admonition-title">Note</p>
|
||||
<p class="last">The way the <code class="docutils literal"><span class="pre">FilteredTransaction</span></code> is constructed ensures that after signing of the root hash it’s impossible to add or remove
|
||||
leaves. However, it can happen that having transaction with multiple commands one party reveals only subset of them to the Oracle.
|
||||
As signing is done now over the merkle root hash, the service signs all commands of given type, even though it didn’t see
|
||||
all of them. This issue will be handled after implementing partial signatures.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<footer>
|
||||
|
||||
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
|
||||
|
||||
<a href="consensus.html" class="btn btn-neutral float-right" title="Consensus model" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
|
||||
|
||||
|
||||
<a href="transaction-data-types.html" class="btn btn-neutral" title="Data types" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<hr/>
|
||||
|
||||
<div role="contentinfo">
|
||||
<p>
|
||||
© Copyright 2016, Distributed Ledger Group, LLC.
|
||||
|
||||
</p>
|
||||
</div>
|
||||
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
|
||||
|
||||
</footer>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT:'./',
|
||||
VERSION:'latest',
|
||||
COLLAPSE_INDEX:false,
|
||||
FILE_SUFFIX:'.html',
|
||||
HAS_SOURCE: true
|
||||
};
|
||||
</script>
|
||||
<script type="text/javascript" src="_static/jquery.js"></script>
|
||||
<script type="text/javascript" src="_static/underscore.js"></script>
|
||||
<script type="text/javascript" src="_static/doctools.js"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript" src="_static/js/theme.js"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
jQuery(function () {
|
||||
SphinxRtdTheme.StickyNav.enable();
|
||||
});
|
||||
</script>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
1
docs/build/html/messaging.html
vendored
1
docs/build/html/messaging.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">Networking and messaging</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="#messaging-types">Messaging types</a></li>
|
||||
|
1
docs/build/html/network-simulator.html
vendored
1
docs/build/html/network-simulator.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/node-administration.html
vendored
1
docs/build/html/node-administration.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/node-explorer.html
vendored
1
docs/build/html/node-explorer.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
BIN
docs/build/html/objects.inv
vendored
BIN
docs/build/html/objects.inv
vendored
Binary file not shown.
1
docs/build/html/oracles.html
vendored
1
docs/build/html/oracles.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/persistence.html
vendored
1
docs/build/html/persistence.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1 current"><a class="current reference internal" href="#">Persistence</a><ul>
|
||||
|
1
docs/build/html/protocol-state-machines.html
vendored
1
docs/build/html/protocol-state-machines.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/release-notes.html
vendored
1
docs/build/html/release-notes.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/release-process.html
vendored
1
docs/build/html/release-process.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
195
docs/build/html/running-the-demos.html
vendored
195
docs/build/html/running-the-demos.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
@ -194,149 +195,59 @@ how this works in <a class="reference internal" href="protocol-state-machines.ht
|
||||
<li>The IRS demo, which shows two nodes establishing an interest rate swap between them and performing fixings with a
|
||||
rates oracle, all driven via the HTTP API.</li>
|
||||
<li>The IRS demo web interface - a web interface to the IRS demo.</li>
|
||||
<li>The attachment demo, which demonstrates uploading attachments to nodes.</li>
|
||||
<li>The SIMM valuation demo, a large demo which shows two nodes agreeing on a portfolio and valuing the initial margin
|
||||
using the Standard Initial Margin Model.</li>
|
||||
</ol>
|
||||
<p>The demos create node data directories in the root of the project. If something goes wrong with them, blow away the
|
||||
directories and try again.</p>
|
||||
<div class="section" id="trader-demo">
|
||||
<h2>Trader demo<a class="headerlink" href="#trader-demo" title="Permalink to this headline">¶</a></h2>
|
||||
<p>Open two terminals, and in the first run:</p>
|
||||
<div class="admonition note">
|
||||
<p class="first admonition-title">Note</p>
|
||||
<p class="last">If you are planning to use non-default configuration you will need to run with –role=SetupA and –role=SetupB
|
||||
beforehand with the same parameters you plan to supply to the respective nodes.</p>
|
||||
<p class="last">The demos currently must be run from IntelliJ, this will change before M6.</p>
|
||||
</div>
|
||||
<p><strong>Windows</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span>gradlew.bat & .\build\install\r3prototyping\bin\trader-demo --role=BUYER
|
||||
</pre></div>
|
||||
<div class="admonition note">
|
||||
<p class="first admonition-title">Note</p>
|
||||
<p class="last">If any demos don’t work please jump on our mailing list and let us know.</p>
|
||||
</div>
|
||||
<p><strong>Other</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="p">./</span><span class="n">gradlew</span> <span class="n">installDist</span> <span class="p">&&</span> <span class="p">./</span><span class="n">build</span><span class="p">/</span><span class="n">install</span><span class="p">/</span><span class="n">r3prototyping</span><span class="p">/</span><span class="n">bin</span><span class="p">/</span><span class="n">trader</span><span class="p">-</span><span class="n">demo</span> <span class="p">--</span><span class="n">role</span><span class="p">=</span><span class="n">BUYER</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>It will compile things, if necessary, then create a directory named trader-demo/buyer with a bunch of files inside and
|
||||
start the node. You should see it waiting for a trade to begin.</p>
|
||||
<p>In the second terminal, run:</p>
|
||||
<p><strong>Windows</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span>.\build\install\r3prototyping\bin\trader-demo --role=SELLER
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><strong>Other</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="p">./</span><span class="n">build</span><span class="p">/</span><span class="n">install</span><span class="p">/</span><span class="n">r3prototyping</span><span class="p">/</span><span class="n">bin</span><span class="p">/</span><span class="n">trader</span><span class="p">-</span><span class="n">demo</span> <span class="p">--</span><span class="n">role</span><span class="p">=</span><span class="n">SELLER</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>You should see some log lines scroll past, and within a few seconds the messages “Purchase complete - we are a
|
||||
happy customer!” and “Sale completed - we have a happy customer!” should be printed.</p>
|
||||
<p>If it doesn’t work, jump on the mailing list and let us know.</p>
|
||||
<div class="section" id="trader-demo">
|
||||
<h2>Trader demo<a class="headerlink" href="#trader-demo" title="Permalink to this headline">¶</a></h2>
|
||||
<ol class="arabic simple">
|
||||
<li>Open the Corda project in IntelliJ and run the “Install” configuration</li>
|
||||
<li>Open the Corda samples project in IntelliJ and run the “Trader Demo: Run Nodes” configuration</li>
|
||||
<li>Run “Trader Demo: Run Buyer”</li>
|
||||
<li>Run “Trader Demo: Run Seller”</li>
|
||||
</ol>
|
||||
<p>In the “Trader Demo: Run Nodes” windows you should see some log lines scroll past, and within a few seconds the messages
|
||||
“Purchase complete - we are a happy customer!” and “Sale completed - we have a happy customer!” should be printed.</p>
|
||||
</div>
|
||||
<div class="section" id="irs-demo">
|
||||
<h2>IRS demo<a class="headerlink" href="#irs-demo" title="Permalink to this headline">¶</a></h2>
|
||||
<p>Open three terminals. In the first run:</p>
|
||||
<p><strong>Windows</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span>gradlew.bat installDist & .\build\install\r3prototyping\bin\irsdemo.bat --role=NodeA
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><strong>Other</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="p">./</span><span class="n">gradlew</span> <span class="n">installDist</span> <span class="p">&&</span> <span class="p">./</span><span class="n">build</span><span class="p">/</span><span class="n">install</span><span class="p">/</span><span class="n">r3prototyping</span><span class="p">/</span><span class="n">bin</span><span class="p">/</span><span class="n">irsdemo</span> <span class="p">--</span><span class="n">role</span><span class="p">=</span><span class="n">NodeA</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>And in the second run:</p>
|
||||
<p><strong>Windows</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span>.\build\install\r3prototyping\bin\irsdemo.bat --role=NodeB
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><strong>Other</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="p">./</span><span class="n">build</span><span class="p">/</span><span class="n">install</span><span class="p">/</span><span class="n">r3prototyping</span><span class="p">/</span><span class="n">bin</span><span class="p">/</span><span class="n">irsdemo</span> <span class="p">--</span><span class="n">role</span><span class="p">=</span><span class="n">NodeB</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>NodeB also doubles up as the interest rates oracle and you should see some rates data get loaded.</p>
|
||||
<p>Now in the third terminal run:</p>
|
||||
<p><strong>Windows</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span>.\build\install\r3prototyping\bin\irsdemo.bat --role=Trade trade1
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><strong>Other</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="p">./</span><span class="n">build</span><span class="p">/</span><span class="n">install</span><span class="p">/</span><span class="n">r3prototyping</span><span class="p">/</span><span class="n">bin</span><span class="p">/</span><span class="n">irsdemo</span> <span class="p">--</span><span class="n">role</span><span class="p">=</span><span class="n">Trade</span> <span class="n">trade1</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>You should see some activity in the other two terminals as they set up the deal. You can now run this command in
|
||||
a separate window to roll the fake clock forward and trigger lots of fixing events. Things go fast so make sure you
|
||||
can see the other terminals whilst you run this command!:</p>
|
||||
<p><strong>Windows</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span>.\build\install\r3prototyping\bin\irsdemo.bat --role=Date 2017-01-30
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><strong>Other</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="p">./</span><span class="n">build</span><span class="p">/</span><span class="n">install</span><span class="p">/</span><span class="n">r3prototyping</span><span class="p">/</span><span class="n">bin</span><span class="p">/</span><span class="n">irsdemo</span> <span class="p">--</span><span class="n">role</span><span class="p">=</span><span class="n">Date</span> <span class="m">2017</span><span class="p">-</span><span class="m">01</span><span class="p">-</span><span class="m">30</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<ol class="arabic simple">
|
||||
<li>Open the Corda project in IntelliJ and run the “Install” configuration</li>
|
||||
<li>Open the Corda samples project in IntelliJ and run the “IRS Demo: Run Nodes” configuration</li>
|
||||
<li>Run “IRS Demo: Run Upload Rates” to upload rates to the oracle.</li>
|
||||
<li>Run “IRS Demo: Run Trade” to have nodes agree on a trade.</li>
|
||||
<li>Run “IRS Demo: Run Date Change” to run the fixings.</li>
|
||||
</ol>
|
||||
<p>In the “IRS Demo: Run Nodes” window you’ll see a lot of activity when you run the trade and when you run the date change.
|
||||
The date change rolls the clock forwards and causes the nodes to agree on the fixings over a period.</p>
|
||||
</div>
|
||||
<div class="section" id="irs-web-demo">
|
||||
<h2>IRS web demo<a class="headerlink" href="#irs-web-demo" title="Permalink to this headline">¶</a></h2>
|
||||
<p>To install the web demo please follow these steps;</p>
|
||||
<ol class="arabic simple">
|
||||
<li>Install Node: <a class="reference external" href="https://nodejs.org/en/download/">https://nodejs.org/en/download/</a> and ensure the npm executable is on your classpath</li>
|
||||
<li>Open a terminal</li>
|
||||
<li>Run <cite>npm install -g bower</cite> or <cite>sudo npm install -g bower</cite> if on a Unix system.</li>
|
||||
<li>In the terminal navigate to <cite><corda>/src/main/resources/com/r3corda/demos/irswebdemo</cite></li>
|
||||
<li>Run <cite>bower install</cite></li>
|
||||
</ol>
|
||||
<p>To run the web demo, run the first two steps from the IRS Demo:</p>
|
||||
<p>Open two terminals and in the first:</p>
|
||||
<p><strong>Windows</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span>gradlew.bat installDist & .\build\install\r3prototyping\bin\irsdemo.bat --role=NodeA
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><strong>Other</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="p">./</span><span class="n">gradlew</span> <span class="n">installDist</span> <span class="p">&&</span> <span class="p">./</span><span class="n">build</span><span class="p">/</span><span class="n">install</span><span class="p">/</span><span class="n">r3prototyping</span><span class="p">/</span><span class="n">bin</span><span class="p">/</span><span class="n">irsdemo</span> <span class="p">--</span><span class="n">role</span><span class="p">=</span><span class="n">NodeA</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>And in the second run:</p>
|
||||
<p><strong>Windows</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span>.\build\install\r3prototyping\bin\irsdemo.bat --role=NodeB
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><strong>Other</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="p">./</span><span class="n">build</span><span class="p">/</span><span class="n">install</span><span class="p">/</span><span class="n">r3prototyping</span><span class="p">/</span><span class="n">bin</span><span class="p">/</span><span class="n">irsdemo</span> <span class="p">--</span><span class="n">role</span><span class="p">=</span><span class="n">NodeB</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Now open your web browser to this URL:</p>
|
||||
<div class="admonition note">
|
||||
<p class="first admonition-title">Note</p>
|
||||
<p class="last">If using a custom node port address or port those must be used instead.</p>
|
||||
</div>
|
||||
<p><strong>Node A</strong>:</p>
|
||||
<blockquote>
|
||||
<div><a class="reference external" href="http://localhost:31338/web/irsdemo">http://localhost:31338/web/irsdemo</a></div></blockquote>
|
||||
<p><strong>Node B</strong>:</p>
|
||||
<blockquote>
|
||||
<div><a class="reference external" href="http://localhost:31340/web/irsdemo">http://localhost:31340/web/irsdemo</a></div></blockquote>
|
||||
<p>There is also an IRS web demo installed. To use this follow steps 1-3 in the IRS demo and then navigate to
|
||||
<a class="reference external" href="http://localhost:10005/web/irsdemo">http://localhost:10005/web/irsdemo</a> and <a class="reference external" href="http://localhost:10005/web/irsdemo">http://localhost:10005/web/irsdemo</a> to see both node’s view of the trades.</p>
|
||||
<p>To use the demos click the “Create Deal” button, fill in the form, then click the “Submit” button. Now you will be
|
||||
able to use the time controls at the top left of the home page to run the fixings. Click any individual trade in the
|
||||
blotter to view it.</p>
|
||||
</div>
|
||||
<div class="section" id="attachment-demo">
|
||||
<h2>Attachment demo<a class="headerlink" href="#attachment-demo" title="Permalink to this headline">¶</a></h2>
|
||||
<p>Open two terminals, and in the first run:</p>
|
||||
<p><strong>Windows</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span>gradlew.bat & .\build\install\r3prototyping\bin\attachment-demo --role=RECIPIENT
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><strong>Other</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="p">./</span><span class="n">gradlew</span> <span class="n">installDist</span> <span class="p">&&</span> <span class="p">./</span><span class="n">build</span><span class="p">/</span><span class="n">install</span><span class="p">/</span><span class="n">r3prototyping</span><span class="p">/</span><span class="n">bin</span><span class="p">/</span><span class="n">attachment</span><span class="p">-</span><span class="n">demo</span> <span class="p">--</span><span class="n">role</span><span class="p">=</span><span class="n">RECIPIENT</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>It will compile things, if necessary, then create a directory named attachment-demo/buyer with a bunch of files inside and
|
||||
start the node. You should see it waiting for a trade to begin.</p>
|
||||
<p>In the second terminal, run:</p>
|
||||
<p><strong>Windows</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span>.\build\install\r3prototyping\bin\attachment-demo --role=SENDER
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><strong>Other</strong>:</p>
|
||||
<div class="highlight-kotlin"><div class="highlight"><pre><span></span><span class="p">./</span><span class="n">build</span><span class="p">/</span><span class="n">install</span><span class="p">/</span><span class="n">r3prototyping</span><span class="p">/</span><span class="n">bin</span><span class="p">/</span><span class="n">attachment</span><span class="p">-</span><span class="n">demo</span> <span class="p">--</span><span class="n">role</span><span class="p">=</span><span class="n">SENDER</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>You should see some log lines scroll past, and within a few seconds the message “File received - we’re happy!” should be printed.</p>
|
||||
<ol class="arabic simple">
|
||||
<li>Open the Corda project in IntelliJ and run the “Install” configuration</li>
|
||||
<li>Open the Corda samples project in IntelliJ and run the “Attachment Demo: Run Nodes” configuration</li>
|
||||
<li>Run “Attachment Demo: Run Recipient” - this waits for a trade to start</li>
|
||||
<li>Run “Attachment Demo: Run Sender” - sends the attachment</li>
|
||||
</ol>
|
||||
<p>In the “Attachment Demo: Run Nodes” window you should see some log lines scroll past, and within a few seconds the
|
||||
message “File received - we’re happy!” should be printed.</p>
|
||||
</div>
|
||||
<div class="section" id="simm-and-portfolio-demo">
|
||||
<h2>SIMM and Portfolio Demo<a class="headerlink" href="#simm-and-portfolio-demo" title="Permalink to this headline">¶</a></h2>
|
||||
@ -345,32 +256,12 @@ start the node. You should see it waiting for a trade to begin.</p>
|
||||
<p class="last">Read more about this demo at <a class="reference internal" href="initialmarginagreement.html"><span class="doc">Initial Margin Agreements</span></a>.</p>
|
||||
</div>
|
||||
<p>To run the demo run:</p>
|
||||
<p><strong>Windows</strong></p>
|
||||
<p>Open a terminal window and navigate to the root directory of Corda and run:</p>
|
||||
<div class="highlight-shell"><div class="highlight"><pre><span></span>gradlew apps:vega:installTemplateNodes
|
||||
<span class="nb">cd</span> build<span class="se">\n</span>odes<span class="se">\n</span>ameserver
|
||||
java -jar corda.jar
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Now open another terminal in the root directory of Corda and run:</p>
|
||||
<div class="highlight-shell"><div class="highlight"><pre><span></span><span class="nb">cd</span> build<span class="se">\n</span>odes<span class="se">\n</span>odea
|
||||
java -jar corda.jar
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Now open a third terminal in the root directory of Corda and run:</p>
|
||||
<div class="highlight-shell"><div class="highlight"><pre><span></span><span class="nb">cd</span> build<span class="se">\n</span>odes<span class="se">\n</span>odeb
|
||||
java -jar corda.jar
|
||||
</pre></div>
|
||||
</div>
|
||||
<p><strong>Other</strong></p>
|
||||
<p>Open one terminal window and run the following commands from the root directory of Corda:</p>
|
||||
<div class="highlight-shell"><div class="highlight"><pre><span></span>./gradlew apps:vega:installTemplateNodes
|
||||
<span class="nb">cd</span> build/nodes
|
||||
./runnodes
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Now open <a class="reference external" href="http://localhost:31339/web/vega">http://localhost:31339/web/vega</a> and <a class="reference external" href="http://localhost:31340/web/vega">http://localhost:31340/web/vega</a> to view the two nodes that this
|
||||
will have started respectively.</p>
|
||||
<ol class="arabic simple">
|
||||
<li>Open the Corda project in IntelliJ and run the “Install” configuration</li>
|
||||
<li>Open the Corda samples project in IntelliJ and run the “Simm Valuation Demo” configuration</li>
|
||||
</ol>
|
||||
<p>Now open <a class="reference external" href="http://localhost:10005/web/simmvaluationdemo">http://localhost:10005/web/simmvaluationdemo</a> and <a class="reference external" href="http://localhost:10005/web/simmvaluationdemo">http://localhost:10005/web/simmvaluationdemo</a> to view the two nodes that this
|
||||
will have started respectively. You can now use the demo by creating trades and agreeing the valuations.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
1
docs/build/html/search.html
vendored
1
docs/build/html/search.html
vendored
@ -89,6 +89,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
2
docs/build/html/searchindex.js
vendored
2
docs/build/html/searchindex.js
vendored
File diff suppressed because one or more lines are too long
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
5
docs/build/html/transaction-data-types.html
vendored
5
docs/build/html/transaction-data-types.html
vendored
@ -31,7 +31,7 @@
|
||||
|
||||
|
||||
<link rel="top" title="R3 Corda latest documentation" href="index.html"/>
|
||||
<link rel="next" title="Consensus model" href="consensus.html"/>
|
||||
<link rel="next" title="Transaction Tear-offs" href="merkle-trees.html"/>
|
||||
<link rel="prev" title="Data model" href="data-model.html"/>
|
||||
|
||||
|
||||
@ -106,6 +106,7 @@
|
||||
<li class="toctree-l2"><a class="reference internal" href="#cryptography-maths-support">Cryptography & maths support</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
@ -399,7 +400,7 @@ splines. These can be found in the <a class="reference external" href="api/com.r
|
||||
|
||||
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
|
||||
|
||||
<a href="consensus.html" class="btn btn-neutral float-right" title="Consensus model" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
|
||||
<a href="merkle-trees.html" class="btn btn-neutral float-right" title="Transaction Tear-offs" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
|
||||
|
||||
|
||||
<a href="data-model.html" class="btn btn-neutral" title="Data model" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
|
||||
|
1
docs/build/html/tutorial-attachments.html
vendored
1
docs/build/html/tutorial-attachments.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/tutorial-clientrpc-api.html
vendored
1
docs/build/html/tutorial-clientrpc-api.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/tutorial-contract.html
vendored
1
docs/build/html/tutorial-contract.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/tutorial-test-dsl.html
vendored
1
docs/build/html/tutorial-test-dsl.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
1
docs/build/html/where-to-start.html
vendored
1
docs/build/html/where-to-start.html
vendored
@ -91,6 +91,7 @@
|
||||
<li class="toctree-l1"><a class="reference internal" href="getting-set-up.html">Getting set up</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="data-model.html">Data model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="transaction-data-types.html">Data types</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="merkle-trees.html">Transaction Tear-offs</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="consensus.html">Consensus model</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="messaging.html">Networking and messaging</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="persistence.html">Persistence</a></li>
|
||||
|
BIN
docs/build/libs/docs-0.5-SNAPSHOT.jar
vendored
Normal file
BIN
docs/build/libs/docs-0.5-SNAPSHOT.jar
vendored
Normal file
Binary file not shown.
2
docs/build/tmp/jar/MANIFEST.MF
vendored
Normal file
2
docs/build/tmp/jar/MANIFEST.MF
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
Manifest-Version: 1.0
|
||||
|
Loading…
Reference in New Issue
Block a user