data class State<P : Any> : 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> |
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. State(lifecycle: Lifecycle = Lifecycle.NORMAL, obligor: AbstractParty, template: Terms<P>, quantity: Long, beneficiary: AbstractParty) |
amount |
Amount represents a positive quantity of some issued product which can be cash, tokens, assets, or generally anything else that's quantifiable with integer quantities. See Issued and Amount for more details. val amount: Amount<Issued<Terms<P>>> |
beneficiary |
The public key of the entity the contract pays to val beneficiary: AbstractParty |
bilateralNetState |
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. val bilateralNetState: BilateralNetState<P> |
dueBefore |
val dueBefore: Instant |
exitKeys |
There must be an ExitCommand signed by these keys to destroy the amount. While all states require their owner to sign, some (i.e. cash) also require the issuer. val exitKeys: Collection<PublicKey> |
lifecycle |
var lifecycle: Lifecycle |
multilateralNetState |
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. val multilateralNetState: MultilateralNetState<P> |
obligor |
Where the debt originates from (obligor) val obligor: AbstractParty |
owner |
There must be a MoveCommand signed by this key to claim the amount. val owner: AbstractParty |
participants |
val participants: List<AbstractParty> |
quantity |
val quantity: Long |
template |
val template: Terms<P> |
net |
Perform bilateral netting of this state with another state. The two states must be compatible (as in bilateralNetState objects are equal). fun net(other: State<P>): State<P> |
toString |
fun toString(): String |
withNewOwner |
Copies the underlying data structure, replacing the owner field with this new value and leaving the rest alone. fun withNewOwner(newOwner: AbstractParty): CommandAndState |
withNewOwnerAndAmount |
Copies the underlying data structure, replacing the amount and owner fields with the new values and leaving the rest (exitKeys) alone. fun withNewOwnerAndAmount(newAmount: Amount<Issued<Terms<P>>>, newOwner: AbstractParty): State<P> |