net.corda.finance.contracts - corda

corda / net.corda.finance.contracts

## Package net.corda.finance.contracts

### Types

#### AccrualAdjustment | Simple enum for returning accurals adjusted or unadjusted. We don't actually do anything with this yet though, so it's ignored for now. `enum class AccrualAdjustment`
#### BilateralNettableState | Interface for state objects that support being netted with other state objects. `interface BilateralNettableState<N : BilateralNettableState<N>>`
#### BusinessCalendar | A business calendar performs date calculations that take into account national holidays and weekends. This is a typical feature of financial contracts, in which a business may not want a payment event to fall on a day when no staff are around to handle problems. `open class BusinessCalendar`
#### CommercialPaper | `class CommercialPaper : Contract`
#### Commodity | Class representing a commodity, as an equivalent to the Currency class. This exists purely to enable the CommodityContract contract, and is likely to change in future. `data class Commodity : TokenizableAssetInfo`
#### DateRollConvention | This reflects what happens if a date on which a business event is supposed to happen actually falls upon a non-working day. Depending on the accounting requirement, we can move forward until we get to a business day, or backwards. There are some additional rules which are explained in the individual cases below. `enum class DateRollConvention`
#### DateRollDirection | This is utilised in the DateRollConvention class to determine which way we should initially step when finding a business day. `enum class DateRollDirection`
#### DayCountBasisDay | This forms the day part of the "Day Count Basis" used for interest calculation. Note that the first character cannot be a number (enum naming constraints), so we drop that in the toString lest some people get confused. `enum class DayCountBasisDay`
#### DayCountBasisYear | This forms the year part of the "Day Count Basis" used for interest calculation. `enum class DayCountBasisYear`
#### DealState | Interface representing an agreement that exposes various attributes that are common. Implementing it simplifies implementation of general flows that manipulate many agreement types. `interface DealState : LinearState`
#### Expression | Represents a textual expression of e.g. a formula `data class Expression`
#### Fix | A Fix represents a named interest rate, on a given day, for a given duration. It can be embedded in a tx. `data class Fix : CommandData`
#### FixableDealState | Interface adding fixing specific methods. `interface FixableDealState : DealState`
#### FixOf | A FixOf identifies the question side of a fix: what day, tenor and type of fix ("LIBOR", "EURIBOR" etc) `data class FixOf`
#### Frequency | Frequency at which an event occurs - the enumerator also casts to an integer specifying the number of times per year that would divide into (eg annually = 1, semiannual = 2, monthly = 12 etc). `enum class Frequency`
#### MultilateralNettableState | Interface for state objects that support being netted with other state objects. `interface MultilateralNettableState<out T : Any>`
#### NetCommand | A common netting command for contracts whose states can be netted. `interface NetCommand : CommandData`
#### NettableState | `interface NettableState<N : BilateralNettableState<N>, out T : Any> : BilateralNettableState<N>, MultilateralNettableState<T>`
#### NetType | Enum for the types of netting that can be applied to state objects. Exact behaviour for each type of netting is left to the contract to determine. `enum class NetType`
#### PaymentRule | Whether the payment should be made before the due date, or after it. `enum class PaymentRule`
#### Tenor | Placeholder class for the Tenor datatype - which is a standardised duration of time until maturity `data class Tenor`

### Properties

#### CP_PROGRAM_ID | This is an ultra-trivial implementation of commercial paper, which is essentially a simpler version of a corporate bond. It can be seen as a company-specific currency. A company issues CP with a particular face value, say $100, but sells it for less, say $90. The paper can be redeemed for cash at a given date in the future. Thus this example would have a 10% interest rate with a single repayment. Commercial paper is often rolled over (the maturity date is adjusted as if the paper was redeemed and immediately repurchased, but without having to front the cash). `const val CP_PROGRAM_ID: String`