icegem-core/src/main/java/com/googlecode/icegem/serialization/codegen/Introspector.java
public static void checkClassIsSerialized(final Class<?> clazz) throws InvalidClassException {
        // class
        checkClassIsAnnotationMarked(clazz);
        checkClassIsPublic(clazz);
        checkClassIsNotNested(clazz);
        // constructor
        Constructor<?> constructor = checkConstructorNoArg(clazz);
        checkConstructorPublic(constructor);
        checkConstructorWithoutExceptions(constructor);
        checkParentConstructor(clazz);
        // getters
        Map<String, Method> gettersMap = getPropertyGetters(clazz);
        for (Map.Entry<String, Method> getterEntry : gettersMap.entrySet()) {
            Method getter = getterEntry.getValue();
            checkGetterPublic(getter);
            checkGetterNoArg(getter);
            checkGetterWithoutExceptions(getter);
            Method setter = getSetterForGetter(clazz, getter);
            checkSetterPublic(setter);
            checkSetterOneArg(setter);
            checkSetterReturnVoid(setter);
            checkSetterWithoutExceptions(setter);
            checkGetterSetterTheSameType(getter, setter);
        }
    }
public static void checkClassIsSerialized(final Class<?> clazz) throws InvalidClassException {
        // class
        checkClassIsAnnotationMarked(clazz);
        checkClassIsPublic(clazz);
        checkClassIsNotNested(clazz);
        // constructor
        Constructor<?> constructor = checkConstructorNoArg(clazz);
        checkConstructorPublic(constructor);
        checkConstructorWithoutExceptions(constructor);
        checkParentConstructor(clazz);
        // getters
        Map<String, Method> gettersMap = getPropertyGetters(clazz);
        for (Map.Entry<String, Method> getterEntry : gettersMap.entrySet()) {
            Method getter = getterEntry.getValue();
            checkGetterPublic(getter);
            checkGetterNoArg(getter);
            checkGetterWithoutExceptions(getter);
            Method setter = getSetterForGetter(clazz, getter);
            checkSetterPublic(setter);
            checkSetterOneArg(setter);
            checkSetterReturnVoid(setter);
            checkSetterWithoutExceptions(setter);
            checkGetterSetterTheSameType(getter, setter);
        }
    }
public static void checkClassIsSerialized ( final Class < ? > clazz ) throws InvalidClassException { // class checkClassIsAnnotationMarked ( clazz ) ; checkClassIsPublic ( clazz ) ; checkClassIsNotNested ( clazz ) ; // constructor Constructor < ? > constructor = checkConstructorNoArg ( clazz ) ; checkConstructorPublic ( constructor ) ; checkConstructorWithoutExceptions ( constructor ) ; checkParentConstructor ( clazz ) ; // getters Map < String , Method > gettersMap = getPropertyGetters ( clazz ) ; for ( Map . Entry < String , Method > getterEntry : gettersMap . entrySet ( ) ) { Method getter = getterEntry . getValue ( ) ; checkGetterPublic ( getter ) ; checkGetterNoArg ( getter ) ; checkGetterWithoutExceptions ( getter ) ; Method setter = getSetterForGetter ( clazz , getter ) ; checkSetterPublic ( setter ) ; checkSetterOneArg ( setter ) ; checkSetterReturnVoid ( setter ) ; checkSetterWithoutExceptions ( setter ) ; checkGetterSetterTheSameType ( getter , setter ) ; } }
-------------------------- PUBLIC
-------------------------- PUBLIC