/** * Copyright (C) 2013 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.financial.analytics; import org.threeten.bp.LocalDate; import com.opengamma.financial.convention.calendar.ExceptionCalendar; /** * Calendar with the dates of the ECB meeting decisions (settlement dates for the change of rate). */ public class CalendarECBSettlements extends ExceptionCalendar { /** * Defaults serial ID. */ private static final long serialVersionUID = 1L; /** * The list of settlement dates (for 2013-2014). */ private static final LocalDate SETTLE[] = new LocalDate[] {LocalDate.of(2013, 5, 8), LocalDate.of(2013, 10, 9), LocalDate.of(2013, 11, 13), LocalDate.of(2013, 12, 11), LocalDate.of(2014, 1, 15), LocalDate.of(2014, 2, 12), LocalDate.of(2014, 3, 12), LocalDate.of(2014, 4, 9), LocalDate.of(2014, 5, 14), LocalDate.of(2014, 6, 11), LocalDate.of(2014, 7, 9), LocalDate.of(2014, 8, 13), LocalDate.of(2014, 9, 10), LocalDate.of(2014, 10, 8), LocalDate.of(2014, 11, 12), LocalDate.of(2014, 12, 10), LocalDate.of(2015, 1, 14), LocalDate.of(2015, 2, 11), LocalDate.of(2015, 3, 11), LocalDate.of(2015, 4, 8), LocalDate.of(2015, 5, 13), LocalDate.of(2015, 6, 9), LocalDate.of(2015, 7, 8), LocalDate.of(2015, 8, 12), LocalDate.of(2015, 9, 9), LocalDate.of(2015, 10, 14), LocalDate.of(2015 , 11, 11), LocalDate.of(2015, 12, 9) }; private static final String NAME = "ECB decision settlement dates"; /** * Constructor of the calendar * @param name */ public CalendarECBSettlements() { super(NAME); for (int loopy = 0; loopy < SETTLE.length; loopy++) { addNonWorkingDay(SETTLE[loopy]); } } @Override protected boolean isNormallyWorkingDay(LocalDate date) { return true; } }