com.r3corda.contracts / InterestRateSwap / State

State

data class State : FixableDealState, SchedulableState

The state class contains the 4 major data classes



Constructors

<init> State(fixedLeg: FixedLeg, floatingLeg: FloatingLeg, calculation: Calculation, common: Common)

The state class contains the 4 major data classes

Properties

calculation val calculation: Calculation
common val common: Common
contract val contract: InterestRateSwap

An instance of the contract class that will verify this state.

fixedLeg val fixedLeg: FixedLeg
floatingLeg val floatingLeg: FloatingLeg
participants val participants: List<PublicKey>

A participant is any party that is able to consume this state in a valid transaction.

parties val parties: Array<Party>

Exposes the Parties involved in a generic way

ref val ref: String

Human readable well known reference (e.g. trade reference)

thread val thread: <ERROR CLASS>

Unique thread id within the wallets of all parties

Functions

evaluateCalculation fun evaluateCalculation(businessDate: LocalDate, expression: Expression = calculation.expression): Any

For evaluating arbitrary java on the platform

generateAgreement fun generateAgreement(notary: Party): TransactionBuilder

Generate a partial transaction representing an agreement (command) to this deal, allowing a general deal/agreement protocol to generate the necessary transaction for potential implementations

generateFix fun generateFix(ptx: TransactionBuilder, oldState: StateAndRef<*>, fix: Fix): Unit

Generate a fixing command for this deal and fix

isRelevant fun isRelevant(ourKeys: Set<PublicKey>): Boolean

true if this should be tracked by our wallet(s)

nextFixingOf fun nextFixingOf(): FixOf?

When is the next fixing and what is the fixing for?

nextScheduledActivity fun nextScheduledActivity(thisStateRef: StateRef, protocolLogicRefFactory: ProtocolLogicRefFactory): ScheduledActivity?

Indicate whether there is some activity to be performed at some future point in time with respect to this ContractState, what that activity is and at what point in time it should be initiated. This can be used to implement deadlines for payment or processing of financial instruments according to a schedule.

prettyPrint fun prettyPrint(): String

Just makes printing it out a bit better for those who dont have 80000 column wide monitors.

withPublicKey fun withPublicKey(before: Party, after: PublicKey): DealState

Extension Functions

exportIRSToCSV fun State.exportIRSToCSV(): String