Interface SwapPaymentPeriod

  • All Known Subinterfaces:
    NotionalPaymentPeriod
    All Known Implementing Classes:
    KnownAmountNotionalSwapPaymentPeriod, KnownAmountSwapPaymentPeriod, RatePaymentPeriod

    public interface SwapPaymentPeriod
    A period over which interest is accrued with a single payment.

    A single payment period within a swap leg. The amount of the payment is defined by implementations of this interface. It is typically based on a rate of interest.

    This interface imposes few restrictions on the payment periods. The period must have a payment date, currency and period dates.

    Implementations must be immutable and thread-safe beans.

    • Method Detail

      • getPaymentDate

        java.time.LocalDate getPaymentDate()
        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.

        Returns:
        the payment date of the period
      • getCurrency

        Currency getCurrency()
        Gets the currency of the payment resulting from the period.

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

        Returns:
        the currency of the period
      • getStartDate

        java.time.LocalDate getStartDate()
        Gets the start date of the period.

        This is the first accrual date in the period. This date has been adjusted to be a valid business day.

        Returns:
        the start date of the period
      • getEndDate

        java.time.LocalDate getEndDate()
        Gets the end date of the period.

        This is the last accrual date in the period. This date has been adjusted to be a valid business day.

        Returns:
        the end date of the period
      • collectIndices

        void collectIndices​(com.google.common.collect.ImmutableSet.Builder<Index> builder)
        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.

        Parameters:
        builder - the builder to use
      • adjustPaymentDate

        SwapPaymentPeriod adjustPaymentDate​(java.time.temporal.TemporalAdjuster adjuster)
        Adjusts the payment date using the rules of the specified adjuster.

        The adjuster is typically an instance of BusinessDayAdjustment. Implementations must return a new instance unless they are immutable and no change occurs.

        Parameters:
        adjuster - the adjuster to apply to the payment date
        Returns:
        the adjusted payment event