public static class NotaryFlow.Client
A flow to be used by a party for obtaining signature(s) from a NotaryService ascertaining the transaction time-window is correct and none of its inputs have been used in another completed transaction.
In case of a single-node or Raft notary, the flow will return a single signature. For the BFT notary multiple signatures will be returned – one from each replica that accepted the input state commit.
The transaction to be notarised, stx, should be fully verified before calling this flow.
Modifier and Type | Class and Description |
---|---|
static class |
Client.Companion |
Modifier and Type | Field and Description |
---|---|
static Client.Companion |
Companion |
Constructor and Description |
---|
Client(SignedTransaction stx,
ProgressTracker progressTracker,
boolean skipVerification)
A flow to be used by a party for obtaining signature(s) from a NotaryService ascertaining the transaction
time-window is correct and none of its inputs have been used in another completed transaction.
|
Client(SignedTransaction stx,
boolean skipVerification) |
Client(SignedTransaction stx,
ProgressTracker progressTracker) |
Modifier and Type | Method and Description |
---|---|
java.util.List<net.corda.core.crypto.TransactionSignature> |
call()
This is where you fill out your business logic.
|
Party |
checkTransaction()
Checks that the transaction specifies a valid notary, and verifies that it contains all required signatures
apart from the notary's.
|
ProgressTracker |
getProgressTracker()
Override this to provide a
class ProgressTracker . If one is provided and stepped, the framework will do something
helpful with the progress reports e.g record to the audit service. If this flow is invoked as a subflow of another,
then the tracker will be made a child of the current step in the parent. If it's null, this flow doesn't track
progress. |
boolean |
isTimeoutEnabled() |
UntrustworthyData<net.corda.core.flows.NotarisationResponse> |
notarise(Party notaryParty)
Notarises the transaction with the notaryParty, obtains the notary's signature(s).
|
java.util.List<net.corda.core.crypto.TransactionSignature> |
validateResponse(UntrustworthyData<net.corda.core.flows.NotarisationResponse> response,
Party notaryParty)
Checks that the notary's signature(s) is/are valid.
|
public static Client.Companion Companion
public Client(SignedTransaction stx, ProgressTracker progressTracker, boolean skipVerification)
A flow to be used by a party for obtaining signature(s) from a NotaryService ascertaining the transaction time-window is correct and none of its inputs have been used in another completed transaction.
In case of a single-node or Raft notary, the flow will return a single signature. For the BFT notary multiple signatures will be returned – one from each replica that accepted the input state commit.
The transaction to be notarised, stx, should be fully verified before calling this flow.
progressTracker
- Override this to provide a class ProgressTracker
. If one is provided and stepped, the framework will do something
helpful with the progress reports e.g record to the audit service. If this flow is invoked as a subflow of another,
then the tracker will be made a child of the current step in the parent. If it's null, this flow doesn't track
progress.
Note that this has to return a tracker before the flow is invoked. You can't change your mind half way through.
skipVerification
- Set to true if the stx has already been verified for signature and contract validity,to prevent re-verification.public Client(SignedTransaction stx, boolean skipVerification)
public Client(SignedTransaction stx, ProgressTracker progressTracker)
public boolean isTimeoutEnabled()
public java.util.List<net.corda.core.crypto.TransactionSignature> call()
This is where you fill out your business logic.
public Party checkTransaction()
Checks that the transaction specifies a valid notary, and verifies that it contains all required signatures apart from the notary's.
public UntrustworthyData<net.corda.core.flows.NotarisationResponse> notarise(Party notaryParty)
Notarises the transaction with the notaryParty, obtains the notary's signature(s).
public java.util.List<net.corda.core.crypto.TransactionSignature> validateResponse(UntrustworthyData<net.corda.core.flows.NotarisationResponse> response, Party notaryParty)
Checks that the notary's signature(s) is/are valid.
public ProgressTracker getProgressTracker()
Override this to provide a class ProgressTracker
. If one is provided and stepped, the framework will do something
helpful with the progress reports e.g record to the audit service. If this flow is invoked as a subflow of another,
then the tracker will be made a child of the current step in the parent. If it's null, this flow doesn't track
progress.
Note that this has to return a tracker before the flow is invoked. You can't change your mind half way through.
class ProgressTracker