in src/main/java/org/apache/sling/models/impl/ModelAdapterFactory.java [895:920]
private RuntimeException injectPrimitiveInitialValue(InjectableElement point, InjectCallback callback) {
Type primitiveType = ReflectionUtil.mapWrapperClasses(point.getType());
Object value = null;
if (primitiveType == int.class) {
value = 0;
} else if (primitiveType == long.class) {
value = 0L;
} else if (primitiveType == boolean.class) {
value = Boolean.FALSE;
} else if (primitiveType == double.class) {
value = 0.0d;
} else if (primitiveType == float.class) {
value = 0.0f;
} else if (primitiveType == short.class) {
value = (short) 0;
} else if (primitiveType == byte.class) {
value = (byte) 0;
} else if (primitiveType == char.class) {
value = '\u0000';
}
if (value != null) {
return callback.inject(point, value);
} else {
return new ModelClassException(String.format("Unknown primitive type %s", primitiveType.toString()));
}
}