Package org.apache.johnzon.jsonb
Class JsonbAccessMode
java.lang.Object
org.apache.johnzon.jsonb.JsonbAccessMode
- All Implemented Interfaces:
Closeable,AutoCloseable,AccessMode,Cleanable<Class<?>>
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static classprivate classprivate classprivate classNested classes/interfaces inherited from interface org.apache.johnzon.mapper.access.AccessMode
AccessMode.DecoratedType, AccessMode.Factory, AccessMode.Reader, AccessMode.Writer -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Supplier<jakarta.json.JsonBuilderFactory>private final booleanprivate final Map<AdapterKey,Adapter<?, ?>> private final AccessModeprivate final JohnzonAdapterFactoryprivate booleanprivate final booleanprivate final jakarta.json.spi.JsonProviderprivate final jakarta.json.bind.config.PropertyNamingStrategyprivate final Stringprivate final Supplier<jakarta.json.stream.JsonParserFactory>private final ConcurrentMap<Class<?>,JsonbAccessMode.ParsingCacheEntry> private final BaseAccessModeprivate final booleanprivate final Collection<JohnzonAdapterFactory.Instance<?>>private final Typesprivate final jakarta.json.bind.config.PropertyVisibilityStrategy -
Constructor Summary
ConstructorsConstructorDescriptionJsonbAccessMode(jakarta.json.bind.config.PropertyNamingStrategy propertyNamingStrategy, String orderValue, jakarta.json.bind.config.PropertyVisibilityStrategy visibilityStrategy, boolean caseSensitive, Map<AdapterKey, Adapter<?, ?>> defaultConverters, JohnzonAdapterFactory factory, jakarta.json.spi.JsonProvider jsonProvider, Supplier<jakarta.json.JsonBuilderFactory> builderFactory, Supplier<jakarta.json.stream.JsonParserFactory> parserFactory, AccessMode delegate, boolean failOnMissingCreatorValues, boolean globalIsNillable, boolean supportsPrivateAccess) -
Method Summary
Modifier and TypeMethodDescriptionvoidafterParsed(Class<?> clazz) Called once johnzon will not use AccessMode anymore.voidvoidclose()private AccessMode.FactoryconstructorFactory(Constructor<?> finalConstructor, Consumer<Object[]> factoryValidator, Type[] types, String[] params, Adapter<?, ?>[] converters, Adapter<?, ?>[] itemConverters, ObjectConverter.Codec<?>[] objectConverters) fieldComparator(Class<?> clazz) Adapter<?,?> findAdapter(Class<?> clazz) findAnyField(Class<?> clazz) findAnyGetter(Class<?> clazz) findAnySetter(Class<?> clazz) findFactory(Class<?> clazz, Function<AnnotatedElement, String>... parameterNameExtractors) private TypefindOptionalType(Type writerType) findPotentialFactoryMethods(Class<?> clazz) findReader(Class<?> clazz) findReaders(Class<?> clazz) private Optional<Constructor<?>>findRecordConstructor(Class<?> clazz) findWriter(Class<?> clazz) findWriters(Class<?> clazz) private static <T extends Annotation>
TgetAnnotation(Parameter param, Class<T> api) private static <T extends Annotation>
TgetAnnotationOnParameterOrParameterType(Parameter param, Class<T> api) getClassEntry(Class<?> clazz) private Stringprivate Class<?>getRawTargetType(Type type) private booleanhasRawType(Type type) private booleanisDateType(Type type) private booleanisNillable(jakarta.json.bind.annotation.JsonbProperty property, jakarta.json.bind.annotation.JsonbNillable propertyNillable, jakarta.json.bind.annotation.JsonbNillable classOrPackageNillable) private booleanisNotVisible(jakarta.json.bind.config.PropertyVisibilityStrategy visibility, AccessMode.DecoratedType t, Class<?> root, boolean read) private booleanisNumberType(Type type) private booleanisOptional(Type type) private booleanprivate booleanisReversedAdapter(Class<?> payloadType, Class<?> aClass, Adapter<?, ?> instance) private booleanprivate booleanisTransient(AccessMode.DecoratedType dt, jakarta.json.bind.config.PropertyVisibilityStrategy visibility, Class<?> root, boolean read) private AccessMode.FactorymethodFactory(Class<?> clazz, Method finalFactory, Consumer<Object[]> factoryValidator, Type[] types, String[] params, Adapter<?, ?>[] converters, Adapter<?, ?>[] itemConverters, ObjectConverter.Codec<?>[] objectConverters) private JohnzonAdapterFactory.InstancenewInstance(Class<?> value) private Comparator<String>orderComparator(Class<?> clazz) private booleanshouldSkip(jakarta.json.bind.config.PropertyVisibilityStrategy visibility, AccessMode.DecoratedType t, Class<?> root, boolean read) private Class<?>private Adapter<?,?> toConverter(Types types, Type type, jakarta.json.bind.annotation.JsonbTypeAdapter adapter, jakarta.json.bind.annotation.JsonbDateFormat dateFormat, jakarta.json.bind.annotation.JsonbNumberFormat numberFormat) private ObjecttryToCreateInstance(Class<?> declaringClass) private voidvalidateAnnotations(Object parameter, jakarta.json.bind.annotation.JsonbTypeAdapter adapter, jakarta.json.bind.annotation.JsonbDateFormat dateFormat, jakarta.json.bind.annotation.JsonbNumberFormat numberFormat, JohnzonConverter johnzonConverter) private voidMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.johnzon.mapper.access.AccessMode
findFactory, findMapAdder
-
Field Details
-
naming
private final jakarta.json.bind.config.PropertyNamingStrategy naming -
order
-
visibility
private final jakarta.json.bind.config.PropertyVisibilityStrategy visibility -
delegate
-
caseSensitive
private final boolean caseSensitive -
defaultConverters
-
factory
-
toRelease
-
jsonProvider
private final jakarta.json.spi.JsonProvider jsonProvider -
parserFactory
-
builderFactory
-
parsingCache
-
partialDelegate
-
failOnMissingCreatorValues
private boolean failOnMissingCreatorValues -
types
-
globalIsNillable
private final boolean globalIsNillable -
supportsPrivateAccess
private final boolean supportsPrivateAccess
-
-
Constructor Details
-
JsonbAccessMode
public JsonbAccessMode(jakarta.json.bind.config.PropertyNamingStrategy propertyNamingStrategy, String orderValue, jakarta.json.bind.config.PropertyVisibilityStrategy visibilityStrategy, boolean caseSensitive, Map<AdapterKey, Adapter<?, ?>> defaultConverters, JohnzonAdapterFactory factory, jakarta.json.spi.JsonProvider jsonProvider, Supplier<jakarta.json.JsonBuilderFactory> builderFactory, Supplier<jakarta.json.stream.JsonParserFactory> parserFactory, AccessMode delegate, boolean failOnMissingCreatorValues, boolean globalIsNillable, boolean supportsPrivateAccess)
-
-
Method Details
-
fieldComparator
- Specified by:
fieldComparatorin interfaceAccessMode
-
findFactory
public AccessMode.Factory findFactory(Class<?> clazz, Function<AnnotatedElement, String>... parameterNameExtractors) - Specified by:
findFactoryin interfaceAccessMode
-
findRecordConstructor
-
getJsonbProperty
-
findPotentialFactoryMethods
-
methodFactory
private AccessMode.Factory methodFactory(Class<?> clazz, Method finalFactory, Consumer<Object[]> factoryValidator, Type[] types, String[] params, Adapter<?, ?>[] converters, Adapter<?, ?>[] itemConverters, ObjectConverter.Codec<?>[] objectConverters) -
tryToCreateInstance
-
constructorFactory
private AccessMode.Factory constructorFactory(Constructor<?> finalConstructor, Consumer<Object[]> factoryValidator, Type[] types, String[] params, Adapter<?, ?>[] converters, Adapter<?, ?>[] itemConverters, 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, JohnzonConverter johnzonConverter) -
toConverter
-
newInstance
-
findReaders
- Specified by:
findReadersin interfaceAccessMode
-
validateAnnotationsOnTransientField
-
findWriters
- Specified by:
findWritersin interfaceAccessMode
-
findReader
- Specified by:
findReaderin interfaceAccessMode
-
findWriter
- Specified by:
findWriterin interfaceAccessMode
-
findAdapter
- Specified by:
findAdapterin interfaceAccessMode
-
findAnyGetter
- Specified by:
findAnyGetterin interfaceAccessMode
-
findAnySetter
- Specified by:
findAnySetterin interfaceAccessMode
-
findAnyField
- Specified by:
findAnyFieldin interfaceAccessMode
-
afterParsed
Description copied from interface:AccessModeCalled once johnzon will not use AccessMode anymore. Can be used to clean up any local cache.- Specified by:
afterParsedin interfaceAccessMode- Parameters:
clazz- the parsed class.
-
isReversedAdapter
-
toClass
-
isNillable
private boolean isNillable(jakarta.json.bind.annotation.JsonbProperty property, jakarta.json.bind.annotation.JsonbNillable propertyNillable, jakarta.json.bind.annotation.JsonbNillable classOrPackageNillable) -
getClassEntry
-
findOptionalType
-
isOptional
-
isOptionalArray
-
isTransient
private boolean isTransient(AccessMode.DecoratedType dt, jakarta.json.bind.config.PropertyVisibilityStrategy visibility, Class<?> root, boolean read) -
shouldSkip
private boolean shouldSkip(jakarta.json.bind.config.PropertyVisibilityStrategy visibility, AccessMode.DecoratedType t, Class<?> root, boolean read) -
isTransient
-
isNotVisible
private boolean isNotVisible(jakarta.json.bind.config.PropertyVisibilityStrategy visibility, AccessMode.DecoratedType t, Class<?> root, boolean read) -
orderComparator
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-
getAnnotation
-
getAnnotationOnParameterOrParameterType
private static <T extends Annotation> T getAnnotationOnParameterOrParameterType(Parameter param, Class<T> api) -
clean
-
isDateType
-
isNumberType
-
hasRawType
-
getRawTargetType
-