Package org.springframework.cache.annotation

# Class CachingConfigurationSelector

java.lang.Object
org.springframework.context.annotation.AdviceModeImportSelector<EnableCaching>
org.springframework.cache.annotation.CachingConfigurationSelector

All Implemented Interfaces:
  `ImportSelector`

public class CachingConfigurationSelector extends AdviceModeImportSelector<EnableCaching>
Selects which implementation of `AbstractCachingConfiguration` should be used based on the value of `EnableCaching.mode()` on the importing `@Configuration` class.

Detects the presence of JSR-107 and enables JCache support accordingly.

Since:
  3.1
Author:
  Chris Beams, Stephane Nicoll
See Also:
  - `EnableCaching`
  - `ProxyCachingConfiguration`

## Field Summary

### Fields inherited from class org.springframework.context.annotation.AdviceModeImportSelector

`DEFAULT_ADVICE_MODE_ATTRIBUTE_NAME`

## Constructor Summary

Constructors
Constructor
Description
`CachingConfigurationSelector()`

## Method Summary

Modifier and Type
Method
Description
`String[]`
`selectImports(AdviceMode adviceMode)`
Returns `ProxyCachingConfiguration` or `AspectJCachingConfiguration` for `PROXY` and `ASPECTJ` values of `EnableCaching.mode()`, respectively.

### Methods inherited from class org.springframework.context.annotation.AdviceModeImportSelector

`getAdviceModeAttributeName, selectImports`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.springframework.context.annotation.ImportSelector

`getExclusionFilter`

## Constructor Details

### CachingConfigurationSelector

public CachingConfigurationSelector()

## Method Details

### selectImports

public String[] selectImports(AdviceMode adviceMode)
Returns `ProxyCachingConfiguration` or `AspectJCachingConfiguration` for `PROXY` and `ASPECTJ` values of `EnableCaching.mode()`, respectively. Potentially includes corresponding JCache configuration as well.

Specified by:
  `selectImports` in class `AdviceModeImportSelector<EnableCaching>`
Parameters:
  `adviceMode` - the value of the advice mode attribute for the annotation specified via generics.
Returns:
  array containing classes to import (empty array if none; `null` if the given `AdviceMode` is unknown)