code: public static boolean classHasAnnotation(Class clazz, Class<? extends Annotation> annotation) {
  		try {
  			Set<Class> hierarchy = ReflectionUtil.flattenHierarchy(clazz);
  			for (Class c : hierarchy) {
  				if (c.isAnnotationPresent(annotation)) return true;
  			}
  		} catch (Throwable t) {
  			t.printStackTrace();
  		}
  		return false;
  	}
docs: Returns true if that class or any of its supertypes has the annotation
  
  @param clazz      The class that needs the annotation
  @param annotation The annotation to look for
  @return true if and only if the class or any of its supertypes has the annotation