}
private static Class getClassAnnotationForIdentifiableOrBasic(Object o) {
java.lang.Class<? extends Object> klass = o.getClass();
while(klass != null && klass != java.lang.Object.class) {
Class classAnnotation = klass.getAnnotation(Class.class);
if(classAnnotation != null) {
return classAnnotation;
}
// else keep looking up
klass = klass.getSuperclass();