public class CassandraMappingBeanFactoryPostProcessor extends Object implements BeanDefinitionRegistryPostProcessor
BeanDefinitionRegistryPostProcessor
that does its best to register any missing Spring Data Cassandra beans
that can be defaulted. Specifically, it attempts to create default bean definitions for the following required
interface types via their default implementation types:
CassandraOperations
via CassandraTemplate
CassandraMappingContext
via BasicCassandraMappingContext
CassandraConverter
via MappingCassandraConverter
IllegalStateException
is
thrown. For example, if there are two definitions for type CassandraMappingContext
present and no definition
for type CassandraConverter
, then it's impossible to know which CassandraMappingContext
is to be used
when creating a default definition for the CassandraConverter
.
If a single definition of a required type is present, then it is used. For example, if there is already a
CassandraMappingContext
definition present, then it will be used in the BasicCassandraMappingContext
bean definition.
It requires that a single Session
or CassandraSessionFactoryBean
definition be present. As described
above, multiple Session
definitions, multiple CassandraSessionFactoryBean
definitions, or both a
Session
and CassandraSessionFactoryBean
will cause an IllegalStateException
to be thrown.Constructor and Description |
---|
CassandraMappingBeanFactoryPostProcessor() |
Modifier and Type | Method and Description |
---|---|
protected IllegalStateException |
createSessionException(int beanDefinitionCount,
Class<?>... types) |
String |
findSessionBeanName(BeanDefinitionRegistry registry,
ListableBeanFactory factory) |
void |
postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry)
|
void |
postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory)
Does nothing.
|
BeanDefinitionHolder |
registerDefaultConverter(BeanDefinitionRegistry registry,
String contextBeanName) |
BeanDefinitionHolder |
registerDefaultTemplate(BeanDefinitionRegistry registry,
String sessionBeanName,
String converterBeanName) |
protected void |
registerMissingDefaultableBeanDefinitions(BeanDefinitionRegistry registry,
ListableBeanFactory factory) |
protected BeanDefinitionHolder |
regsiterDefaultContext(BeanDefinitionRegistry registry) |
public CassandraMappingBeanFactoryPostProcessor()
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException
postProcessBeanFactory
in interface BeanFactoryPostProcessor
BeansException
public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException
postProcessBeanDefinitionRegistry
in interface BeanDefinitionRegistryPostProcessor
BeansException
protected void registerMissingDefaultableBeanDefinitions(BeanDefinitionRegistry registry, ListableBeanFactory factory)
public String findSessionBeanName(BeanDefinitionRegistry registry, ListableBeanFactory factory)
protected IllegalStateException createSessionException(int beanDefinitionCount, Class<?>... types)
protected BeanDefinitionHolder regsiterDefaultContext(BeanDefinitionRegistry registry)
public BeanDefinitionHolder registerDefaultConverter(BeanDefinitionRegistry registry, String contextBeanName)
public BeanDefinitionHolder registerDefaultTemplate(BeanDefinitionRegistry registry, String sessionBeanName, String converterBeanName)
Copyright © 2011-2015–2017 Pivotal Software, Inc.. All rights reserved.