@Override public ImmutableIborIndex build() { return new ImmutableIborIndex( name, currency, active, fixingCalendar, fixingTime, fixingZone, fixingDateOffset, effectiveDateOffset, maturityDateOffset, dayCount, defaultFixedLegDayCount); }
@Override public LocalDate calculateFixingFromEffective(LocalDate effectiveDate, ReferenceData refData) { LocalDate effectiveBusinessDay = effectiveDateCalendar(refData).nextOrSame(effectiveDate); return fixingDateOffset.adjust(effectiveBusinessDay, refData); }
/** * Restricted copy constructor. * @param beanToCopy the bean to copy from, not null */ private Builder(ImmutableIborIndex beanToCopy) { this.name = beanToCopy.getName(); this.currency = beanToCopy.getCurrency(); this.active = beanToCopy.isActive(); this.fixingCalendar = beanToCopy.getFixingCalendar(); this.fixingTime = beanToCopy.getFixingTime(); this.fixingZone = beanToCopy.getFixingZone(); this.fixingDateOffset = beanToCopy.getFixingDateOffset(); this.effectiveDateOffset = beanToCopy.getEffectiveDateOffset(); this.maturityDateOffset = beanToCopy.getMaturityDateOffset(); this.dayCount = beanToCopy.getDayCount(); this.defaultFixedLegDayCount = beanToCopy.getDefaultFixedLegDayCount(); }
public void test_equals() { ImmutableIborIndex a = ImmutableIborIndex.builder() .name("Test-3M") .currency(Currency.GBP) .fixingCalendar(GBLO) .fixingDateOffset(DaysAdjustment.ofBusinessDays(-2, GBLO)) .effectiveDateOffset(DaysAdjustment.ofBusinessDays(2, GBLO)) .maturityDateOffset(TenorAdjustment.ofLastBusinessDay(TENOR_3M, BusinessDayAdjustment.NONE)) .dayCount(ACT_360) .fixingTime(LocalTime.NOON) .fixingZone(ZoneId.of("Europe/London")) .build(); IborIndex b = a.toBuilder().name("Rubbish-3M").build(); assertEquals(a.equals(b), false); }
public void test_builder_AUD() { ImmutableIborIndex dummyIndex = ImmutableIborIndex.builder() .name("AUD-INDEX-3M") .currency(AUD)
private static IborIndex lockIndexCalendar(IborIndex index) { return ((ImmutableIborIndex) index).toBuilder() .fixingCalendar(CalendarUSD.NYC) .effectiveDateOffset(index.getEffectiveDateOffset().toBuilder() .calendar(CalendarUSD.NYC) .adjustment(index.getEffectiveDateOffset().getAdjustment().toBuilder() .calendar(CalendarUSD.NYC) .build()) .build()) .maturityDateOffset(index.getMaturityDateOffset().toBuilder() .adjustment(index.getMaturityDateOffset().getAdjustment().toBuilder() .calendar(CalendarUSD.NYC) .build()) .build()) .build(); }
@Override public Function<LocalDate, IborIndexObservation> resolve(ReferenceData refData) { HolidayCalendar fixingCal = fixingCalendar.resolve(refData); DateAdjuster effectiveAdjuster = effectiveDateOffset.resolve(refData); DateAdjuster maturityAdjuster = maturityDateOffset.resolve(refData); return fixingDate -> create(fixingDate, fixingCal, effectiveAdjuster, maturityAdjuster); }
public void test_builder_NZD() { ImmutableIborIndex dummyIndex = ImmutableIborIndex.builder() .name("NZD-INDEX-3M") .currency(NZD)
@Override protected Object propertyGet(Bean bean, String propertyName, boolean quiet) { switch (propertyName.hashCode()) { case 3373707: // name return ((ImmutableIborIndex) bean).getName(); case 575402001: // currency return ((ImmutableIborIndex) bean).getCurrency(); case -1422950650: // active return ((ImmutableIborIndex) bean).isActive(); case 394230283: // fixingCalendar return ((ImmutableIborIndex) bean).getFixingCalendar(); case 1255686170: // fixingTime return ((ImmutableIborIndex) bean).getFixingTime(); case 1255870713: // fixingZone return ((ImmutableIborIndex) bean).getFixingZone(); case 873743726: // fixingDateOffset return ((ImmutableIborIndex) bean).getFixingDateOffset(); case 1571923688: // effectiveDateOffset return ((ImmutableIborIndex) bean).getEffectiveDateOffset(); case 1574797394: // maturityDateOffset return ((ImmutableIborIndex) bean).getMaturityDateOffset(); case 1905311443: // dayCount return ((ImmutableIborIndex) bean).getDayCount(); case -2037801138: // defaultFixedLegDayCount return ((ImmutableIborIndex) bean).getDefaultFixedLegDayCount(); } return super.propertyGet(bean, propertyName, quiet); }
return ImmutableIborIndex.builder() .name(name) .currency(currency)
@Override public LocalDate calculateMaturityFromEffective(LocalDate effectiveDate, ReferenceData refData) { LocalDate effectiveBusinessDay = effectiveDateCalendar(refData).nextOrSame(effectiveDate); return maturityDateOffset.adjust(effectiveBusinessDay, refData); }
private Object readResolve() { return new ImmutableIborIndex( name, currency, active, fixingCalendar, fixingTime, fixingZone, fixingDateOffset, effectiveDateOffset, maturityDateOffset, dayCount, defaultFixedLegDayCount); }
public void test_serialization() { IborIndex index = ImmutableIborIndex.builder() .name("Test-3M") .currency(Currency.GBP) .fixingCalendar(GBLO) .fixingDateOffset(DaysAdjustment.ofBusinessDays(-2, GBLO)) .effectiveDateOffset(DaysAdjustment.ofBusinessDays(2, GBLO)) .maturityDateOffset(TenorAdjustment.ofLastBusinessDay(TENOR_3M, BusinessDayAdjustment.NONE)) .dayCount(ACT_360) .fixingTime(LocalTime.NOON) .fixingZone(ZoneId.of("Europe/London")) .build(); assertSerialization(index); }
public void coverage() { ImmutableIborIndex index = ImmutableIborIndex.builder() .name("Test-3M") .currency(Currency.GBP) .fixingCalendar(GBLO) .fixingDateOffset(DaysAdjustment.ofBusinessDays(-2, GBLO)) .effectiveDateOffset(DaysAdjustment.ofBusinessDays(2, GBLO)) .maturityDateOffset(TenorAdjustment.ofLastBusinessDay(TENOR_3M, BusinessDayAdjustment.NONE)) .dayCount(ACT_360) .fixingTime(LocalTime.NOON) .fixingZone(ZoneId.of("Europe/London")) .build(); coverImmutableBean(index); coverPrivateConstructor(IborIndices.class); }