java.lang.reflect.Member#getName ( )源码实例Demo

下面列出了java.lang.reflect.Member#getName ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: cxf   文件: ClassReader.java
protected static String getSignature(Member method, Class<?>[] paramTypes) {
    // compute the method descriptor

    StringBuilder b = new StringBuilder((method instanceof Method) ? method.getName() : "<init>");
    b.append('(');

    for (int i = 0; i < paramTypes.length; i++) {
        addDescriptor(b, paramTypes[i]);
    }

    b.append(')');
    if (method instanceof Method) {
        addDescriptor(b, ((Method)method).getReturnType());
    } else if (method instanceof Constructor) {
        addDescriptor(b, void.class);
    }

    return b.toString();
}
 
源代码2 项目: jdk8u60   文件: AbstractJavaLinker.java
/**
 * Given a reflective method or a constructor, creates a dynamic method that represents it. This method will
 * distinguish between caller sensitive and ordinary methods/constructors, and create appropriate caller sensitive
 * dynamic method when needed.
 * @param m the reflective member
 * @return the single dynamic method representing the reflective member
 */
private static SingleDynamicMethod createDynamicMethod(final AccessibleObject m) {
    if(CallerSensitiveDetector.isCallerSensitive(m)) {
        // Method has @CallerSensitive annotation
        return new CallerSensitiveDynamicMethod(m);
    }
    // Method has no @CallerSensitive annotation
    final MethodHandle mh;
    try {
        mh = unreflectSafely(m);
    } catch (final IllegalAccessError e) {
        // java.lang.invoke can in some case conservatively treat as caller sensitive methods that aren't
        // marked with the annotation. In this case, we'll fall back to treating it as caller sensitive.
        return new CallerSensitiveDynamicMethod(m);
    }
    // Proceed with non-caller sensitive
    final Member member = (Member)m;
    return new SimpleDynamicMethod(mh, member.getDeclaringClass(), member.getName(), m instanceof Constructor);
}
 
源代码3 项目: openjdk-jdk8u   文件: AbstractJavaLinker.java
/**
 * Given a reflective method or a constructor, creates a dynamic method that represents it. This method will
 * distinguish between caller sensitive and ordinary methods/constructors, and create appropriate caller sensitive
 * dynamic method when needed.
 * @param m the reflective member
 * @return the single dynamic method representing the reflective member
 */
private static SingleDynamicMethod createDynamicMethod(final AccessibleObject m) {
    if(CallerSensitiveDetector.isCallerSensitive(m)) {
        // Method has @CallerSensitive annotation
        return new CallerSensitiveDynamicMethod(m);
    }
    // Method has no @CallerSensitive annotation
    final MethodHandle mh;
    try {
        mh = unreflectSafely(m);
    } catch (final IllegalAccessError e) {
        // java.lang.invoke can in some case conservatively treat as caller sensitive methods that aren't
        // marked with the annotation. In this case, we'll fall back to treating it as caller sensitive.
        return new CallerSensitiveDynamicMethod(m);
    }
    // Proceed with non-caller sensitive
    final Member member = (Member)m;
    return new SimpleDynamicMethod(mh, member.getDeclaringClass(), member.getName(), m instanceof Constructor);
}
 
源代码4 项目: immutables   文件: JavaBeanNaming.java
private static String maybeNameFromGetterSetter(Member member) {
  if (!(member instanceof Method)) {
    return member.getName();
  }

  Method method = (Method) member;
  String name = member.getName();
  if (IS_SETTER.test(method)) {
    return DECAPITALIZE.apply(name.substring("set".length()));
  }

  if (IS_GETTER.test(method)) {
    for (String prefix: Arrays.asList("is", "get")) {
      if (name.startsWith(prefix) && name.length() > prefix.length()) {
        return DECAPITALIZE.apply(name.substring(prefix.length()));
      }
    }
  }

  return name;
}
 
