T
- the type of the repositorypublic abstract class RepositoryFactoryBeanSupport<T extends Repository<S,ID>,S,ID extends Serializable> extends Object implements org.springframework.beans.factory.InitializingBean, RepositoryFactoryInformation<S,ID>, org.springframework.beans.factory.FactoryBean<T>, org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.context.ApplicationEventPublisherAware
FactoryBean
interface to allow easy setup of repository factories via Spring
configuration.Modifier | Constructor and Description |
---|---|
protected |
RepositoryFactoryBeanSupport(Class<? extends T> repositoryInterface)
Creates a new
RepositoryFactoryBeanSupport for the given repository interface. |
Modifier and Type | Method and Description |
---|---|
void |
afterPropertiesSet() |
protected abstract RepositoryFactorySupport |
createRepositoryFactory()
Create the actual
RepositoryFactorySupport instance. |
EntityInformation<S,ID> |
getEntityInformation()
Returns
EntityInformation the repository factory is using. |
T |
getObject() |
Class<? extends T> |
getObjectType() |
PersistentEntity<?,?> |
getPersistentEntity()
Returns the
PersistentEntity managed by the underlying repository. |
List<QueryMethod> |
getQueryMethods()
Returns all
QueryMethod s declared for that repository. |
RepositoryInformation |
getRepositoryInformation()
Returns the
RepositoryInformation to determine meta-information about the repository being used. |
boolean |
isSingleton() |
void |
setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher publisher) |
void |
setBeanClassLoader(ClassLoader classLoader) |
void |
setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) |
void |
setCustomImplementation(Object customImplementation)
Setter to inject a custom repository implementation.
|
void |
setEvaluationContextProvider(EvaluationContextProvider evaluationContextProvider)
Sets the
EvaluationContextProvider to be used to evaluate SpEL expressions in manually defined queries. |
void |
setLazyInit(boolean lazy)
Configures whether to initialize the repository proxy lazily.
|
protected void |
setMappingContext(MappingContext<?,?> mappingContext)
Configures the
MappingContext to be used to lookup PersistentEntity instances for
getPersistentEntity() . |
void |
setNamedQueries(NamedQueries namedQueries)
Setter to inject a
NamedQueries instance. |
void |
setQueryLookupStrategyKey(QueryLookupStrategy.Key queryLookupStrategyKey)
Set the
QueryLookupStrategy.Key to be used. |
void |
setRepositoryBaseClass(Class<?> repositoryBaseClass)
Configures the repository base class to be used.
|
protected RepositoryFactoryBeanSupport(Class<? extends T> repositoryInterface)
RepositoryFactoryBeanSupport
for the given repository interface.repositoryInterface
- must not be null.public void setRepositoryBaseClass(Class<?> repositoryBaseClass)
repositoryBaseClass
- the repositoryBaseClass to set, can be null.public void setQueryLookupStrategyKey(QueryLookupStrategy.Key queryLookupStrategyKey)
QueryLookupStrategy.Key
to be used.queryLookupStrategyKey
- public void setCustomImplementation(Object customImplementation)
customImplementation
- public void setNamedQueries(NamedQueries namedQueries)
NamedQueries
instance.namedQueries
- the namedQueries to setprotected void setMappingContext(MappingContext<?,?> mappingContext)
MappingContext
to be used to lookup PersistentEntity
instances for
getPersistentEntity()
.mappingContext
- public void setEvaluationContextProvider(EvaluationContextProvider evaluationContextProvider)
EvaluationContextProvider
to be used to evaluate SpEL expressions in manually defined queries.evaluationContextProvider
- can be null, defaults to
DefaultEvaluationContextProvider.INSTANCE
.public void setLazyInit(boolean lazy)
lazyInit
- whether to initialize the repository proxy lazily. This defaults to false.public void setBeanClassLoader(ClassLoader classLoader)
setBeanClassLoader
in interface org.springframework.beans.factory.BeanClassLoaderAware
public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) throws org.springframework.beans.BeansException
setBeanFactory
in interface org.springframework.beans.factory.BeanFactoryAware
org.springframework.beans.BeansException
public void setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher publisher)
setApplicationEventPublisher
in interface org.springframework.context.ApplicationEventPublisherAware
public EntityInformation<S,ID> getEntityInformation()
RepositoryFactoryInformation
EntityInformation
the repository factory is using.getEntityInformation
in interface RepositoryFactoryInformation<S,ID extends Serializable>
public RepositoryInformation getRepositoryInformation()
RepositoryFactoryInformation
RepositoryInformation
to determine meta-information about the repository being used.getRepositoryInformation
in interface RepositoryFactoryInformation<S,ID extends Serializable>
public PersistentEntity<?,?> getPersistentEntity()
RepositoryFactoryInformation
PersistentEntity
managed by the underlying repository. Can be null in case the
underlying persistence mechanism does not expose a MappingContext
.getPersistentEntity
in interface RepositoryFactoryInformation<S,ID extends Serializable>
public List<QueryMethod> getQueryMethods()
RepositoryFactoryInformation
QueryMethod
s declared for that repository.getQueryMethods
in interface RepositoryFactoryInformation<S,ID extends Serializable>
public T getObject()
getObject
in interface org.springframework.beans.factory.FactoryBean<T extends Repository<S,ID>>
public Class<? extends T> getObjectType()
getObjectType
in interface org.springframework.beans.factory.FactoryBean<T extends Repository<S,ID>>
public boolean isSingleton()
isSingleton
in interface org.springframework.beans.factory.FactoryBean<T extends Repository<S,ID>>
public void afterPropertiesSet()
afterPropertiesSet
in interface org.springframework.beans.factory.InitializingBean
protected abstract RepositoryFactorySupport createRepositoryFactory()
RepositoryFactorySupport
instance.Copyright © 2011–2017 Pivotal Software, Inc.. All rights reserved.