Package org.springframework.web.servlet.resource

# Class CachingResourceTransformer

java.lang.Object
org.springframework.web.servlet.resource.CachingResourceTransformer

All Implemented Interfaces:
  `ResourceTransformer`

public class CachingResourceTransformer extends Object implements ResourceTransformer
A `ResourceTransformer` that checks a `Cache` to see if a previously transformed resource exists in the cache and returns it if found, and otherwise delegates to the resolver chain and saves the result in the cache.

Since:
  4.1
Author:
  Rossen Stoyanchev

## Constructor Summary

Constructors
Constructor
Description
`CachingResourceTransformer(org.springframework.cache.Cache cache)`
`CachingResourceTransformer(org.springframework.cache.CacheManager cacheManager, String cacheName)`

## Method Summary

Modifier and Type
Method
Description
`org.springframework.cache.Cache`
`getCache()`
Return the configured `Cache`.
`org.springframework.core.io.Resource`
`transform(HttpServletRequest request, org.springframework.core.io.Resource resource, ResourceTransformerChain transformerChain)`
Transform the given resource.

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

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

## Constructor Details

### CachingResourceTransformer

public CachingResourceTransformer(org.springframework.cache.Cache cache)

### CachingResourceTransformer

public CachingResourceTransformer(org.springframework.cache.CacheManager cacheManager, String cacheName)

## Method Details

### getCache

public org.springframework.cache.Cache getCache()
Return the configured `Cache`.

### transform

public org.springframework.core.io.Resource transform(HttpServletRequest request, org.springframework.core.io.Resource resource, ResourceTransformerChain transformerChain) throws IOException
Description copied from interface: `ResourceTransformer`
Transform the given resource.

Specified by:
  `transform` in interface `ResourceTransformer`
Parameters:
  `request` - the current request
  `resource` - the resource to transform
  `transformerChain` - the chain of remaining transformers to delegate to
Returns:
  the transformed resource (never `null`)
Throws:
  `IOException` - if the transformation fails