return component.isAnnotationPresent(ManagedBean.class);
}
@SuppressWarnings("unused")
private void processInjectionTarget(@Observes ProcessInjectionTarget event) {
final InjectionTarget it = event.getInjectionTarget();
final Class<?> componentClass = event.getAnnotatedType().getJavaClass();
final Set<InjectionPoint> injectionPoints = it.getInjectionPoints();
for (InjectionPoint injectionPoint : injectionPoints) {
final Member member = injectionPoint.getMember();
if (member instanceof Field) {
addInjecteeToSkip(componentClass, fieldsToSkip, (Field) member);
} else if (member instanceof Method) {
addInjecteeToSkip(componentClass, methodsToSkip, (Method) member);
}
}
if (isJaxRsComponentType(componentClass)) {
event.setInjectionTarget(new InjectionTarget() {
@Override
public void inject(Object t, CreationalContext cc) {
it.inject(t, cc);
if (locator != null) {
locator.inject(t, CDI_CLASS_ANALYZER);
}
}
@Override
public void postConstruct(Object t) {
it.postConstruct(t);
}
@Override
public void preDestroy(Object t) {
it.preDestroy(t);
}
@Override
public Object produce(CreationalContext cc) {
return it.produce(cc);
}
@Override
public void dispose(Object t) {
it.dispose(t);
}
@Override
public Set getInjectionPoints() {
return it.getInjectionPoints();
}
});
}
}