/** * Copyright (C) 2009 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.master.exchange.impl; import com.opengamma.master.AbstractDataTrackingMaster; import com.opengamma.master.exchange.ExchangeDocument; import com.opengamma.master.exchange.ExchangeHistoryRequest; import com.opengamma.master.exchange.ExchangeHistoryResult; import com.opengamma.master.exchange.ExchangeMaster; import com.opengamma.master.exchange.ExchangeSearchRequest; import com.opengamma.master.exchange.ExchangeSearchResult; /** * Exchange master which tracks accesses using UniqueIds. */ public class DataTrackingExchangeMaster extends AbstractDataTrackingMaster<ExchangeDocument, ExchangeMaster> implements ExchangeMaster { public DataTrackingExchangeMaster(ExchangeMaster delegate) { super(delegate); } @Override public ExchangeSearchResult search(ExchangeSearchRequest request) { ExchangeSearchResult searchResult = delegate().search(request); trackDocs(searchResult.getDocuments()); return searchResult; } @Override public ExchangeHistoryResult history(ExchangeHistoryRequest request) { ExchangeHistoryResult historyResult = delegate().history(request); trackDocs(historyResult.getDocuments()); return historyResult; } }