/*
* =============================================================================
*
* Copyright (c) 2011-2016, The THYMELEAF team (http://www.thymeleaf.org)
*
* 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.thymeleaf.cache;
/**
* <p>
* Simple implementation of {@link ICacheEntryValidity}
* that considers the template resolution to be always cacheable
* and always valid.
* </p>
* <p>
* This means that a cache entry for this template resolution would
* only be evicted by the effect of LRU (being the least-recently
* used entry).
* </p>
*
*
* @author Daniel Fernández
*
* @since 1.0
*
*/
public class AlwaysValidCacheEntryValidity
implements ICacheEntryValidity {
/**
* <p>
* Singleton instance. Meant to avoid creating too many objects of this class.
* </p>
*/
public static final AlwaysValidCacheEntryValidity INSTANCE =
new AlwaysValidCacheEntryValidity();
public AlwaysValidCacheEntryValidity() {
super();
}
/**
* <p>
* Returns true. Templates are always considered cacheable using this
* validity implementation.
* </p>
*
* @return true
*/
public boolean isCacheable() {
return true;
}
/**
* <p>
* Returns true. Template cache entries using this validity are always
* considered valid, and thus only evicted from cache by LRU.
* </p>
*
* @return true
*/
public boolean isCacheStillValid() {
return true;
}
}