private Map<Class<?>, Class<? extends StringParameterUnmarshaller>> getStringParameterUnmarshallers() { if (stringParameterUnmarshallers == null && parent != null) return parent.getStringParameterUnmarshallers(); return stringParameterUnmarshallers; }
public <T> StringParameterUnmarshaller<T> createStringParameterUnmarshaller(Class<T> clazz) { if (getStringParameterUnmarshallers().size() == 0) return null; Class<? extends StringParameterUnmarshaller> un = getStringParameterUnmarshallers().get(clazz); if (un == null) return null; StringParameterUnmarshaller<T> provider = injectedInstance(un); return provider; }
private void addStringParameterUnmarshaller(Class<? extends StringParameterUnmarshaller> provider) { if (stringParameterUnmarshallers == null) { stringParameterUnmarshallers = new ConcurrentHashMap<Class<?>, Class<? extends StringParameterUnmarshaller>>(); stringParameterUnmarshallers.putAll(parent.getStringParameterUnmarshallers()); } Type[] intfs = provider.getGenericInterfaces(); for (Type type : intfs) { if (type instanceof ParameterizedType) { ParameterizedType pt = (ParameterizedType) type; if (pt.getRawType().equals(StringParameterUnmarshaller.class)) { Class<?> aClass = Types.getRawType(pt.getActualTypeArguments()[0]); stringParameterUnmarshallers.put(aClass, provider); } } } }
asyncContextInjectors = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getAsyncContextInjectors()); sortedParamConverterProviders = Collections.synchronizedSortedSet(parent == null ? new TreeSet<>() : new TreeSet<>(parent.getSortedParamConverterProviders())); stringParameterUnmarshallers = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getStringParameterUnmarshallers()); reactiveClasses = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.reactiveClasses); headerDelegates = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getHeaderDelegates());
private Map<Class<?>, Class<? extends StringParameterUnmarshaller>> getStringParameterUnmarshallers() { if (stringParameterUnmarshallers == null && parent != null) return parent.getStringParameterUnmarshallers(); return stringParameterUnmarshallers; }
public <T> StringParameterUnmarshaller<T> createStringParameterUnmarshaller(Class<T> clazz) { if (getStringParameterUnmarshallers().size() == 0) return null; Class<? extends StringParameterUnmarshaller> un = getStringParameterUnmarshallers().get(clazz); if (un == null) return null; StringParameterUnmarshaller<T> provider = injectedInstance(un); return provider; }
private void addStringParameterUnmarshaller(Class<? extends StringParameterUnmarshaller> provider) { if (stringParameterUnmarshallers == null) { stringParameterUnmarshallers = new ConcurrentHashMap<Class<?>, Class<? extends StringParameterUnmarshaller>>(); stringParameterUnmarshallers.putAll(parent.getStringParameterUnmarshallers()); } Type[] intfs = provider.getGenericInterfaces(); for (Type type : intfs) { if (type instanceof ParameterizedType) { ParameterizedType pt = (ParameterizedType) type; if (pt.getRawType().equals(StringParameterUnmarshaller.class)) { Class<?> aClass = Types.getRawType(pt.getActualTypeArguments()[0]); stringParameterUnmarshallers.put(aClass, provider); } } } }
asyncContextInjectors = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getAsyncContextInjectors()); sortedParamConverterProviders = Collections.synchronizedSortedSet(parent == null ? new TreeSet<>() : new TreeSet<>(parent.getSortedParamConverterProviders())); stringParameterUnmarshallers = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getStringParameterUnmarshallers()); reactiveClasses = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.reactiveClasses); headerDelegates = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getHeaderDelegates());