/*
 * Hibernate, Relational Persistence for Idiomatic Java
 *
 * License: GNU Lesser General Public License (LGPL), version 2.1 or later.
 * See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
 */
package org.hibernate.annotations;

import java.lang.annotation.Retention;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

Used to specify that the natural id values associated with the annotated entity should be cached in Hibernate's shared (L2) cache. Can optionally name a custom cache region.
Author:Eric Dalquist, Steve Ebersole
See Also:
/** * Used to specify that the natural id values associated with the annotated entity should be cached in Hibernate's * shared (L2) cache. Can optionally name a custom cache region. * * @author Eric Dalquist * @author Steve Ebersole * * @see NaturalId */
@Target(TYPE) @Retention(RUNTIME) public @interface NaturalIdCache {
The cache region name. null or empty-string (the default) are interpreted as {entity-name}##NaturalId
/** * The cache region name. {@code null} or empty-string (the default) are interpreted as * {@code {entity-name}##NaturalId} */
String region() default ""; }