Interface ObjectMapper.Factory.Builder
- Enclosing interface:
- ObjectMapper.Factory
In general, with multiple applicable resolvers, the one registered last will take priority.
- Since:
- 4.0.0
-
Method Summary
Modifier and TypeMethodDescription<A extends Annotation,T>
ObjectMapper.Factory.BuilderaddConstraint(Class<A> definition, Class<T> valueType, Constraint.Factory<A, T> factory) Register aConstraintthat will be used to validate fields.default <A extends Annotation>
ObjectMapper.Factory.BuilderaddConstraint(Class<A> definition, Constraint.Factory<A, Object> factory) Register aConstraintthat will be used to validate fields.addDiscoverer(FieldDiscoverer<?> discoverer) Add a discoverer for a type of object.addNodeResolver(NodeResolver.Factory resolver) Add a resolver that will locate a node for a field.addPostProcessor(PostProcessor.Factory factory) Register an object post-processor with this object mapper.<A extends Annotation,T>
ObjectMapper.Factory.BuilderaddProcessor(Class<A> definition, Class<T> valueType, Processor.AdvancedFactory<A, T> factory) Register aProcessorthat will process fields after write.<A extends Annotation,T>
ObjectMapper.Factory.BuilderaddProcessor(Class<A> definition, Class<T> valueType, Processor.Factory<A, T> factory) Register aProcessorthat will process fields after write.default <A extends Annotation>
ObjectMapper.Factory.BuilderaddProcessor(Class<A> definition, Processor.AdvancedFactory<A, Object> factory) Register aProcessorthat will process fields after write.default <A extends Annotation>
ObjectMapper.Factory.BuilderaddProcessor(Class<A> definition, Processor.Factory<A, Object> factory) Register aProcessorthat will process fields after write.build()Create a new factory using the current configuration.defaultNamingScheme(NamingScheme scheme) Set the naming scheme to use as a default for field names.
-
Method Details
-
defaultNamingScheme
Set the naming scheme to use as a default for field names.This can be overridden by other
NodeResolversfor specific nodes.- Parameters:
scheme- naming scheme- Returns:
- this builder
- Since:
- 4.0.0
-
addNodeResolver
Add a resolver that will locate a node for a field.- Parameters:
resolver- the resolver- Returns:
- this builder
- Since:
- 4.0.0
-
addDiscoverer
Add a discoverer for a type of object.Field discoverers will be tried in order until one can produce the appropriate metadata.
- Parameters:
discoverer- field discoverer- Returns:
- this builder
- Since:
- 4.0.0
-
addProcessor
default <A extends Annotation> ObjectMapper.Factory.Builder addProcessor(Class<A> definition, Processor.Factory<A, Object> factory) Register aProcessorthat will process fields after write.Processors registered without a specific data type should be able to operate on any value type.
- Type Parameters:
A- annotation type- Parameters:
definition- annotation providing datafactory- factory for callback function- Returns:
- this builder
- Since:
- 4.0.0
-
addProcessor
<A extends Annotation,T> ObjectMapper.Factory.Builder addProcessor(Class<A> definition, Class<T> valueType, Processor.Factory<A, T> factory) Register aProcessorthat will process fields after write.All value types will be tested against types normalized to their boxed variants.
- Type Parameters:
A- annotation typeT- data type- Parameters:
definition- annotation providing datavalueType- value types the processor will handlefactory- factory for callback function- Returns:
- this builder
- Since:
- 4.0.0
-
addProcessor
default <A extends Annotation> ObjectMapper.Factory.Builder addProcessor(Class<A> definition, Processor.AdvancedFactory<A, Object> factory) Register aProcessorthat will process fields after write. The difference between an AdvancedFactory and a Factory is that an AdvancedFactory has access to all the annotations on the field, which makes more advanced processors possible.Processors registered without a specific data type should be able to operate on any value type.
- Type Parameters:
A- annotation type- Parameters:
definition- annotation providing datafactory- factory for callback function- Returns:
- this builder
- Since:
- 4.3.0
-
addProcessor
<A extends Annotation,T> ObjectMapper.Factory.Builder addProcessor(Class<A> definition, Class<T> valueType, Processor.AdvancedFactory<A, T> factory) Register aProcessorthat will process fields after write. The difference between an AdvancedFactory and a Factory is that an AdvancedFactory has access to all the annotations on the field, which makes more advanced processors possible.All value types will be tested against types normalized to their boxed variants.
- Type Parameters:
A- annotation typeT- data type- Parameters:
definition- annotation providing datavalueType- value types the processor will handlefactory- factory for callback function- Returns:
- this builder
- Since:
- 4.3.0
-
addConstraint
default <A extends Annotation> ObjectMapper.Factory.Builder addConstraint(Class<A> definition, Constraint.Factory<A, Object> factory) Register aConstraintthat will be used to validate fields.Constraints registered without a specific data type will be able to operate on any value type.
- Type Parameters:
A- annotation type- Parameters:
definition- annotations providing datafactory- factory for callback function- Returns:
- this builder
- Since:
- 4.0.0
-
addConstraint
<A extends Annotation,T> ObjectMapper.Factory.Builder addConstraint(Class<A> definition, Class<T> valueType, Constraint.Factory<A, T> factory) Register aConstraintthat will be used to validate fields.All value types will be tested against types normalized to their boxed variants.
- Type Parameters:
A- annotation typeT- data type- Parameters:
definition- annotations providing datavalueType- value types the processor will handlefactory- factory for callback function- Returns:
- this builder
- Since:
- 4.0.0
-
addPostProcessor
Register an object post-processor with this object mapper.All post-processors will be called, even if one throws an exception.
- Parameters:
factory- the factory optionally producing a post processor function- Returns:
- this builder
- Since:
- 4.2.0
-
build
Create a new factory using the current configuration.- Returns:
- new factory instance
- Since:
- 4.0.0
-