public FieldAndMethodAccessMode(final boolean useConstructor, final boolean acceptHiddenConstructor, final boolean useGettersAsWriter) { super(useConstructor, acceptHiddenConstructor); this.fields = new FieldAccessMode(useConstructor, acceptHiddenConstructor); this.methods = new MethodAccessMode(useConstructor, acceptHiddenConstructor, useGettersAsWriter); }
@Override public boolean isNillable() { for (final AccessMode.Reader r : delegates) { if (r.isNillable()) { return true; } } return false; } }
@Override public void write(final Object instance, final Object value) { for (final AccessMode.Writer w : delegates) { w.write(instance, value); } }
@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 ObjectConverter.Writer<?> findObjectConverterWriter() { for (final AccessMode.Reader w : delegates) { final ObjectConverter.Writer<?> objectConverter = w.findObjectConverterWriter(); if (objectConverter != null) { return objectConverter; } } return null; }
@Override public ObjectConverter.Reader<?> findObjectConverterReader() { for (final AccessMode.Writer w : delegates) { final ObjectConverter.Reader<?> objectConverter = w.findObjectConverterReader(); if (objectConverter != null) { return objectConverter; } } return null; }
@Override public Adapter<?, ?> findConverter() { for (final AccessMode.Reader r : delegates) { final Adapter<?, ?> converter = r.findConverter(); if (converter != null) { return converter; } } return null; }
@Override public boolean isNillable() { for (final AccessMode.Writer r : delegates) { if (r.isNillable()) { return true; } } return false; } }
@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(); }
@Override public Adapter<?, ?> findConverter() { for (final AccessMode.Writer r : delegates) { final Adapter<?, ?> converter = r.findConverter(); if (converter != null) { return converter; } } return null; }
public FieldAndMethodAccessMode(final boolean useConstructor, final boolean acceptHiddenConstructor, final boolean useGettersAsWriter) { super(useConstructor, acceptHiddenConstructor); this.fields = new FieldAccessMode(useConstructor, acceptHiddenConstructor); this.methods = new MethodAccessMode(useConstructor, acceptHiddenConstructor, useGettersAsWriter); }
@Override public void write(final Object instance, final Object value) { for (final AccessMode.Writer w : delegates) { w.write(instance, value); } }
@Override public ObjectConverter.Writer<?> findObjectConverterWriter() { final ObjectConverter.Writer<?> objectConverter = type2.findObjectConverterWriter(); return objectConverter == null ? type1.findObjectConverterWriter() : objectConverter; } }
@Override public ObjectConverter.Reader<?> findObjectConverterReader() { final ObjectConverter.Reader<?> objectConverter = type2.findObjectConverterReader(); return objectConverter == null ? type1.findObjectConverterReader() : objectConverter; } }
@Override public Adapter<?, ?> findConverter() { for (final AccessMode.Reader r : delegates) { final Adapter<?, ?> converter = r.findConverter(); if (converter != null) { return converter; } } return null; }
@Override public boolean isNillable() { for (final AccessMode.Writer r : delegates) { if (r.isNillable()) { return true; } } return false; } }
@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 ObjectConverter.Writer<?> findObjectConverterWriter() { final ObjectConverter.Writer<?> objectConverter = type2.findObjectConverterWriter(); return objectConverter == null ? type1.findObjectConverterWriter() : objectConverter; } }
@Override public ObjectConverter.Reader<?> findObjectConverterReader() { for (final AccessMode.Writer w : delegates) { final ObjectConverter.Reader<?> objectConverter = w.findObjectConverterReader(); if (objectConverter != null) { return objectConverter; } } return null; }