public <T> T removeMetaData(MemberInfo member, String name, Class<T> type) { return removeMetaData(Signature.getSignature(member), name, type); } }
public boolean equals(Object obj) { if (obj == this) return true; if (obj == null || obj instanceof Signature == false) return false; Signature other = (Signature) obj; if (getName().equals(other.getName()) == false) return false; String[] thisParameters = getParameters(); String[] otherParameters = other.getParameters(); if (thisParameters.length != otherParameters.length) return false; for (int i = 0; i < thisParameters.length; ++i) { if (thisParameters[i].equals(otherParameters[i]) == false) return false; } return true; }
/** * Returns the parameters. * * @return the parameters. */ public String[] getParameters() { boolean initParameters = parameters == NO_PARAMETERS || parameters == null; if (initParameters) { if (parameterTypeInfos != null) parameters = convertParameters(parameterTypeInfos); else parameters = classesToStrings(getParameterTypes()); } return parameters; }
/** * Returns the parameter types. * * @param clazz the reference class * @return the parameter types. */ public Class<?>[] getParametersTypes(Class<?> clazz) { if (parameterTypes == null) { parameterTypes = getParameterTypes(); if (parameterTypes == null) parameterTypes = stringsToClasses(clazz, parameters); } return parameterTypes; }
result = clazz.getConstructor(signature.getParametersTypes(clazz)); result = clazz.getMethod(signature.getName(), signature.getParametersTypes(clazz)); result = ReflectionUtils.findField(clazz, signature.getName());
public boolean equals(Object obj) { if (obj == this) return true; if (obj == null || obj instanceof Signature == false) return false; Signature other = (Signature) obj; if (getName().equals(other.getName()) == false) return false; if (parameters.length != other.parameters.length) return false; for (int i = 0; i < parameters.length; ++i) { if (parameters[i].equals(other.parameters[i]) == false) return false; } return true; }
public String toString() { StringBuilder builder = new StringBuilder(); internalToString(builder); return builder.toString(); }
/** * Convert classes to string * * @param cl the classloader * @param parameters the parameters as strings * @return the parameters as classes */ private static Class<?>[] stringsToClasses(ClassLoader cl, String... parameters) { if (cl == null) throw new IllegalArgumentException("Null classloader"); if (parameters == null || parameters.length == 0) return NO_PARAMETER_TYPES; Class<?>[] result = new Class[parameters.length]; for (int i = 0; i < result.length; ++i) { try { result[i] = loadClass(cl, parameters[i]); } catch (ClassNotFoundException e) { throw new IllegalStateException("Class not found: " + parameters[i], e); } } return result; }
/** * Returns the parameter types. * * @param clazz the reference class * @return the parameter types. */ public Class<?>[] getParametersTypes(Class<?> clazz) { if (parameterTypes == null) return stringsToClasses(clazz, parameters); return parameterTypes; }
public int hashCode() { if (cachedHashCode == Integer.MIN_VALUE) cachedHashCode = toString().hashCode(); return cachedHashCode; }
@SuppressWarnings({"EqualsWhichDoesntCheckParameterClass"}) public boolean equals(Object obj) { if (super.equals(obj) == false) return false; DefaultElement<?, ?> de = DefaultElement.class.cast(obj); if (aoClass.equals(de.aoClass) == false) return false; if (signature.equals(de.signature) == false) return false; return true; } }
/** * Create a new Signature. * * @param name the name * @param parameterTypes the parameterTypes * @param parameters the parameters */ private Signature(String name, Class<?>[] parameterTypes, String[] parameters) { this.name = name; this.parameters = parameters; this.parameterTypes = parameterTypes; if (name == null) this.name = NO_NAME; if (parameters == null) this.parameters = classesToStrings(parameterTypes); for (int i = 0; i < this.parameters.length; ++i) { if (this.parameters[i] == null) throw new IllegalArgumentException("Null parameter"); } }
try Constructor<?> constructor = clazz.getConstructor(signature.getParametersTypes(clazz)); annotations = constructor.getParameterAnnotations()[cps.getParam()]; try Method method = clazz.getMethod(signature.getName(), signature.getParametersTypes(clazz)); annotations = method.getParameterAnnotations()[mps.getParam()];
public MetaDataRetrieval createComponentMetaDataRetrieval(JBossEnterpriseBeanMetaData metaData, Signature signature, ScopeKey key, ClassLoader classLoader) { if(signature instanceof ClassSignature) { ApplicationExceptionMetaData appExMetaData = findApplicationException(metaData, signature.getName()); if(appExMetaData != null) return new BridgedMetaDataLoader<ApplicationExceptionMetaData>(key, appExMetaData, classLoader, defaultBridges); } return null; }
protected void internalToString(StringBuilder builder) { super.internalToString(builder); builder.append("#").append(param); } }
/** * Convert classes to string * * @param cl the classloader * @param parameters the parameters as strings * @return the parameters as classes */ private static Class<?>[] stringsToClasses(ClassLoader cl, String... parameters) { if (cl == null) throw new IllegalArgumentException("Null classloader"); if (parameters == null || parameters.length == 0) return NO_PARAMETER_TYPES; Class<?>[] result = new Class[parameters.length]; for (int i = 0; i < result.length; ++i) { try { result[i] = loadClass(cl, parameters[i]); } catch (ClassNotFoundException e) { throw new IllegalStateException("Class not found: " + parameters[i], e); } } return result; }
/** * Convert classes to string * * @param clazz the reference class * @param parameters the parameters as strings * @return the parameters as classes */ private static Class<?>[] stringsToClasses(Class<?> clazz, String... parameters) { if (clazz == null) throw new IllegalArgumentException("Null clazz"); ClassLoader cl = clazz.getClassLoader(); if (cl == null) { cl = Class.class.getClassLoader(); if (cl == null) { //Bootstrap classloader was represented as null, use the tcl cl = Thread.currentThread().getContextClassLoader(); } } return stringsToClasses(cl, parameters); }
public int hashCode() { if (cachedHashCode == Integer.MIN_VALUE) cachedHashCode = toString().hashCode(); return cachedHashCode; }
@Override public boolean equals(Object obj) { if (obj == this) return true; if (obj == null || super.equals(obj) == false) return false; if (obj instanceof DeclaredMethodSignature) { DeclaredMethodSignature other = (DeclaredMethodSignature) obj; return getDeclaringClass().equals(other.getDeclaringClass()); } return true; }
private static Signature getSignature(Member member) { if(member instanceof Method) return new DeclaredMethodSignature((Method) member); return Signature.getSignature(member); }