private void addGetterIfNeeded(final Map<String, Getter> getters, final String key, final AccessMode.Reader value, final boolean copyDate, final Class<?> rootClass) { final JohnzonIgnore readIgnore = value.getAnnotation(JohnzonIgnore.class); final JohnzonIgnoreNested ignoreNested = value.getAnnotation(JohnzonIgnoreNested.class); if (readIgnore == null || readIgnore.minVersion() >= 0) { final Class<?> returnType = Class.class.isInstance(value.getType()) ? Class.class.cast(value.getType()) : null; final ParameterizedType pt = ParameterizedType.class.isInstance(value.getType()) ? ParameterizedType.class.cast(value.getType()) : null; final Getter getter = new Getter(value, returnType == Object.class, isPrimitive(returnType), returnType != null && returnType.isArray(), (pt != null && Collection.class.isAssignableFrom(Class.class.cast(pt.getRawType()))) || (returnType != null && Collection.class.isAssignableFrom(returnType)), (pt != null && Map.class.isAssignableFrom(Class.class.cast(pt.getRawType()))) || (returnType != null && Map.class.isAssignableFrom(returnType)), findConverter(copyDate, value), value.findObjectConverterWriter(), readIgnore != null ? readIgnore.minVersion() : -1, ignoreNested != null ? ignoreNested.properties() : null); getters.put(key, getter); } }
final Mappings.Getter getter = classMapping.getters.get(property); final String key = findKeyForField(property, getter, classType); final Type type = getter.reader.getType();
final String key = entry.getKey(); Method m = getMethod("get" + Character.toUpperCase(key.charAt(0)) + (key.length() > 1 ? key.substring(1) : ""), clazz); if (m == null && (boolean.class == entry.getValue().getType() || Boolean.class == entry.getValue().getType())) { m = getMethod("is" + Character.toUpperCase(key.charAt(0)) + (key.length() > 1 ? key.substring(1) : ""), clazz);
final Function<Object, Object> reader; if (isOptional(finalReader)) { type = ParameterizedType.class.cast(finalReader.getType()).getActualTypeArguments()[0]; reader = i -> ofNullable(finalReader.read(i)).map(o -> Optional.class.cast(o).orElse(null)).orElse(null); } else if (OptionalInt.class == finalReader.getType()) { type = int.class; reader = i -> OptionalInt.class.cast(finalReader.read(i)).orElse(0); } else if (OptionalLong.class == finalReader.getType()) { type = long.class; reader = i -> OptionalLong.class.cast(finalReader.read(i)).orElse(0); } else if (OptionalDouble.class == finalReader.getType()) { type = double.class; reader = i -> OptionalDouble.class.cast(finalReader.read(i)).orElse(0); } else { type = finalReader.getType(); reader = finalReader::read;
final Function<Object, Object> reader; if (isOptional(finalReader)) { type = ParameterizedType.class.cast(finalReader.getType()).getActualTypeArguments()[0]; reader = i -> ofNullable(finalReader.read(i)).map(o -> Optional.class.cast(o).orElse(null)).orElse(null); } else if (OptionalInt.class == finalReader.getType()) { type = int.class; reader = i -> OptionalInt.class.cast(finalReader.read(i)).orElse(0); } else if (OptionalLong.class == finalReader.getType()) { type = long.class; reader = i -> OptionalLong.class.cast(finalReader.read(i)).orElse(0); } else if (OptionalDouble.class == finalReader.getType()) { type = double.class; reader = i -> OptionalDouble.class.cast(finalReader.read(i)).orElse(0); } else { type = finalReader.getType(); reader = finalReader::read;
final SampleMappings.Getter getter = property.getValue(); final String key = property.getKey(); final Type type = extractType(getter.reader.getType()); if (getter.array || getter.collection) { generateArray(mappings, generator, saw, type, key);
final String key = entry.getKey(); Method m = getMethod("get" + Character.toUpperCase(key.charAt(0)) + (key.length() > 1 ? key.substring(1) : ""), clazz); if (m == null && (boolean.class == entry.getValue().getType() || Boolean.class == entry.getValue().getType())) { m = getMethod("is" + Character.toUpperCase(key.charAt(0)) + (key.length() > 1 ? key.substring(1) : ""), clazz);
if (matches(reader.getType(), adapter)) { theConverter = adapter; } else {
if (matches(reader.getType(), adapter)) { theConverter = adapter; } else {
private void addGetterIfNeeded(final Map<String, Getter> getters, final String key, final AccessMode.Reader value, final boolean copyDate, final Class<?> rootClass) { final JohnzonIgnore readIgnore = value.getAnnotation(JohnzonIgnore.class); final JohnzonIgnoreNested ignoreNested = value.getAnnotation(JohnzonIgnoreNested.class); if (readIgnore == null || readIgnore.minVersion() >= 0) { final Class<?> returnType = Class.class.isInstance(value.getType()) ? Class.class.cast(value.getType()) : null; final ParameterizedType pt = ParameterizedType.class.isInstance(value.getType()) ? ParameterizedType.class.cast(value.getType()) : null; final Getter getter = new Getter(value, returnType == Object.class, isPrimitive(returnType), returnType != null && returnType.isArray(), (pt != null && Collection.class.isAssignableFrom(Class.class.cast(pt.getRawType()))) || (returnType != null && Collection.class.isAssignableFrom(returnType)), (pt != null && Map.class.isAssignableFrom(Class.class.cast(pt.getRawType()))) || (returnType != null && Map.class.isAssignableFrom(returnType)), findConverter(copyDate, value), value.findObjectConverterWriter(), readIgnore != null ? readIgnore.minVersion() : -1, ignoreNested != null ? ignoreNested.properties() : null); getters.put(key, getter); } }