final MarketDataProviderResolver resolver) {
super(user, specs, resolver);
final MarketDataListener listener = new Listener();
if (getSpecifications().size() == 1) {
final MarketDataProvider provider = getProviders().get(0);
provider.addListener(listener);
_availabilityProvider = provider.getAvailabilityProvider(getSpecifications().get(0));
} else {
int index = 0;
for (MarketDataProvider provider : getProviders()) {
provider.addListener(new CompositeListener(index++, listener));