public void checkConstraints( Object value, AccessibleObject accessor )
{
    List<ValueConstraintViolation> violations = checkConstraints( value );
    if( !violations.isEmpty() )
    {
        for( ValueConstraintViolation violation : violations )
        {
            if( accessor instanceof Member )
            {
                Member member = (Member) accessor;
                String methodName =  member.getName();
                violation.setMixinType( member.getDeclaringClass() );
                violation.setMethodName( methodName );
            }

        }
        throw new ConstraintViolationException( violations );
    }
}
 
源代码6 项目: openjdk-jdk9   文件: AbstractJavaLinker.java
/**
 * Given a reflective method or a constructor, creates a dynamic method that represents it. This method will
 * distinguish between caller sensitive and ordinary methods/constructors, and create appropriate caller sensitive
 * dynamic method when needed.
 * @param m the reflective member
 * @return the single dynamic method representing the reflective member
 */
private static SingleDynamicMethod createDynamicMethod(final AccessibleObject m) {
    if (m.isAnnotationPresent(CallerSensitive.class)) {
        // Method has @CallerSensitive annotation
        return new CallerSensitiveDynamicMethod(m);
    }
    // Method has no @CallerSensitive annotation
    final MethodHandle mh;
    try {
        mh = unreflectSafely(m);
    } catch (final IllegalAccessError e) {
        // java.lang.invoke can in some case conservatively treat as caller sensitive methods that aren't
        // marked with the annotation. In this case, we'll fall back to treating it as caller sensitive.
        return new CallerSensitiveDynamicMethod(m);
    }
    // Proceed with non-caller sensitive
    final Member member = (Member)m;
    return new SimpleDynamicMethod(mh, member.getDeclaringClass(), member.getName(), m instanceof Constructor);
}
 
源代码7 项目: hottub   文件: AbstractJavaLinker.java
/**
 * Given a reflective method or a constructor, creates a dynamic method that represents it. This method will
 * distinguish between caller sensitive and ordinary methods/constructors, and create appropriate caller sensitive
 * dynamic method when needed.
 * @param m the reflective member
 * @return the single dynamic method representing the reflective member
 */
private static SingleDynamicMethod createDynamicMethod(final AccessibleObject m) {
    if(CallerSensitiveDetector.isCallerSensitive(m)) {
        // Method has @CallerSensitive annotation
        return new CallerSensitiveDynamicMethod(m);
    }
    // Method has no @CallerSensitive annotation
    final MethodHandle mh;
    try {
        mh = unreflectSafely(m);
    } catch (final IllegalAccessError e) {
        // java.lang.invoke can in some case conservatively treat as caller sensitive methods that aren't
        // marked with the annotation. In this case, we'll fall back to treating it as caller sensitive.
        return new CallerSensitiveDynamicMethod(m);
    }
    // Proceed with non-caller sensitive
    final Member member = (Member)m;
    return new SimpleDynamicMethod(mh, member.getDeclaringClass(), member.getName(), m instanceof Constructor);
}
 
源代码8 项目: openjdk-8-source   文件: AbstractJavaLinker.java
/**
 * Given a reflective method or a constructor, creates a dynamic method that represents it. This method will
 * distinguish between caller sensitive and ordinary methods/constructors, and create appropriate caller sensitive
 * dynamic method when needed.
 * @param m the reflective member
 * @return the single dynamic method representing the reflective member
 */
private static SingleDynamicMethod createDynamicMethod(AccessibleObject m) {
    if(CallerSensitiveDetector.isCallerSensitive(m)) {
        return new CallerSensitiveDynamicMethod(m);
    }
    final Member member = (Member)m;
    return new SimpleDynamicMethod(unreflectSafely(m), member.getDeclaringClass(), member.getName());
}
 
源代码9 项目: crate   文件: MoreTypes.java
/**
 * Formats a member as concise string, such as {@code java.util.ArrayList.size},
 * {@code java.util.ArrayList<init>()} or {@code java.util.List.remove()}.
 */
public static String toString(Member member) {
    Class<? extends Member> memberType = memberType(member);

    if (memberType == Method.class) {
        return member.getDeclaringClass().getName() + "." + member.getName() + "()";
    } else if (memberType == Field.class) {
        return member.getDeclaringClass().getName() + "." + member.getName();
    } else if (memberType == Constructor.class) {
        return member.getDeclaringClass().getName() + ".<init>()";
    } else {
        throw new AssertionError();
    }
}
 
