/** * Get a signature for a member * * @param member the member * @return the result */ public static Signature getSignature(Member member) { if (member == null) throw new IllegalArgumentException("Null member"); if (member instanceof Method) { Method method = Method.class.cast(member); return new MethodSignature(method); } if (member instanceof Field) { Field field = Field.class.cast(member); return new FieldSignature(field); } if (member instanceof Constructor) { Constructor<?> constructor = Constructor.class.cast(member); return new ConstructorSignature(constructor); } throw new IllegalArgumentException("Unknown member: " + member); }
/** * Get a signature for a member info * * @param member the member * @return the result */ public static Signature getSignature(MemberInfo member) { if (member == null) throw new IllegalArgumentException("Null member"); if (member instanceof MethodInfo) { MethodInfo method = MethodInfo.class.cast(member); return new MethodSignature(method); } if (member instanceof FieldInfo) { FieldInfo field = FieldInfo.class.cast(member); return new FieldSignature(field); } if (member instanceof ConstructorInfo) { ConstructorInfo constructor = ConstructorInfo.class.cast(member); return new ConstructorSignature(constructor); } throw new IllegalArgumentException("Unknown member: " + member); }
/** * Get a signature for a member * * @param member the member * @return the result */ public static Signature getSignature(Member member) { if (member == null) throw new IllegalArgumentException("Null member"); if (member instanceof Method) { Method method = Method.class.cast(member); return new MethodSignature(method); } if (member instanceof Field) { Field field = Field.class.cast(member); return new FieldSignature(field); } if (member instanceof Constructor) { Constructor<?> constructor = Constructor.class.cast(member); return new ConstructorSignature(constructor); } throw new IllegalArgumentException("Unknown member: " + member); }
/** * Get a signature for a member info * * @param member the member * @return the result */ public static Signature getSignature(MemberInfo member) { if (member == null) throw new IllegalArgumentException("Null member"); if (member instanceof MethodInfo) { MethodInfo method = MethodInfo.class.cast(member); return new MethodSignature(method); } if (member instanceof FieldInfo) { FieldInfo field = FieldInfo.class.cast(member); return new FieldSignature(field); } if (member instanceof ConstructorInfo) { ConstructorInfo constructor = ConstructorInfo.class.cast(member); return new ConstructorSignature(constructor); } throw new IllegalArgumentException("Unknown member: " + member); }
/** * Add annotations for a field * * @param repository the repository * @param classloader the classloader * @param component the mutable metadata * @param context the context * @param fieldInfo the field info * @param annotations the annotations * @param add true for add, false for remove */ private void updateAnnotations(MutableMetaDataRepository repository, ClassLoader classloader, ComponentMutableMetaData component, KernelControllerContext context, FieldInfo fieldInfo, Set<AnnotationMetaData> annotations, boolean add) { if (annotations == null || annotations.isEmpty()) return; Signature signature = new FieldSignature(fieldInfo); ScopeKey scope = new ScopeKey(CommonLevels.JOINPOINT_OVERRIDE, fieldInfo.getName()); updateAnnotations(repository, classloader, component, context, signature, scope, annotations, add); }
if (hasJoinPointAnnotation(m.getDeclaringClass(), new FieldSignature(m), annotation))
/** * Decorates the fields * * @return the fields */ private Set<AnnotatedField<? super X>> initialiseAnnotatedFields() { Set<AnnotatedField<? super X>> fields = new HashSet<AnnotatedField<? super X>>(); for (AnnotatedField<? super X> field : getDelegate().getFields()) { MetaData fieldMetaData = getMetaData() == null ? null : getMetaData().getComponentMetaData(new FieldSignature(field.getJavaMember())); fields.add(new MDRAnnotatedField<X>(this, field, fieldMetaData)); } return fields; }
return new FieldSignature(member.getName());
return new FieldSignature(member.getName());
public <T extends Annotation> T resolveTypedAnnotation(Field f, Class<T> annotation) { T value = null; if (metadata != null) { FieldSignature signature = new FieldSignature(f); MetaData fieldMD = metadata.getComponentMetaData(signature); if (fieldMD != null) { value = fieldMD.getAnnotation(annotation); if (value != null) return value; } } //MUST call this instead of AR.resolveTypedClassAnnotation since EJB3 overrides AR.resolveClassAnnotation value = (T)annotations.resolveAnnotation(f, annotation); if (value == null && metadata == null) { value = AnnotationElement.getVisibleAnnotation(f, annotation); } return value; }
if (field != null) Signature sis = new FieldSignature(field); MetaData cmdr = retrieval.getComponentMetaData(sis); if (cmdr != null)