/** * Creates the standard BeanDescriptorProvider that will be used to provide * {@link com.owlike.genson.reflect.BeanDescriptor BeanDescriptor} instances for * serialization/deserialization of all types that couldn't be handled by standard and * custom converters and converter factories. * * @return the BeanDescriptorProvider instance. */ protected BeanDescriptorProvider createBeanDescriptorProvider() { ContextualConverterFactory contextualConverterFactory = new ContextualConverterFactory(contextualFactories); BeanPropertyFactory beanPropertyFactory = createBeanPropertyFactory(); List<BeanDescriptorProvider> providers = new ArrayList<BeanDescriptorProvider>(); for (GensonBundle bundle : _bundles) { BeanDescriptorProvider provider = bundle.createBeanDescriptorProvider(contextualConverterFactory, beanPropertyFactory, getMutatorAccessorResolver(), getPropertyNameResolver(), this); if (provider != null) providers.add(provider); } providers.add(new BaseBeanDescriptorProvider( new AbstractBeanDescriptorProvider.ContextualConverterFactory(contextualFactories), createBeanPropertyFactory(), getMutatorAccessorResolver(), getPropertyNameResolver(), useGettersAndSetters, useFields, true )); return new CompositeBeanDescriptorProvider(providers); }
/** * Creates the standard BeanDescriptorProvider that will be used to provide * {@link com.owlike.genson.reflect.BeanDescriptor BeanDescriptor} instances for * serialization/deserialization of all types that couldn't be handled by standard and * custom converters and converter factories. * * @return the BeanDescriptorProvider instance. */ protected BeanDescriptorProvider createBeanDescriptorProvider() { ContextualConverterFactory contextualConverterFactory = new ContextualConverterFactory(contextualFactories); BeanPropertyFactory beanPropertyFactory = createBeanPropertyFactory(); List<BeanDescriptorProvider> providers = new ArrayList<BeanDescriptorProvider>(); for (GensonBundle bundle : _bundles) { BeanDescriptorProvider provider = bundle.createBeanDescriptorProvider(contextualConverterFactory, beanPropertyFactory, getMutatorAccessorResolver(), getPropertyNameResolver(), this); if (provider != null) providers.add(provider); } providers.add(new BaseBeanDescriptorProvider( new AbstractBeanDescriptorProvider.ContextualConverterFactory(contextualFactories), createBeanPropertyFactory(), getMutatorAccessorResolver(), getPropertyNameResolver(), useGettersAndSetters, useFields, true )); return new CompositeBeanDescriptorProvider(providers); }