@Deprecated public AnnotationRepository getAnnotationRepository() { return getAdvisor().getAnnotations(); }
@SuppressWarnings("unchecked") public static <C extends EJBContainer> C getEJBContainer(Advisor advisor) { try { return (C) ((ManagedObjectAdvisor<Object, BeanContainer>) advisor).getContainer().getEJBContainer(); } catch(ClassCastException e) { throw new ClassCastException(e.getMessage() + " using " + advisor); } }
@Override protected void initialize(Class<?> beanClass) { super.initialize(beanClass); }
@SuppressWarnings("unchecked") public <T extends Annotation> T getAnnotation(Class<T> annotationClass) { return (T) getAdvisor().resolveAnnotation(annotationClass); }
@Override protected void createMethodTables() throws Exception { super.createMethodTables(); List<Method> virtualMethods = getVirtualMethods(); if(virtualMethods != null) { for(Method virtualMethod : virtualMethods) { long hash = MethodHashing.methodHash(virtualMethod); advisedMethods.put(hash, virtualMethod); } } }
@SuppressWarnings("unchecked") public <T extends Annotation> T getAnnotation(Class<T> annotationType, Field field) { return (T) getAdvisor().resolveAnnotation(field, annotationType); }
public boolean isAnnotationPresent(Class<? extends Annotation> annotationType) { return getAdvisor().resolveAnnotation(annotationType) != null; }
@SuppressWarnings("unchecked") // public <T extends Annotation> T getAnnotation(Class<T> annotationType, Class<?> clazz) public <T extends Annotation> T getAnnotation(Class<?> clazz, Class<T> annotationType) { if(clazz == getBeanClass()) return (T) getAdvisor().resolveAnnotation(annotationType); // TODO: this is not right return clazz.getAnnotation(annotationType); }
@SuppressWarnings("unchecked") public <T extends Annotation> T getAnnotation(Class<T> annotationType, Class<?> clazz, Method method) { if (clazz == this.getBeanClass()) { return (T) getAdvisor().resolveAnnotation(method, annotationType); } // TODO: this is not right return method.getAnnotation(annotationType); }
@SuppressWarnings("unchecked") public <T extends Annotation> T getAnnotation(Class<T> annotationType, Class<?> clazz, Field field) { if (clazz == this.getBeanClass()) { return (T) getAdvisor().resolveAnnotation(field, annotationType); } return field.getAnnotation(annotationType); }
@SuppressWarnings("unchecked") public <T extends Annotation> T getAnnotation(Class<T> annotationType, Method method) { T annotation = (T) getAdvisor().resolveAnnotation(method, annotationType); if(annotation == null && method.isBridge()) annotation = getBridgedAnnotation(annotationType, method); return annotation; }