src/main/java/com/arpnetworking/logback/serialization/steno/StenoSerializationHelper.java
public static boolean isSimpleType(@Nullable final Object obj) {
        if (obj == null) {
            return true;
        }

        final Class<?> objClass = obj.getClass();
        if (String.class.isAssignableFrom(objClass)) {
            return true;
        }

        if (Number.class.isAssignableFrom(objClass)) {
            return true;
        }

        if (Boolean.class.isAssignableFrom(objClass)) {
            return true;
        }

        return false;
    }
public static boolean isSimpleType(@Nullable final Object obj) {
        if (obj == null) {
            return true;
        }

        final Class<?> objClass = obj.getClass();
        if (String.class.isAssignableFrom(objClass)) {
            return true;
        }

        if (Number.class.isAssignableFrom(objClass)) {
            return true;
        }

        if (Boolean.class.isAssignableFrom(objClass)) {
            return true;
        }

        return false;
    }
Determine if an object represents a primitive Json type. These include
instances of <code>Number</code>, <code>String</code> and <code>Boolean</code>.

@since 1.7.0
@param obj The <code>Object</code> to analyze.
@return <code>True</code> if and only if the <code>Object</code> is a simple type.