Polishing

This commit is contained in:
Juergen Hoeller
2018-02-13 13:15:29 +01:00
parent c11a963b1e
commit d3cee45f30
6 changed files with 47 additions and 32 deletions

View File

@@ -1,5 +1,20 @@
package org.springframework.cache.jcache.interceptor;
/*
* Copyright 2002-2018 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.cache.jcache.interceptor;
import java.util.Collection;
import java.util.Collections;
@@ -23,17 +38,19 @@ class CacheResolverAdapter implements CacheResolver {
private final javax.cache.annotation.CacheResolver target;
/**
* Create a new instance with the JSR-107 cache resolver to invoke.
*/
public CacheResolverAdapter(javax.cache.annotation.CacheResolver target) {
Assert.notNull(target, "JSR-107 cache resolver must be set.");
Assert.notNull(target, "JSR-107 CacheResolver is required");
this.target = target;
}
/**
* Return the underlying {@link javax.cache.annotation.CacheResolver} that this
* instance is using.
* Return the underlying {@link javax.cache.annotation.CacheResolver}
* that this instance is using.
*/
protected javax.cache.annotation.CacheResolver getTarget() {
return target;
@@ -45,8 +62,10 @@ class CacheResolverAdapter implements CacheResolver {
throw new IllegalStateException("Unexpected context " + context);
}
CacheInvocationContext<?> cacheInvocationContext = (CacheInvocationContext<?>) context;
javax.cache.Cache<Object, Object> cache = target.resolveCache(cacheInvocationContext);
Assert.notNull(cache, () -> "Cannot resolve cache for '" + context + "' using '" + target + "'");
javax.cache.Cache<Object, Object> cache = this.target.resolveCache(cacheInvocationContext);
if (cache == null) {
throw new IllegalStateException("Could not resolve cache for " + context + " using " + this.target);
}
return Collections.singleton(new JCacheCache(cache));
}