Class BeanViewDescriptorProvider
- java.lang.Object
-
- com.oracle.coherence.io.json.genson.reflect.AbstractBeanDescriptorProvider
-
- com.oracle.coherence.io.json.genson.reflect.BaseBeanDescriptorProvider
-
- com.oracle.coherence.io.json.genson.reflect.BeanViewDescriptorProvider
-
- All Implemented Interfaces:
BeanDescriptorProvider
public class BeanViewDescriptorProvider extends BaseBeanDescriptorProvider
This class constructs BeanDescriptors for theBeanViewmechanism. This class is mainly intended for internal use. It can be directly used if needed to get a BeanDescriptor instance for a BeanView (for example if you want to deserialize into an existing object and apply a BeanView). Extending BeanViewDescriptorProvider should be avoided.- Author:
- Eugen Cepoi
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classBeanViewDescriptorProvider.BeanViewMutatorAccessorResolverstatic classBeanViewDescriptorProvider.BeanViewPropertyFactory-
Nested classes/interfaces inherited from class com.oracle.coherence.io.json.genson.reflect.AbstractBeanDescriptorProvider
AbstractBeanDescriptorProvider.ContextualConverterFactory, AbstractBeanDescriptorProvider.ContextualFactoryDecorator
-
Nested classes/interfaces inherited from interface com.oracle.coherence.io.json.genson.reflect.BeanDescriptorProvider
BeanDescriptorProvider.CompositeBeanDescriptorProvider
-
-
Field Summary
-
Fields inherited from class com.oracle.coherence.io.json.genson.reflect.BaseBeanDescriptorProvider
favorEmptyCreators, mutatorAccessorResolver, nameResolver, useFields, useGettersAndSetters
-
-
Constructor Summary
Constructors Constructor Description BeanViewDescriptorProvider(AbstractBeanDescriptorProvider.ContextualConverterFactory ctxConverterFactory, Map<Class<?>,BeanView<?>> views, BeanPropertyFactory propertyFactory, BeanMutatorAccessorResolver mutatorAccessorResolver, PropertyNameResolver nameResolver)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> BeanDescriptor<T>provide(Class<T> ofClass, Type ofType, Genson genson)Provides a BeanDescriptor that can serialize/deserialize "ofClass" type, based on "type" argument.List<BeanCreator>provideBeanCreators(Type ofType, Genson genson)Provides a list ofBeanCreatorfor type ofType.-
Methods inherited from class com.oracle.coherence.io.json.genson.reflect.BaseBeanDescriptorProvider
_mostSpecificPropertyDeclaringClass, _throwCouldCreateBeanDescriptor, checkAndMerge, checkAndMergeAccessors, checkAndMergeMutators, mergeAccessorsWithCreatorProperties, mergeMutatorsWithCreatorProperties, provideBeanPropertyAccessors, provideBeanPropertyMutators, provideConstructorCreators, provideFieldAccessors, provideFieldMutators, provideMethodAccessors, provideMethodCreators, provideMethodMutators, update
-
Methods inherited from class com.oracle.coherence.io.json.genson.reflect.AbstractBeanDescriptorProvider
create, provide
-
-
-
-
Constructor Detail
-
BeanViewDescriptorProvider
public BeanViewDescriptorProvider(AbstractBeanDescriptorProvider.ContextualConverterFactory ctxConverterFactory, Map<Class<?>,BeanView<?>> views, BeanPropertyFactory propertyFactory, BeanMutatorAccessorResolver mutatorAccessorResolver, PropertyNameResolver nameResolver)
-
-
Method Detail
-
provide
public <T> BeanDescriptor<T> provide(Class<T> ofClass, Type ofType, Genson genson)
Description copied from interface:BeanDescriptorProviderProvides a BeanDescriptor that can serialize/deserialize "ofClass" type, based on "type" argument. The arguments "ofClass" and "type" will be the same in most cases, but for example in BeanViews ofClass will correspond to the parameterized type and "type" to the BeanView implementation.- Specified by:
providein interfaceBeanDescriptorProvider- Overrides:
providein classAbstractBeanDescriptorProvider- Parameters:
ofClass- is the Class for which we need a BeanDescriptor that will be able to serialize/deserialize objects of that type;ofType- to use to build this descriptor (use its declared methods, fields, etc).genson- is the current Genson instance.- Returns:
- A BeanDescriptor instance able to serialize/deserialize objects of type ofClass.
-
provideBeanCreators
public List<BeanCreator> provideBeanCreators(Type ofType, Genson genson)
Description copied from class:AbstractBeanDescriptorProviderProvides a list ofBeanCreatorfor type ofType.- Overrides:
provideBeanCreatorsin classBaseBeanDescriptorProvider- Returns:
- a list of resolved bean creators
-
-