public static Annotated getResourceAnnotated(InjectionPoint injectionPoint) { if(injectionPoint instanceof ParameterInjectionPoint) { return ((ParameterInjectionPoint<?, ?>)injectionPoint).getAnnotated().getDeclaringCallable(); } return injectionPoint.getAnnotated(); }
/** * Get the underlying {@link Parameter}. * * @return the {@link Parameter} */ default Parameter getJavaParameter() { Member member = getDeclaringCallable().getJavaMember(); if (!(member instanceof Executable)) { throw new IllegalStateException("Parameter does not belong to an executable: " + member); } Executable executable = (Executable) member; return executable.getParameters()[getPosition()]; }
@Override public Object resolveResource(InjectionPoint injectionPoint) { final Member member = injectionPoint.getMember(); AnnotatedMember<?> annotatedMember; if (injectionPoint.getAnnotated() instanceof AnnotatedField) { annotatedMember = (AnnotatedField<?>) injectionPoint.getAnnotated(); } else { annotatedMember = ((AnnotatedParameter<?>) injectionPoint.getAnnotated()).getDeclaringCallable(); } if (!annotatedMember.isAnnotationPresent(Resource.class)) { throw WeldLogger.ROOT_LOGGER.annotationNotFound(Resource.class, member); } if (member instanceof Method && ((Method) member).getParameterTypes().length != 1) { throw WeldLogger.ROOT_LOGGER.injectionPointNotAJavabean((Method) member); } String name = getResourceName(injectionPoint); for (ResourceInjectionResolver resolver : resourceResolvers) { Object result = resolver.resolve(name); if (result != null) { return result; } } try { return context.lookup(name); } catch (NamingException e) { throw WeldLogger.ROOT_LOGGER.couldNotFindResource(name, injectionPoint.getMember().toString(), e); } }
@Override public AnnotatedCallable<X> getDeclaringCallable() { return delegate().getDeclaringCallable(); } }
protected Resource getResourceAnnotation(InjectionPoint injectionPoint) { Annotated annotated = injectionPoint.getAnnotated(); if (annotated instanceof AnnotatedParameter<?>) { annotated = ((AnnotatedParameter<?>) annotated).getDeclaringCallable(); } return annotated.getAnnotation(Resource.class); }
default Parameter getJavaParameter() { Member javaMember = getDeclaringCallable().getJavaMember(); if (!Executable.class.isInstance(javaMember)) { throw new IllegalStateException("Parameter does not belong to a Constructor or Method: " + javaMember); } return ((Executable) javaMember).getParameters()[getPosition()]; }
/** * Compares two annotated parameters and returns true if they are equal */ public static boolean compareAnnotatedParameters(AnnotatedParameter<?> p1, AnnotatedParameter<?> p2) { return compareAnnotatedCallable(p1.getDeclaringCallable(), p2.getDeclaringCallable()) && p1.getPosition() == p2.getPosition() && compareAnnotated(p1, p2); }
protected Resource getResourceAnnotation(InjectionPoint injectionPoint) { Annotated annotated = injectionPoint.getAnnotated(); if (annotated instanceof AnnotatedParameter<?>) { annotated = ((AnnotatedParameter<?>) annotated).getDeclaringCallable(); } return annotated.getAnnotation(Resource.class); }
/** * * @param injectionPoint * @param factory */ SetterResourceInjection(ParameterInjectionPoint<T, X> injectionPoint, ResourceReferenceFactory<T> factory) { super(factory); AnnotatedMethod<X> annotatedMethod = (AnnotatedMethod<X>) injectionPoint.getAnnotated().getDeclaringCallable(); accessibleMethod = AccessController.doPrivileged(new GetAccessibleCopyOfMember<Method>(annotatedMethod.getJavaMember())); }
/** * * @param injectionPoint * @param factory */ SetterResourceInjection(ParameterInjectionPoint<T, X> injectionPoint, ResourceReferenceFactory<T> factory) { super(factory); AnnotatedMethod<X> annotatedMethod = (AnnotatedMethod<X>) injectionPoint.getAnnotated().getDeclaringCallable(); accessibleMethod = AccessController.doPrivileged(new GetAccessibleCopyOfMember<Method>(annotatedMethod.getJavaMember())); }
public <X> EnhancedAnnotatedParameter<?, X> loadEnhancedParameter(AnnotatedParameter<X> parameter, String bdaId) { if (parameter instanceof EnhancedAnnotatedParameter<?, ?>) { return Reflections.cast(parameter); } EnhancedAnnotatedCallable<?, X, Member> callable = loadEnhancedMember(parameter.getDeclaringCallable(), bdaId); return callable.getEnhancedParameters().get(parameter.getPosition()); }
public <X> EnhancedAnnotatedParameter<?, X> loadEnhancedParameter(AnnotatedParameter<X> parameter, String bdaId) { if (parameter instanceof EnhancedAnnotatedParameter<?, ?>) { return Reflections.cast(parameter); } EnhancedAnnotatedCallable<?, X, Member> callable = loadEnhancedMember(parameter.getDeclaringCallable(), bdaId); return callable.getEnhancedParameters().get(parameter.getPosition()); }
public <X> EnhancedAnnotatedParameter<?, X> loadEnhancedParameter(AnnotatedParameter<X> parameter, String bdaId) { if (parameter instanceof EnhancedAnnotatedParameter<?, ?>) { return Reflections.cast(parameter); } EnhancedAnnotatedCallable<?, X, Member> callable = loadEnhancedMember(parameter.getDeclaringCallable(), bdaId); return callable.getEnhancedParameters().get(parameter.getPosition()); }
public <X> EnhancedAnnotatedParameter<?, X> loadEnhancedParameter(AnnotatedParameter<X> parameter, String bdaId) { if (parameter instanceof EnhancedAnnotatedParameter<?, ?>) { return Reflections.cast(parameter); } EnhancedAnnotatedCallable<?, X, Member> callable = loadEnhancedMember(parameter.getDeclaringCallable(), bdaId); return callable.getEnhancedParameters().get(parameter.getPosition()); }
public <X> EnhancedAnnotatedParameter<?, X> loadEnhancedParameter(AnnotatedParameter<X> parameter, String bdaId) { if (parameter instanceof EnhancedAnnotatedParameter<?, ?>) { return Reflections.cast(parameter); } EnhancedAnnotatedCallable<?, X, Member> callable = loadEnhancedMember(parameter.getDeclaringCallable(), bdaId); return callable.getEnhancedParameters().get(parameter.getPosition()); }
public static void validateAnnotatedParameter(AnnotatedParameter<?> parameter) { validateAnnotated(parameter); if (parameter.getPosition() < 0) { throw MetadataLogger.LOG.invalidParameterPosition(parameter.getPosition(), parameter); } checkNotNull(parameter.getDeclaringCallable(), "getDeclaringCallable()", parameter); }
@Override public ParameterInjectionPointAttributes<?, ?> createInjectionPoint(AnnotatedParameter<?> parameter) { AnnotatedTypeValidator.validateAnnotatedParameter(parameter); EnhancedAnnotatedParameter<?, ?> enhancedParameter = services.get(MemberTransformer.class).loadEnhancedParameter(parameter, getId()); return validateInjectionPoint(InferringParameterInjectionPointAttributes.of(enhancedParameter, null, parameter.getDeclaringCallable().getDeclaringType().getJavaClass(), this)); }
public static void validateAnnotatedParameter(AnnotatedParameter<?> parameter) { validateAnnotated(parameter); if (parameter.getPosition() < 0) { throw MetadataLogger.LOG.invalidParameterPosition(parameter.getPosition(), parameter); } checkNotNull(parameter.getDeclaringCallable(), "getDeclaringCallable()", parameter); }
@Override public ParameterInjectionPointAttributes<?, ?> createInjectionPoint(AnnotatedParameter<?> parameter) { AnnotatedTypeValidator.validateAnnotatedParameter(parameter); EnhancedAnnotatedParameter<?, ?> enhancedParameter = services.get(MemberTransformer.class).loadEnhancedParameter(parameter, getId()); return validateInjectionPoint(InferringParameterInjectionPointAttributes.of(enhancedParameter, null, parameter.getDeclaringCallable().getDeclaringType().getJavaClass(), this)); }
@Override public ParameterInjectionPointAttributes<?, ?> createInjectionPoint(AnnotatedParameter<?> parameter) { AnnotatedTypeValidator.validateAnnotatedParameter(parameter); EnhancedAnnotatedParameter<?, ?> enhancedParameter = services.get(MemberTransformer.class).loadEnhancedParameter(parameter, getId()); return validateInjectionPoint(InferringParameterInjectionPointAttributes.of(enhancedParameter, null, parameter.getDeclaringCallable().getDeclaringType().getJavaClass(), this)); }