Package org.eclipse.persistence.config
Enum CacheIsolationType
- java.lang.Object
-
- java.lang.Enum<CacheIsolationType>
-
- org.eclipse.persistence.config.CacheIsolationType
-
- All Implemented Interfaces:
Serializable
,Comparable<CacheIsolationType>
public enum CacheIsolationType extends Enum<CacheIsolationType>
Options for how Entity instances should be shared within an EclipseLink Persistence Unit / ServerSession- Since:
- EclipseLink 2.2
- Author:
- Gordon Yorke
- See Also:
ClassDescriptor.setCacheIsolation(CacheIsolationType)
,annotations.Cache
-
-
Enum Constant Summary
Enum Constants Enum Constant Description ISOLATED
The Entity and its data is not stored in the shared cache but is isolated to the Persistence Context/UnitOfWork or IsolatedClientSession.PROTECTED
Entity state information will be cached in the shared cache but Entity instances will not be shared.SHARED
Entity instances will be cached within the EntityManagerFactory/ServerSession level.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static CacheIsolationType
valueOf(String name)
Returns the enum constant of this type with the specified name.static CacheIsolationType[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
SHARED
public static final CacheIsolationType SHARED
Entity instances will be cached within the EntityManagerFactory/ServerSession level. Any user queries for shared cache instances (ie Read-Only query hint) will return an Entity instance that may be shared by multiple clients. This setting is the default isolation level.
-
PROTECTED
public static final CacheIsolationType PROTECTED
Entity state information will be cached in the shared cache but Entity instances will not be shared. Any user queries for shared cache instances (ie Read-Only query hint) will return a new Entity instance with the cached state. This will ensure the instance is protected from any concurrent state change.
-
ISOLATED
public static final CacheIsolationType ISOLATED
The Entity and its data is not stored in the shared cache but is isolated to the Persistence Context/UnitOfWork or IsolatedClientSession. This setting effectively disables second level caching for this entity and should be used when users do not want caching for a particular Entity.
-
-
Method Detail
-
values
public static CacheIsolationType[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (CacheIsolationType c : CacheIsolationType.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static CacheIsolationType valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null
-
-