org.springframework.data.gemfire.repository.config
Annotation Type EnableGemfireRepositories


@Target(value=TYPE)
@Retention(value=RUNTIME)
@Documented
@Inherited
@Import(value=GemfireRepositoriesRegistrar.class)
public @interface EnableGemfireRepositories

Annotation to enable Gemfire repositories.


Optional Element Summary
 Class<?>[] basePackageClasses
          Type-safe alternative to basePackages() for specifying the packages to scan for annotated components.
 String[] basePackages
          Base packages to scan for annotated components.
 ComponentScan.Filter[] excludeFilters
          Specifies which types are not eligible for component scanning.
 ComponentScan.Filter[] includeFilters
          Specifies which types are eligible for component scanning.
 String mappingContextRef
          Configures the name of the GemfireMappingContext bean definition to be used to create repositories discovered through this annotation.
 String namedQueriesLocation
          Configures the location of where to find the Spring Data named queries properties file.
 org.springframework.data.repository.query.QueryLookupStrategy.Key queryLookupStrategy
          Returns the key of the QueryLookupStrategy to be used for lookup queries for query methods.
 Class<?> repositoryFactoryBeanClass
          Returns the FactoryBean class to be used for each repository instance.
 String repositoryImplementationPostfix
          Returns the postfix to be used when looking up custom repository implementations.
 String[] value
          Alias for the basePackages() attribute.
 

value

public abstract String[] value
Alias for the basePackages() attribute. Allows for more concise annotation declarations, e.g. @EnableGemfireRepositories("org.my.pkg") instead of @EnableGemfireRepositories(basePackages="org.my.pkg").

Returns:
a String array specifying the packages to search for GemFire Repositories.
See Also:
basePackages()
Default:
{}

basePackages

public abstract String[] basePackages
Base packages to scan for annotated components. value() is an alias for (and mutually exclusive with) this attribute. Use basePackageClasses() for a type-safe alternative to String-based package names.

Returns:
a String array specifying the packages to search for GemFire Repositories.
See Also:
value()
Default:
{}

basePackageClasses

public abstract Class<?>[] basePackageClasses
Type-safe alternative to basePackages() for specifying the packages to scan for annotated components. The package of each class specified will be scanned. Consider creating a special no-op marker class or interface in each package that serves no purpose other than being referenced by this attribute.

Returns:
an array of classes used to determine the packages to scan for GemFire Repositories.
Default:
{}

includeFilters

public abstract ComponentScan.Filter[] includeFilters
Specifies which types are eligible for component scanning. Further narrows the set of candidate components from everything in basePackages() to everything in the base packages that matches the given filter or filters.

Returns:
an array of Filters used to specify Repositories to be included during the component scan.
Default:
{}

excludeFilters

public abstract ComponentScan.Filter[] excludeFilters
Specifies which types are not eligible for component scanning.

Returns:
an array of Filters used to specify Repositories to be excluded during the component scan.
Default:
{}

repositoryImplementationPostfix

public abstract String repositoryImplementationPostfix
Returns the postfix to be used when looking up custom repository implementations. Defaults to Impl. So for a repository named PersonRepository the corresponding implementation class will be looked up scanning for PersonRepositoryImpl.

Returns:
a String indicating the postfix to append to the Repository interface name when looking up the custom Repository implementing class.
Default:
"Impl"

namedQueriesLocation

public abstract String namedQueriesLocation
Configures the location of where to find the Spring Data named queries properties file. Will default to META-INFO/jpa-named-queries.properties.

Returns:
a String indicating the location of the name queries properties file.
Default:
""

queryLookupStrategy

public abstract org.springframework.data.repository.query.QueryLookupStrategy.Key queryLookupStrategy
Returns the key of the QueryLookupStrategy to be used for lookup queries for query methods. Defaults to QueryLookupStrategy.Key.CREATE_IF_NOT_FOUND.

Returns:
the Key used to determine the Query lookup and creation strategy.
Default:
org.springframework.data.repository.query.QueryLookupStrategy.Key.CREATE_IF_NOT_FOUND

repositoryFactoryBeanClass

public abstract Class<?> repositoryFactoryBeanClass
Returns the FactoryBean class to be used for each repository instance. Defaults to GemfireRepositoryFactoryBean.

Returns:
the FactoryBean class type used for each Repository interface.
Default:
org.springframework.data.gemfire.repository.support.GemfireRepositoryFactoryBean.class

mappingContextRef

public abstract String mappingContextRef
Configures the name of the GemfireMappingContext bean definition to be used to create repositories discovered through this annotation. If not configured a default one will be created.

Returns:
the bean name of the MappingContext used by the Repository to map entities to the underlying data store.
Default:
""