package xapi.collect.impl; import java.util.Comparator; import java.util.Map.Entry; import javax.inject.Provider; import xapi.collect.api.ClassTo; import xapi.collect.api.IntTo; import xapi.collect.proxy.CollectionProxy; public abstract class ClassToDelegate <V> extends ObjectToAbstract<Class<?>,V> implements ClassTo<V> { public static abstract class ManyAbstract <V> extends ClassToDelegate<IntTo<V>> implements ClassTo.Many<V>{ @SuppressWarnings("unchecked") public ManyAbstract( Class<V> valueType, CollectionProxy<Class<?>,IntTo<V>> store, Provider<Iterable<Entry<Class<?>,IntTo<V>>>> iteratorProvider, Comparator<Class<?>> keyComparator, Comparator<IntTo<V>> valueComparator) { super(Class.class.cast(IntTo.class), store, iteratorProvider, keyComparator, valueComparator); } } @SuppressWarnings("unchecked") public ClassToDelegate( Class<V> valueType, CollectionProxy<Class<?>,V> store, Provider<Iterable<Entry<Class<?>,V>>> iteratorProvider, Comparator<Class<?>> keyComparator, Comparator<V> valueComparator) { super(Class.class.cast(Class.class), valueType, store, iteratorProvider, keyComparator, valueComparator); } }