package com.github.dynamicextensionsalfresco.osgi; import java.util.Collection; import java.util.Iterator; import org.springframework.context.ApplicationContext; import org.springframework.util.Assert; /** * Holds configuration values, such as {@link SystemPackage}s and {@link ServiceDefinition}s. * <p> * Using a separate class, instead of a generic {@link Collection}, works around issues when autowiring dependencies in * an {@link ApplicationContext} that contains other {@link Collection} top-level beans. * * @author Laurens Fridael * * @param <T> */ public class ConfigurationValues<T> implements Iterable<T> { private final Collection<T> values; public ConfigurationValues(final Collection<T> values) { Assert.notNull(values); this.values = values; } public Collection<T> getValues() { return values; } @Override public Iterator<T> iterator() { return values.iterator(); } }