public <A extends Annotation> A retrieveAnnotation(Class<A> annotationClass, M metaData, ClassLoader classLoader, DeclaredMethodSignature method)
{
if(annotationClass == PostConstruct.class)
{
PostConstruct lifeCycleAnnotation = getLifeCycleAnnotation(metaData.getPostConstructs(), PostConstructImpl.class, method);
if(lifeCycleAnnotation != null)
return annotationClass.cast(lifeCycleAnnotation);
}
else if(annotationClass == PreDestroy.class)
{