private MapperConverter findConverter(final boolean copyDate, final AccessMode.DecoratedType decoratedType) { MapperConverter converter = decoratedType.findConverter(); if (converter != null) { return converter; final JohnzonConverter annotation = decoratedType.getAnnotation(JohnzonConverter.class); Type typeToTest = decoratedType.getType(); if (annotation != null) { try { throw new IllegalArgumentException(e); } else if (ParameterizedType.class.isInstance(decoratedType.getType())) { final ParameterizedType type = ParameterizedType.class.cast(decoratedType.getType()); final Type rawType = type.getRawType(); if (Class.class.isInstance(rawType)
private MapperConverter findConverter(final boolean copyDate, final AccessMode.DecoratedType decoratedType) { MapperConverter converter = decoratedType.findConverter(); if (converter != null) { return converter; final JohnzonConverter annotation = decoratedType.getAnnotation(JohnzonConverter.class); Type typeToTest = decoratedType.getType(); if (annotation != null) { try { throw new IllegalArgumentException(e); } else if (ParameterizedType.class.isInstance(decoratedType.getType())) { final ParameterizedType type = ParameterizedType.class.cast(decoratedType.getType()); final Type rawType = type.getRawType(); if (Class.class.isInstance(rawType)
ReaderConverters(final DecoratedType annotationHolder) { final JsonbTypeDeserializer deserializer = annotationHolder.getAnnotation(JsonbTypeDeserializer.class); final JsonbTypeAdapter adapter = annotationHolder.getAnnotation(JsonbTypeAdapter.class); final JsonbDateFormat dateFormat = annotationHolder.getAnnotation(JsonbDateFormat.class); final JsonbNumberFormat numberFormat = annotationHolder.getAnnotation(JsonbNumberFormat.class); final JohnzonConverter johnzonConverter = annotationHolder.getAnnotation(JohnzonConverter.class); validateAnnotations(annotationHolder, adapter, dateFormat, numberFormat, johnzonConverter); defaultConverters.get(new AdapterKey(annotationHolder.getType(), String.class)) : toConverter(annotationHolder.getType(), adapter, dateFormat, numberFormat); } catch (final InstantiationException | IllegalAccessException e) { throw new IllegalArgumentException(e);
WriterConverters(final DecoratedType initialReader) { final JsonbTypeSerializer serializer = initialReader.getAnnotation(JsonbTypeSerializer.class); final JsonbTypeAdapter adapter = initialReader.getAnnotation(JsonbTypeAdapter.class); final JsonbDateFormat dateFormat = initialReader.getAnnotation(JsonbDateFormat.class); final JsonbNumberFormat numberFormat = initialReader.getAnnotation(JsonbNumberFormat.class); final JohnzonConverter johnzonConverter = initialReader.getAnnotation(JohnzonConverter.class); validateAnnotations(initialReader, adapter, dateFormat, numberFormat, johnzonConverter); defaultConverters.get(new AdapterKey(initialReader.getType(), String.class)) : toConverter(initialReader.getType(), adapter, dateFormat, numberFormat); } catch (final InstantiationException | IllegalAccessException e) { throw new IllegalArgumentException(e);
ReaderConverters(final DecoratedType annotationHolder) { final JsonbTypeDeserializer deserializer = annotationHolder.getAnnotation(JsonbTypeDeserializer.class); final JsonbTypeAdapter adapter = annotationHolder.getAnnotation(JsonbTypeAdapter.class); final JsonbDateFormat dateFormat = annotationHolder.getAnnotation(JsonbDateFormat.class); final JsonbNumberFormat numberFormat = annotationHolder.getAnnotation(JsonbNumberFormat.class); final JohnzonConverter johnzonConverter = annotationHolder.getAnnotation(JohnzonConverter.class); validateAnnotations(annotationHolder, adapter, dateFormat, numberFormat, johnzonConverter); defaultConverters.get(new AdapterKey(annotationHolder.getType(), String.class)) : toConverter(annotationHolder.getType(), adapter, dateFormat, numberFormat); } catch (final InstantiationException | IllegalAccessException e) { throw new IllegalArgumentException(e);
WriterConverters(final DecoratedType initialReader) { final JsonbTypeSerializer serializer = initialReader.getAnnotation(JsonbTypeSerializer.class); final JsonbTypeAdapter adapter = initialReader.getAnnotation(JsonbTypeAdapter.class); final JsonbDateFormat dateFormat = initialReader.getAnnotation(JsonbDateFormat.class); final JsonbNumberFormat numberFormat = initialReader.getAnnotation(JsonbNumberFormat.class); final JohnzonConverter johnzonConverter = initialReader.getAnnotation(JohnzonConverter.class); validateAnnotations(initialReader, adapter, dateFormat, numberFormat, johnzonConverter); defaultConverters.get(new AdapterKey(initialReader.getType(), String.class)) : toConverter(initialReader.getType(), adapter, dateFormat, numberFormat); } catch (final InstantiationException | IllegalAccessException e) { throw new IllegalArgumentException(e);
private boolean isTransient(final DecoratedType t) { return t.getAnnotation(JsonbTransient.class) != null; }
@Override public boolean isNillable() { return type1.isNillable() || type2.isNillable(); }
@Override public Type getType() { return type1.getType(); }
private boolean isTransient(final DecoratedType t) { return t.getAnnotation(JsonbTransient.class) != null; }
@Override public Type getType() { return type1.getType(); }
@Override public boolean isNillable() { return type1.isNillable() || type2.isNillable(); }
@Override public Adapter<?, ?> findConverter() { final Adapter<?, ?> converter = type1.findConverter(); return converter != null ? converter : type2.findConverter(); }
@Override public <T extends Annotation> T getAnnotation(final Class<T> clazz) { final T found = type1.getAnnotation(clazz); return found == null ? type2.getAnnotation(clazz) : found; }
@Override public <T extends Annotation> T getClassOrPackageAnnotation(final Class<T> clazz) { final T found = type1.getClassOrPackageAnnotation(clazz); return found == null ? type2.getClassOrPackageAnnotation(clazz) : found; }
@Override public <T extends Annotation> T getAnnotation(final Class<T> clazz) { final T found = type1.getAnnotation(clazz); return found == null ? type2.getAnnotation(clazz) : found; }
@Override public <T extends Annotation> T getClassOrPackageAnnotation(final Class<T> clazz) { final T found = type1.getClassOrPackageAnnotation(clazz); return found == null ? type2.getClassOrPackageAnnotation(clazz) : found; }
@Override public Adapter<?, ?> findConverter() { final Adapter<?, ?> converter = type1.findConverter(); return converter != null ? converter : type2.findConverter(); }