data class State<P> : FungibleAsset<Terms<P>>, NettableState<State<P>, MultilateralNetState<P>>
A state representing the obligation of one party (obligor) to deliver a specified number of units of an underlying asset (described as token.acceptableIssuedProducts) to the beneficiary no later than the specified time.
P
- the product the obligation is for payment of.<init> |
State(lifecycle: Lifecycle = Lifecycle.NORMAL, obligor: Party, template: Terms<P>, quantity: Long, beneficiary: PublicKey) A state representing the obligation of one party (obligor) to deliver a specified number of units of an underlying asset (described as token.acceptableIssuedProducts) to the beneficiary no later than the specified time. |
amount |
val amount: Amount<Issued<Terms<P>>> |
beneficiary |
val beneficiary: PublicKey The public key of the entity the contract pays to |
bilateralNetState |
val bilateralNetState: BilateralNetState<P> Returns an object used to determine if two states can be subject to close-out netting. If two states return equal objects, they can be close out netted together. |
contract |
val contract: Obligation<Currency> An instance of the contract class that will verify this state. |
deposit |
val deposit: PartyAndReference Where the underlying asset backing this ledger entry can be found. The reference is only intended for use by the issuer, and is not intended to be meaningful to others. |
dueBefore |
val dueBefore: Instant |
exitKeys |
val exitKeys: Collection<PublicKey> There must be an ExitCommand signed by these keys to destroy the amount |
issuanceDef |
val issuanceDef: Issued<Terms<P>> |
lifecycle |
var lifecycle: Lifecycle |
multilateralNetState |
val multilateralNetState: MultilateralNetState<P> Returns an object used to determine if two states can be subject to close-out netting. If two states return equal objects, they can be close out netted together. |
obligor |
val obligor: Party Where the debt originates from (obligor) |
owner |
val owner: PublicKey There must be a MoveCommand signed by this key to claim the amount |
participants |
val participants: List<PublicKey> A |
quantity |
val quantity: Long |
template |
val template: Terms<P> |
move |
fun move(newAmount: Amount<Issued<Terms<P>>>, newOwner: PublicKey): State<P> |
net |
fun net(other: State<P>): State<P> Perform bilateral netting of this state with another state. The two states must be compatible (as in bilateralNetState objects are equal). |
toString |
fun toString(): String |
withNewOwner |
fun withNewOwner(newOwner: PublicKey): <ERROR CLASS> Copies the underlying data structure, replacing the owner field with this new value and leaving the rest alone |
at |
infix fun <T> State<T>.at(dueBefore: Instant): State<T> |
between |
infix fun <T> State<T>.between(parties: <ERROR CLASS><Party, PublicKey>): State<T> |
issued by |
infix fun <T> State<T>.issued by(party: Party): State<T> |
issuedBy |
fun <T> State<T>.issuedBy(party: Party): State<T> |
owned by |
infix fun <T> State<T>.owned by(owner: PublicKey): State<T> |
ownedBy |
fun <T> State<T>.ownedBy(owner: PublicKey): State<T> |