public class CommercialPaperUtils
public static CommercialPaperUtils INSTANCE
@JvmStatic @NotNull public static net.corda.core.transactions.TransactionBuilder generateIssue(@NotNull net.corda.core.contracts.PartyAndReference issuance, @NotNull net.corda.core.contracts.Amount<net.corda.core.contracts.Issued> faceValue, @NotNull java.time.Instant maturityDate, @NotNull net.corda.core.identity.Party notary)
Returns a transaction that issues commercial paper, owned by the issuing parties key. Does not update an existing transaction because you aren't able to issue multiple pieces of CP in a single transaction at the moment: this restriction is not fundamental and may be lifted later.
@JvmStatic public static void generateMove(@NotNull net.corda.core.transactions.TransactionBuilder tx, @NotNull net.corda.core.contracts.StateAndRef<net.corda.finance.contracts.CommercialPaper.State> paper, @NotNull net.corda.core.identity.AbstractParty newOwner)
Updates the given partial transaction with an input/output/command to reassign ownership of the paper.
@JvmStatic @Suspendable public static void generateRedeem(@NotNull net.corda.core.transactions.TransactionBuilder tx, @NotNull net.corda.core.contracts.StateAndRef<net.corda.finance.contracts.CommercialPaper.State> paper, @NotNull net.corda.core.node.ServiceHub services, @NotNull net.corda.core.identity.PartyAndCertificate ourIdentity)
Intended to be called by the issuer of some commercial paper, when an owner has notified us that they wish to redeem the paper. We must therefore send enough money to the key that owns the paper to satisfy the face value, and then ensure the paper is removed from the ledger.
InsufficientBalanceException
- if the vault doesn't contain enough money to pay the redeemer.