Class JsonbAccessMode

  • All Implemented Interfaces:
    Closeable, AutoCloseable, org.apache.johnzon.mapper.access.AccessMode, org.apache.johnzon.mapper.Cleanable<Class<?>>

    public class JsonbAccessMode
    extends Object
    implements org.apache.johnzon.mapper.access.AccessMode, Closeable, org.apache.johnzon.mapper.Cleanable<Class<?>>
    • Field Detail

      • naming

        private final jakarta.json.bind.config.PropertyNamingStrategy naming
      • order

        private final String order
      • visibility

        private final jakarta.json.bind.config.PropertyVisibilityStrategy visibility
      • delegate

        private final org.apache.johnzon.mapper.access.AccessMode delegate
      • caseSensitive

        private final boolean caseSensitive
      • defaultConverters

        private final Map<org.apache.johnzon.mapper.internal.AdapterKey,​org.apache.johnzon.mapper.Adapter<?,​?>> defaultConverters
      • jsonProvider

        private final jakarta.json.spi.JsonProvider jsonProvider
      • parserFactory

        private final Supplier<jakarta.json.stream.JsonParserFactory> parserFactory
      • builderFactory

        private final Supplier<jakarta.json.JsonBuilderFactory> builderFactory
      • partialDelegate

        private final org.apache.johnzon.mapper.access.BaseAccessMode partialDelegate
      • failOnMissingCreatorValues

        private boolean failOnMissingCreatorValues
      • types

        private final Types types
      • globalIsNillable

        private final boolean globalIsNillable
      • supportsPrivateAccess

        private final boolean supportsPrivateAccess
    • Constructor Detail

      • JsonbAccessMode

        public JsonbAccessMode​(jakarta.json.bind.config.PropertyNamingStrategy propertyNamingStrategy,
                               String orderValue,
                               jakarta.json.bind.config.PropertyVisibilityStrategy visibilityStrategy,
                               boolean caseSensitive,
                               Map<org.apache.johnzon.mapper.internal.AdapterKey,​org.apache.johnzon.mapper.Adapter<?,​?>> defaultConverters,
                               JohnzonAdapterFactory factory,
                               jakarta.json.spi.JsonProvider jsonProvider,
                               Supplier<jakarta.json.JsonBuilderFactory> builderFactory,
                               Supplier<jakarta.json.stream.JsonParserFactory> parserFactory,
                               org.apache.johnzon.mapper.access.AccessMode delegate,
                               boolean failOnMissingCreatorValues,
                               boolean globalIsNillable,
                               boolean supportsPrivateAccess)
    • Method Detail

      • fieldComparator

        public Comparator<String> fieldComparator​(Class<?> clazz)
        Specified by:
        fieldComparator in interface org.apache.johnzon.mapper.access.AccessMode
      • findFactory

        public org.apache.johnzon.mapper.access.AccessMode.Factory findFactory​(Class<?> clazz,
                                                                               Function<AnnotatedElement,​String>... parameterNameExtractors)
        Specified by:
        findFactory in interface org.apache.johnzon.mapper.access.AccessMode
      • findPotentialFactoryMethods

        private Stream<Method> findPotentialFactoryMethods​(Class<?> clazz)
      • methodFactory

        private org.apache.johnzon.mapper.access.AccessMode.Factory methodFactory​(Class<?> clazz,
                                                                                  Method finalFactory,
                                                                                  Consumer<Object[]> factoryValidator,
                                                                                  Type[] types,
                                                                                  String[] params,
                                                                                  org.apache.johnzon.mapper.Adapter<?,​?>[] converters,
                                                                                  org.apache.johnzon.mapper.Adapter<?,​?>[] itemConverters,
                                                                                  org.apache.johnzon.mapper.ObjectConverter.Codec<?>[] objectConverters)
      • tryToCreateInstance

        private Object tryToCreateInstance​(Class<?> declaringClass)
      • constructorFactory

        private org.apache.johnzon.mapper.access.AccessMode.Factory constructorFactory​(Constructor<?> finalConstructor,
                                                                                       Consumer<Object[]> factoryValidator,
                                                                                       Type[] types,
                                                                                       String[] params,
                                                                                       org.apache.johnzon.mapper.Adapter<?,​?>[] converters,
                                                                                       org.apache.johnzon.mapper.Adapter<?,​?>[] itemConverters,
                                                                                       org.apache.johnzon.mapper.ObjectConverter.Codec<?>[] objectConverters)
      • validateAnnotations

        private void validateAnnotations​(Object parameter,
                                         jakarta.json.bind.annotation.JsonbTypeAdapter adapter,
                                         jakarta.json.bind.annotation.JsonbDateFormat dateFormat,
                                         jakarta.json.bind.annotation.JsonbNumberFormat numberFormat,
                                         org.apache.johnzon.mapper.JohnzonConverter johnzonConverter)
      • toConverter

        private org.apache.johnzon.mapper.Adapter<?,​?> toConverter​(Types types,
                                                                         Type type,
                                                                         jakarta.json.bind.annotation.JsonbTypeAdapter adapter,
                                                                         jakarta.json.bind.annotation.JsonbDateFormat dateFormat,
                                                                         jakarta.json.bind.annotation.JsonbNumberFormat numberFormat)
      • findReaders

        public Map<String,​org.apache.johnzon.mapper.access.AccessMode.Reader> findReaders​(Class<?> clazz)
        Specified by:
        findReaders in interface org.apache.johnzon.mapper.access.AccessMode
      • validateAnnotationsOnTransientField

        private void validateAnnotationsOnTransientField​(org.apache.johnzon.mapper.access.AccessMode.DecoratedType type)
      • findWriters

        public Map<String,​org.apache.johnzon.mapper.access.AccessMode.Writer> findWriters​(Class<?> clazz)
        Specified by:
        findWriters in interface org.apache.johnzon.mapper.access.AccessMode
      • findReader

        public org.apache.johnzon.mapper.ObjectConverter.Reader<?> findReader​(Class<?> clazz)
        Specified by:
        findReader in interface org.apache.johnzon.mapper.access.AccessMode
      • findWriter

        public org.apache.johnzon.mapper.ObjectConverter.Writer<?> findWriter​(Class<?> clazz)
        Specified by:
        findWriter in interface org.apache.johnzon.mapper.access.AccessMode
      • findAdapter

        public org.apache.johnzon.mapper.Adapter<?,​?> findAdapter​(Class<?> clazz)
        Specified by:
        findAdapter in interface org.apache.johnzon.mapper.access.AccessMode
      • findAnyGetter

        public Method findAnyGetter​(Class<?> clazz)
        Specified by:
        findAnyGetter in interface org.apache.johnzon.mapper.access.AccessMode
      • findAnySetter

        public Method findAnySetter​(Class<?> clazz)
        Specified by:
        findAnySetter in interface org.apache.johnzon.mapper.access.AccessMode
      • findAnyField

        public Field findAnyField​(Class<?> clazz)
        Specified by:
        findAnyField in interface org.apache.johnzon.mapper.access.AccessMode
      • afterParsed

        public void afterParsed​(Class<?> clazz)
        Specified by:
        afterParsed in interface org.apache.johnzon.mapper.access.AccessMode
      • isReversedAdapter

        private boolean isReversedAdapter​(Class<?> payloadType,
                                          Class<?> aClass,
                                          org.apache.johnzon.mapper.Adapter<?,​?> instance)
      • isNillable

        private boolean isNillable​(jakarta.json.bind.annotation.JsonbProperty property,
                                   jakarta.json.bind.annotation.JsonbNillable propertyNillable,
                                   jakarta.json.bind.annotation.JsonbNillable classOrPackageNillable)
      • findOptionalType

        private Type findOptionalType​(Type writerType)
      • isOptional

        private boolean isOptional​(Type type)
      • isOptionalArray

        private boolean isOptionalArray​(org.apache.johnzon.mapper.access.AccessMode.DecoratedType value)
      • isTransient

        private boolean isTransient​(org.apache.johnzon.mapper.access.AccessMode.DecoratedType dt,
                                    jakarta.json.bind.config.PropertyVisibilityStrategy visibility,
                                    Class<?> root,
                                    boolean read)
      • shouldSkip

        private boolean shouldSkip​(jakarta.json.bind.config.PropertyVisibilityStrategy visibility,
                                   org.apache.johnzon.mapper.access.AccessMode.DecoratedType t,
                                   Class<?> root,
                                   boolean read)
      • isTransient

        private boolean isTransient​(org.apache.johnzon.mapper.access.AccessMode.DecoratedType t)
      • isNotVisible

        private boolean isNotVisible​(jakarta.json.bind.config.PropertyVisibilityStrategy visibility,
                                     org.apache.johnzon.mapper.access.AccessMode.DecoratedType t,
                                     Class<?> root,
                                     boolean read)
      • clean

        public void clean​(Class<?> value)
        Specified by:
        clean in interface org.apache.johnzon.mapper.Cleanable<Class<?>>
      • isDateType

        private boolean isDateType​(Type type)
      • isNumberType

        private boolean isNumberType​(Type type)
      • hasRawType

        private boolean hasRawType​(Type type)
      • getRawTargetType

        private Class<?> getRawTargetType​(Type type)