Browse Source
Prior to this change, a resource handler chain configured with a `VersionResourceResolver` would add the resource version to the request attributes when serving that resource. This approach would not work when a `CachingResourceResolver` is configured and the resource is already cached. Indeed, that code path is not executed when the resource is resolved from the cache. This commit adds a new `VersionedResource` interface that's used by the `VersionResourceResolver`, adding a `getVersion()` method that returns the version string for that resource. This way, the version information is cached with the resource itself and the request attributes are no longer used for this. Issue: SPR-13817pull/949/head
5 changed files with 143 additions and 36 deletions
@ -0,0 +1,32 @@
@@ -0,0 +1,32 @@
|
||||
/* |
||||
* Copyright 2002-2016 the original author or authors. |
||||
* |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.springframework.web.servlet.resource; |
||||
|
||||
import org.springframework.core.io.Resource; |
||||
|
||||
/** |
||||
* Interface for a resource descriptor that describes its version |
||||
* with a version string that can be derived from its content and/or metadata. |
||||
* |
||||
* @author Brian Clozel |
||||
* @since 4.2 |
||||
* @see VersionResourceResolver |
||||
*/ |
||||
public interface VersionedResource extends Resource { |
||||
|
||||
String getVersion(); |
||||
} |
||||
Loading…
Reference in new issue