Class KnownAmountBondPaymentPeriod

  • All Implemented Interfaces:
    BondPaymentPeriod, Serializable, org.joda.beans.Bean, org.joda.beans.ImmutableBean

    public final class KnownAmountBondPaymentPeriod
    extends Object
    implements BondPaymentPeriod, org.joda.beans.ImmutableBean, Serializable
    A period within a swap that results in a known amount.

    A swap leg consists of one or more periods that result in a payment. The standard class, RatePaymentPeriod, represents a payment period calculated from a fixed or floating rate. By contrast, this class represents a period where the amount of the payment is known and fixed.

    See Also:
    Serialized Form
    • Method Detail

      • getPaymentDate

        public LocalDate getPaymentDate()
        Description copied from interface: BondPaymentPeriod
        Gets the date that the payment is made.

        Each payment period has a single payment date. This date has been adjusted to be a valid business day.

        Specified by:
        getPaymentDate in interface BondPaymentPeriod
        Returns:
        the payment date of the period
      • getCurrency

        public Currency getCurrency()
        Description copied from interface: BondPaymentPeriod
        Gets the currency of the payment resulting from the period.

        This is the currency of the generated payment. A period has a single currency.

        Specified by:
        getCurrency in interface BondPaymentPeriod
        Returns:
        the currency of the period
      • collectIndices

        public void collectIndices​(ImmutableSet.Builder<Index> builder)
        Description copied from interface: BondPaymentPeriod
        Collects all the indices referred to by this period.

        A period will typically refer to at least one index, such as 'GBP-LIBOR-3M'. Each index that is referred to must be added to the specified builder.

        Specified by:
        collectIndices in interface BondPaymentPeriod
        Parameters:
        builder - the builder to use
      • getPayment

        public Payment getPayment()
        Gets the payment.

        This includes the payment date and amount. If the schedule adjusts for business days, then the date is the adjusted date.

        Returns:
        the value of the property, not null
      • getStartDate

        public LocalDate getStartDate()
        Gets the start date of the payment period.

        This is the first date in the period. If the schedule adjusts for business days, then this is the adjusted date.

        Specified by:
        getStartDate in interface BondPaymentPeriod
        Returns:
        the value of the property, not null
      • getEndDate

        public LocalDate getEndDate()
        Gets the end date of the payment period.

        This is the last date in the period. If the schedule adjusts for business days, then this is the adjusted date.

        Specified by:
        getEndDate in interface BondPaymentPeriod
        Returns:
        the value of the property, not null
      • getUnadjustedStartDate

        public LocalDate getUnadjustedStartDate()
        Gets the unadjusted start date.

        The start date before any business day adjustment is applied.

        When building, this will default to the start date if not specified.

        Returns:
        the value of the property, not null
      • getUnadjustedEndDate

        public LocalDate getUnadjustedEndDate()
        Gets the unadjusted end date.

        The end date before any business day adjustment is applied.

        When building, this will default to the end date if not specified.

        Returns:
        the value of the property, not null
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object