源代码10 项目: Elasticsearch   文件: StackTraceElements.java
public static Object forMember(Member member) {
    if (member == null) {
        return SourceProvider.UNKNOWN_SOURCE;
    }

    Class declaringClass = member.getDeclaringClass();

    String fileName = null;
    int lineNumber = -1;

    Class<? extends Member> memberType = MoreTypes.memberType(member);
    String memberName = memberType == Constructor.class ? "<init>" : member.getName();
    return new StackTraceElement(declaringClass.getName(), memberName, fileName, lineNumber);
}
 
源代码11 项目: crate   文件: MoreTypes.java
private MemberImpl(Member member) {
    this.declaringClass = member.getDeclaringClass();
    this.name = member.getName();
    this.modifiers = member.getModifiers();
    this.synthetic = member.isSynthetic();
    this.memberType = memberType(member);
    this.memberKey = memberKey(member);
}
 
源代码12 项目: openjdk-8   文件: AbstractJavaLinker.java
/**
 * Given a reflective method or a constructor, creates a dynamic method that represents it. This method will
 * distinguish between caller sensitive and ordinary methods/constructors, and create appropriate caller sensitive
 * dynamic method when needed.
 * @param m the reflective member
 * @return the single dynamic method representing the reflective member
 */
private static SingleDynamicMethod createDynamicMethod(AccessibleObject m) {
    if(CallerSensitiveDetector.isCallerSensitive(m)) {
        return new CallerSensitiveDynamicMethod(m);
    }
    final Member member = (Member)m;
    return new SimpleDynamicMethod(unreflectSafely(m), member.getDeclaringClass(), member.getName());
}
 
源代码13 项目: hollow   文件: MatchFieldPathArgumentExtractor.java
private static String getFieldPath(Member m, AnnotatedElement e) {
    FieldPath fpa = e.getDeclaredAnnotation(FieldPath.class);
    if (fpa == null) {
        return m.getName();
    }

    String fieldPath = e.getDeclaredAnnotation(FieldPath.class).value();
    if (fieldPath.isEmpty()) {
        return m.getName();
    }

    return fieldPath;
}
 
源代码14 项目: metrics-cdi   文件: MetricResolver.java
private String memberName(Member member) {
    if (member instanceof Constructor)
        return member.getDeclaringClass().getSimpleName();
    else
        return member.getName();
}
 
源代码15 项目: reflectutils   文件: ClassData.java
public int compare(Member o1, Member o2) {
    String c1 = getModifierPrefix(o1.getModifiers()) + o1.getName();
    String c2 = getModifierPrefix(o2.getModifiers()) + o2.getName();
    return c1.compareTo(c2);
}
 
源代码16 项目: lyra   文件: Reflection.java
/**
 * Returns a simplified String representation of the {@code member}.
 */
public static String toString(Member member) {
  if (member instanceof Method)
    return member.getDeclaringClass().getSimpleName() + "." + member.getName() + "()";
  return null;
}
 
源代码17 项目: ProjectAres   文件: Members.java
public static void error(Member member, String description) {
    throw new IllegalArgumentException(member.getDeclaringClass().getName() + "#" + member.getName() + " " + description);
}
 
源代码18 项目: lams   文件: AttributeFactory.java
public String determineMemberDescription(Member member) {
	return member.getDeclaringClass().getName() + '#' + member.getName();
}
 
源代码19 项目: graphql-spqr   文件: TypeMappingException.java
public static TypeMappingException ambiguousMemberType(Member fieldOrMethod, AnnotatedType declaringType, Exception cause) {
    return new TypeMappingException("The type of member \"" + fieldOrMethod.getName() + "\" belonging to " + declaringType.getType().getTypeName() +
            " is missing generic type parameters and can not be mapped." +
            " For details and possible solutions see " + Urls.Errors.AMBIGUOUS_MEMBER_TYPE, cause);
}
 
源代码20 项目: immutables   文件: RepositorySetup.java
@Override
public String translateName(Member member) {
  return member.getName();
}