private void addOnEventMethodForType(final Class<?> type, final Method method) { Set<Method> methods = onEventMethodsByParameterType.get(type); if (methods == null) { methods = new HashSet<Method>(); onEventMethodsByParameterType.put(type, methods); } methods.add(method); }
private Field[] putInCache(Class<?> pClass) { Field[] fields = collectAnnotatedFieldsForHierarchy(pClass); cache.put(pClass, fields); return fields; }
@Override public void onInstantiation(final Component component) { Class<?> componentClass = component.getClass(); if (eventSinkByClass.get(componentClass) == null) { if (containsOnEventMethod(componentClass)) { eventSinkByClass.put(componentClass, new AnnotationEventSink(componentClass)); } else { eventSinkByClass.put(componentClass, EMPTY_SINK); } } }
static Set<Class<?>> getCompatibleTypes(final Class<?> clazz) { Set<Class<?>> types = allTypesByType.get(clazz); if (types == null) { types = getAllTypes(clazz); allTypesByType.put(clazz, types); } return types; }
private Set<Method> getOnEventMethods(final Class<?> payloadType) { Set<Method> onEventMethods = onEventMethodsByPayloadType.get(payloadType); if (onEventMethods == null) { onEventMethods = new HashSet<Method>(); for (Class<?> type : CompatibleTypesCache.getCompatibleTypes(payloadType)) { Set<Method> methods = onEventMethodsByParameterType.get(type); if (methods != null) { onEventMethods.addAll(methods); } } onEventMethodsByPayloadType.put(payloadType, onEventMethods); } return onEventMethods; }
cache.put(clazz, fields);
/** * Determines which {@link Scheme} should be used to access the page * * @param pageClass * type of page * @return {@link Scheme} */ protected Scheme getDesiredSchemeFor(Class<? extends IRequestablePage> pageClass) { if (pageClass == null) { return Scheme.ANY; } Scheme SCHEME = cache.get(pageClass); if (SCHEME == null) { if (hasSecureAnnotation(pageClass)) { SCHEME = Scheme.HTTPS; } else { SCHEME = Scheme.HTTP; } cache.put(pageClass, SCHEME); } return SCHEME; }
/** * Determines which {@link Scheme} should be used to access the page * * @param pageClass * type of page * @return {@link Scheme} */ protected Scheme getDesiredSchemeFor(Class<? extends IRequestablePage> pageClass) { if (pageClass == null) { return Scheme.ANY; } Scheme SCHEME = cache.get(pageClass); if (SCHEME == null) { if (hasSecureAnnotation(pageClass)) { SCHEME = Scheme.HTTPS; } else { SCHEME = Scheme.HTTP; } cache.put(pageClass, SCHEME); } return SCHEME; }
/** * Factory method for creating noncontextual instances * * @param <T> Bean type. * @param clazz Bean class. * @return {@link NonContextual} instance. */ public static <T> NonContextual<T> of(Class<? extends T> clazz) { ClassMetaCache<NonContextual<?>> meta = getCache(); @SuppressWarnings("unchecked") NonContextual<T> nc = (NonContextual<T>) meta.get(clazz); if (nc == null) { nc = new NonContextual<>(clazz); meta.put(clazz, nc); } return nc; }
/** * Factory method for creating non-contextual instances * * @param <T> * @param clazz * @return The NonContextual for the given class */ public static <T> NonContextual<T> of(Class<? extends T> clazz) { ClassMetaCache<NonContextual<?>> meta = getCache(); @SuppressWarnings("unchecked") NonContextual<T> nc = (NonContextual<T>)meta.get(clazz); if (nc == null) { nc = new NonContextual<T>(clazz); meta.put(clazz, nc); } return nc; }
/** * Factory method for creating non-contextual instances * * @param <T> * @param clazz * @return The NonContextual for the given class */ public static <T> NonContextual<T> of(Class<? extends T> clazz) { ClassMetaCache<NonContextual<?>> meta = getCache(); @SuppressWarnings("unchecked") NonContextual<T> nc = (NonContextual<T>)meta.get(clazz); if (nc == null) { nc = new NonContextual<T>(clazz); meta.put(clazz, nc); } return nc; }
/** * Factory method for creating noncontextual instances * * @param <T> * @param clazz * @param manager * @return */ public static <T> NonContextual<T> of(Class<? extends T> clazz, BeanManager manager) { ClassMetaCache<NonContextual<?>> meta = getCache(manager); @SuppressWarnings("unchecked") NonContextual<T> nc = (NonContextual<T>)meta.get(clazz); if (nc == null) { nc = new NonContextual<T>(manager, clazz); meta.put(clazz, nc); } return nc; }