/** * Copyright (C) 2013 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.sesame.cache; import java.util.Collection; import org.threeten.bp.ZonedDateTime; import com.opengamma.id.ExternalId; import com.opengamma.id.ExternalIdBundle; import com.opengamma.id.ObjectId; import com.opengamma.id.VersionCorrection; import com.opengamma.sesame.marketdata.MarketDataId; /** * TODO review which of the register methods are still needed with MarketDataBundle */ public interface CacheInvalidator { void register(ExternalId id); void register(ExternalIdBundle bundle); void register(ObjectId id); // TODO can this work in the general case? where people add their own implementations? // could it be made to work if MarketDataKey had more methods? void register(MarketDataId marketDataId); void register(ValuationTimeCacheEntry entry); void invalidate(ZonedDateTime valuationTime, VersionCorrection configVersionCorrection, Collection<ExternalId> marketData, Collection<ObjectId> dbData); }