List of usage examples for org.apache.commons.lang3 ClassUtils getAllSuperclasses
public static List<Class<?>> getAllSuperclasses(final Class<?> cls)
Gets a List of superclasses for the given class.
From source file:org.apache.syncope.core.persistence.jpa.entity.JPAAnyUtils.java
private static void initFieldNames(final Class<?> entityClass, final Set<String> keys) { List<Class<?>> classes = ClassUtils.getAllSuperclasses(entityClass); classes.add(entityClass);/*from w w w . j a v a2 s . c o m*/ for (Class<?> clazz : classes) { for (Field field : clazz.getDeclaredFields()) { if (!Modifier.isStatic(field.getModifiers()) && !field.getName().startsWith("pc") && !Collection.class.isAssignableFrom(field.getType()) && !Map.class.isAssignableFrom(field.getType())) { keys.add("id".equals(field.getName()) ? "key" : field.getName()); } } } }
From source file:org.apache.syncope.core.persistence.jpa.validation.entity.SchemaNameValidator.java
private static void initUnallowedSchemaNames(final Class<?> entityClass, final Set<String> names) { List<Class<?>> classes = ClassUtils.getAllSuperclasses(entityClass); if (!classes.contains(JPAUser.class)) { classes.add(JPAUser.class); }//from w w w. j a va2 s. c o m for (Class<?> clazz : classes) { for (Field field : clazz.getDeclaredFields()) { if (!Collection.class.isAssignableFrom(field.getType()) && !Map.class.isAssignableFrom(field.getType())) { names.add(field.getName()); } } } }
From source file:org.apache.syncope.core.persistence.validation.entity.SchemaNameValidator.java
private static void initUnallowedSchemaNames(final Class<?> entityClass, final List<String> names) { List<Class<?>> classes = ClassUtils.getAllSuperclasses(entityClass); classes.add(SyncopeUser.class); for (Class<?> clazz : classes) { for (Field field : clazz.getDeclaredFields()) { if (!Collection.class.isAssignableFrom(field.getType()) && !Map.class.isAssignableFrom(field.getType())) { names.add(field.getName()); }//from w ww. jav a 2 s. co m } } }
From source file:org.bonitasoft.engine.business.data.impl.jackson.EntityBeanSerializerModifier.java
private static boolean shouldBeIgnored(BeanDescription beanDescription) { JavaType type = beanDescription.getType(); Class<?> rawClass = type.getRawClass(); if (LOG.isTraceEnabled()) { LOG.trace("Checking if it has to be ignored - {} / {}", type, rawClass); LOG.trace("Interfaces: {}", getNames(ClassUtils.getAllInterfaces(rawClass))); LOG.trace("Superclasses: {}", getNames(ClassUtils.getAllSuperclasses(rawClass))); }// ww w .j a v a2 s . com if (MethodHandler.class.isAssignableFrom(rawClass) || Proxy.class.isAssignableFrom(rawClass)) { return true; } return false; }
From source file:org.craftercms.commons.jackson.mvc.GDataPropertyFilter.java
protected String getMostSuperClassName(Class<?> clazz) { if (!superClassCache.containsKey(clazz.getName())) { List<Class<?>> superClasses = ClassUtils.getAllSuperclasses(clazz); // WE don't count object String className;// w w w . j av a2 s.com if (superClasses.size() == 1) { className = clazz.getSimpleName(); } else { className = superClasses.get(0).getSimpleName(); } superClassCache.put(clazz.getName(), className); } return superClassCache.get(clazz.getName()); }
From source file:org.evosuite.utils.generic.GenericClass.java
/** * <p>/* w ww . ja v a 2s . co m*/ * isSubclass * </p> * * @param superclass * a {@link java.lang.reflect.Type} object. * @param subclass * a {@link java.lang.reflect.Type} object. * @return a boolean. */ public static boolean isSubclass(Type superclass, Type subclass) { List<Class<?>> superclasses = ClassUtils.getAllSuperclasses((Class<?>) subclass); List<Class<?>> interfaces = ClassUtils.getAllInterfaces((Class<?>) subclass); if (superclasses.contains(superclass) || interfaces.contains(superclass)) { return true; } return false; }
From source file:org.jboss.qa.phaser.InstanceRegistry.java
public static void insert(Object o) { insert(o, o.getClass());//from w ww.j a v a 2 s . c o m insert(o, ClassUtils.getAllInterfaces(o.getClass())); insert(o, ClassUtils.getAllSuperclasses(o.getClass())); }
From source file:org.jboss.qa.phaser.registry.SimpleInstanceRegistry.java
public void insert(Object o) { insert(o, o.getClass()); insert(o, ClassUtils.getAllInterfaces(o.getClass())); insert(o, ClassUtils.getAllSuperclasses(o.getClass())); }
From source file:org.mqnaas.general.test.helpers.reflection.ReflectionTestHelper.java
/** * Injects a private {@link Field} fieldInstance (instance of F) into classInstance (instance of T). It uses fieldName to look for private field. * /*w w w . j av a 2 s .co m*/ * @param classInstance * target instance * @param fieldInstance * field instance to be injected * @param fieldName * target field name * @throws SecurityException * if this exception is thrown during the process * @throws IllegalArgumentException * if fieldName could not be found in classInstance {@link Class} or if fieldInstance is not a compatible type to be injected * @throws IllegalAccessException * if this exception is thrown during the process */ public static <T, F> void injectPrivateField(T classInstance, F fieldInstance, String fieldName) throws SecurityException, IllegalArgumentException, IllegalAccessException { // get all super classes and add itself List<Class<?>> classes = ClassUtils.getAllSuperclasses(classInstance.getClass()); classes.add(classInstance.getClass()); for (Class<?> clazz : classes) { Field field; try { field = clazz.getDeclaredField(fieldName); } catch (NoSuchFieldException e) { // try next class continue; } if (!field.getType().isAssignableFrom(fieldInstance.getClass())) { throw new IllegalArgumentException( "Invalid fieldName received, fieldInstance can not assigned to field."); } field.setAccessible(true); field.set(classInstance, fieldInstance); field.setAccessible(false); return; } throw new IllegalArgumentException( "Invalid fieldName received, a field with this name can not be found in this class or its superclasses."); }
From source file:yoyo.framework.standard.shared.commons.lang.ClassUtilsTest.java
@Test public void test() throws ClassNotFoundException, SecurityException, NoSuchMethodException { List<Class<?>> classes = new ArrayList<Class<?>>() { {// w w w . ja v a2s .co m add(Integer.class); add(Long.class); } }; assertThat(ClassUtils.convertClassesToClassNames(classes).toArray(), is(new Object[] { "java.lang.Integer", "java.lang.Long" })); List<String> classNames = new ArrayList<String>() { { add("java.lang.Integer"); add("java.lang.Long"); } }; assertThat(ClassUtils.convertClassNamesToClasses(classNames).toArray(), is(classes.toArray())); assertThat(ClassUtils.getAllInterfaces(String.class).toArray(), is(new Object[] { java.io.Serializable.class, java.lang.Comparable.class, java.lang.CharSequence.class })); assertThat(ClassUtils.getAllSuperclasses(HashMap.class).toArray(), is(new Object[] { java.util.AbstractMap.class, java.lang.Object.class })); assertThat(ClassUtils.getClass("java.lang.String").toString(), is("class java.lang.String")); assertThat(ClassUtils.getPackageCanonicalName(String.class), is("java.lang")); assertThat(ClassUtils.getPackageName(String.class), is("java.lang")); assertThat(ClassUtils.getPublicMethod(String.class, "length", new Class[] {}), is(not(nullValue()))); assertThat(ClassUtils.getShortCanonicalName(String.class), is("String")); assertThat(ClassUtils.getShortClassName(String.class), is("String")); assertThat(ClassUtils.getSimpleName(String.class), is("String")); assertThat(ClassUtils.isAssignable(String.class, Object.class), is(true)); assertThat(ClassUtils.isInnerClass(Foo.class), is(true)); assertThat(ClassUtils.isInnerClass(String.class), is(false)); assertThat(ClassUtils.isPrimitiveOrWrapper(Integer.class), is(true)); assertThat(ClassUtils.isPrimitiveOrWrapper(String.class), is(false)); assertThat(ClassUtils.isPrimitiveWrapper(Integer.class), is(true)); assertThat(ClassUtils.isPrimitiveWrapper(String.class), is(false)); assertThat(ClassUtils.primitivesToWrappers(new Class[] { Integer.class, Long.class }), is(not(nullValue()))); assertThat(ClassUtils.primitiveToWrapper(Integer.class), is(not(nullValue()))); assertThat(ClassUtils.toClass(1L, 2L), is(not(nullValue()))); assertThat(ClassUtils.wrappersToPrimitives(new Class[] { Integer.class, Long.class }), is(not(nullValue()))); assertThat(ClassUtils.wrapperToPrimitive(Integer.class), is(not(nullValue()))); }