public class CommercialPaperUtils
public static CommercialPaperUtils INSTANCE
@JvmStatic @NotNull public static TransactionBuilder generateIssue(@NotNull PartyAndReference issuance, @NotNull Amount<net.corda.core.contracts.Issued> faceValue, @NotNull java.time.Instant maturityDate, @NotNull 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
TransactionBuilder tx,
@NotNull
StateAndRef<net.corda.finance.contracts.CommercialPaper.State> paper,
@NotNull
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
TransactionBuilder tx,
@NotNull
StateAndRef<net.corda.finance.contracts.CommercialPaper.State> paper,
@NotNull
ServiceHub services,
@NotNull
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.