/** * Copyright (C) 2016 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.strata.basics; import java.util.HashMap; import java.util.Map; import com.google.common.collect.ImmutableMap; import com.opengamma.strata.basics.date.HolidayCalendar; import com.opengamma.strata.basics.date.HolidayCalendars; /** * Provides standard reference data for holiday calendars in common currencies. */ final class StandardReferenceData { /** * Standard reference data. */ static final ImmutableReferenceData STANDARD; static { Map<ReferenceDataId<?>, Object> map = new HashMap<>(); for (HolidayCalendar cal : HolidayCalendars.extendedEnum().lookupAllNormalized().values()) { map.put(cal.getId(), cal); } STANDARD = ImmutableReferenceData.of(map); } /** * Minimal reference data. */ static final ImmutableReferenceData MINIMAL; static { ImmutableMap.Builder<ReferenceDataId<?>, Object> builder = ImmutableMap.builder(); builder.put(HolidayCalendars.NO_HOLIDAYS.getId(), HolidayCalendars.NO_HOLIDAYS); builder.put(HolidayCalendars.SAT_SUN.getId(), HolidayCalendars.SAT_SUN); builder.put(HolidayCalendars.FRI_SAT.getId(), HolidayCalendars.FRI_SAT); builder.put(HolidayCalendars.THU_FRI.getId(), HolidayCalendars.THU_FRI); MINIMAL = ImmutableReferenceData.of(builder.build()); } // restricted constructor private StandardReferenceData() { } }