package se.unlogic.standardutils.populators;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
public class QueryParameterPopulatorRegistery {
private final static HashMap<Class<?>, QueryParameterPopulator<?>> QUERY_PARAMETER_POPULATORS = new HashMap<Class<?>, QueryParameterPopulator<?>>();
static{
addTypePopulator(new UUIDPopulator());
}
private static void addTypePopulator(QueryParameterPopulator<?> queryParameterPopulator){
QUERY_PARAMETER_POPULATORS.put(queryParameterPopulator.getType(), queryParameterPopulator);
}
@SuppressWarnings("unchecked")
public static <T> BeanStringPopulator<T> getQueryParameterPopulator(Class<T> clazz){
return (BeanStringPopulator<T>) QUERY_PARAMETER_POPULATORS.get(clazz);
}
public static Collection<QueryParameterPopulator<?>> getQueryParameterPopulators(){
return Collections.unmodifiableCollection(QUERY_PARAMETER_POPULATORS.values());
}
}