public class CashIssueFlow
extends AbstractCashFlow
Initiates a flow that self-issues cash (which should then be sent to recipient(s) using a payment transaction).
We issue cash only to ourselves so that all KYC/AML checks on payments are enforced consistently, rather than risk checks for issuance and payments differing. Outside of test scenarios it would be extremely unusual to issue cash and immediately transfer it, so impact of this limitation is considered minimal.
Modifier and Type | Class and Description |
---|---|
static class |
CashIssueFlow.IssueRequest |
AbstractCashFlow.AbstractRequest, AbstractCashFlow.Companion, AbstractCashFlow.Result
Companion
Constructor and Description |
---|
CashIssueFlow(Amount<java.util.Currency> amount,
OpaqueBytes issuerBankPartyRef,
Party notary,
ProgressTracker progressTracker)
Initiates a flow that self-issues cash (which should then be sent to recipient(s) using a payment transaction).
|
CashIssueFlow(Amount<java.util.Currency> amount,
OpaqueBytes issuerBankPartyRef,
Party notary) |
CashIssueFlow(CashIssueFlow.IssueRequest request) |
Modifier and Type | Method and Description |
---|---|
AbstractCashFlow.Result |
call()
This is where you fill out your business logic.
|
finaliseTx, getProgressTracker
await, await, call, checkFlowIsNotKilled, checkFlowIsNotKilled, checkFlowPermission, close, flowStackSnapshot, getFlowInfo, getLogger, getOurIdentity, getOurIdentityAndCert, getProgressTracker, getRunId, getServiceHub, initiateFlow, initiateFlow, isKilled, persistFlowStackSnapshot, receive, receiveAll, receiveAllMap, recordAuditEvent, send, sendAll, sendAllMap, sendAndReceive, subFlow, track, trackStepsTree, trackStepsTreeIndex, waitForLedgerCommit, waitForStateConsumption
public CashIssueFlow(Amount<java.util.Currency> amount, OpaqueBytes issuerBankPartyRef, Party notary, ProgressTracker progressTracker)
Initiates a flow that self-issues cash (which should then be sent to recipient(s) using a payment transaction).
We issue cash only to ourselves so that all KYC/AML checks on payments are enforced consistently, rather than risk checks for issuance and payments differing. Outside of test scenarios it would be extremely unusual to issue cash and immediately transfer it, so impact of this limitation is considered minimal.
amount
- the amount of currency to issue.issuerBankPartyRef
- a reference to put on the issued currency.notary
- the notary to set on the output states.amount
- the amount of currency to issue.issuerBankPartyRef
- a reference to put on the issued currency.notary
- the notary to set on the output states.public CashIssueFlow(Amount<java.util.Currency> amount, OpaqueBytes issuerBankPartyRef, Party notary)
public CashIssueFlow(CashIssueFlow.IssueRequest request)
public AbstractCashFlow.Result call()
This is where you fill out your business logic.