Class CoherenceRegionFactory
java.lang.Object
org.hibernate.cache.spi.AbstractRegionFactory
org.hibernate.cache.spi.support.RegionFactoryTemplate
com.oracle.coherence.hibernate.cache.v53.CoherenceRegionFactory
- All Implemented Interfaces:
Serializable,org.hibernate.cache.spi.RegionFactory,org.hibernate.service.Service,org.hibernate.service.spi.Stoppable
public class CoherenceRegionFactory
extends org.hibernate.cache.spi.support.RegionFactoryTemplate
A CoherenceRegionFactory is a factory for regions of Hibernate second-level cache implemented with Oracle Coherence.
- Since:
- 2.1
- Author:
- Randy Stafford, Gunnar Hillert
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected com.tangosol.net.Sessionprotected CoherenceHibernateSystemPropertyResolverFields inherited from class org.hibernate.cache.spi.AbstractRegionFactory
LEGACY_QUERY_RESULTS_REGION_UNQUALIFIED_NAMES, LEGACY_UPDATE_TIMESTAMPS_REGION_UNQUALIFIED_NAMESFields inherited from interface org.hibernate.cache.spi.RegionFactory
DEFAULT_QUERY_RESULTS_REGION_UNQUALIFIED_NAME, DEFAULT_UPDATE_TIMESTAMPS_REGION_UNQUALIFIED_NAME -
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.CoherenceRegionFactory(com.tangosol.net.Session coherenceSession) Constructor that allows to pass-in an externally created CoherenceSession. -
Method Summary
Modifier and TypeMethodDescriptionorg.hibernate.cache.spi.DomainDataRegionbuildDomainDataRegion(org.hibernate.cache.cfg.spi.DomainDataRegionConfig regionConfig, org.hibernate.cache.cfg.spi.DomainDataRegionBuildingContext buildingContext) protected CoherenceRegioncreateCoherenceRegion(String unqualifiedRegionName, org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory) protected org.hibernate.cache.spi.support.DomainDataStorageAccesscreateDomainDataStorageAccess(org.hibernate.cache.cfg.spi.DomainDataRegionConfig regionConfig, org.hibernate.cache.cfg.spi.DomainDataRegionBuildingContext buildingContext) protected org.hibernate.cache.spi.support.StorageAccesscreateQueryResultsRegionStorageAccess(String regionName, org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory) protected org.hibernate.cache.spi.support.StorageAccesscreateTimestampsRegionStorageAccess(String regionName, org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory) protected com.tangosol.net.NamedCache<?,?> ensureNamedCache(String cacheName) Ensure the initialization of a NamedCache of the argument name.protected com.tangosol.net.SessionReturns the CoherenceSessionused by thisCoherenceRegionFactory.org.hibernate.cache.spi.access.AccessTypeprotected org.hibernate.cache.spi.CacheKeysFactorybooleanlongprotected voidprepareForUse(org.hibernate.boot.spi.SessionFactoryOptions settings, Map configValues) protected voidprotected voidsetCoherenceSession(com.tangosol.net.Session coherenceSession) Sets the CoherenceSessionused by thisCoherenceRegionFactory.toString()Methods inherited from class org.hibernate.cache.spi.support.RegionFactoryTemplate
buildQueryResultsRegion, buildTimestampsRegionMethods inherited from class org.hibernate.cache.spi.AbstractRegionFactory
createTransactionContext, getOptions, getTimeout, isStarted, qualify, start, stop, verifiedStartStatus, verifyStarted
-
Field Details
-
systemPropertyResolver
-
coherenceSession
protected transient com.tangosol.net.Session coherenceSession
-
-
Constructor Details
-
CoherenceRegionFactory
public CoherenceRegionFactory()Default constructor. Any Coherence instances created will implicitly require a shutdown of Coherence whenAbstractRegionFactory.stop()is called viareleaseFromUse(). This option will by default start Coherence as a Cache client. This means that Coherence services are disabled by default (e.g. Local Storage). You can start Coherence as a CacheServer and local storage will be enabled by default and all default services will be started as well. Please provide propertyCoherenceHibernateProperties.START_CACHE_SERVER_PROPERTY_NAME -
CoherenceRegionFactory
public CoherenceRegionFactory(com.tangosol.net.Session coherenceSession) Constructor that allows to pass-in an externally created CoherenceSession. In this case the external caller is responsible for any needed Coherence shut-downs whenAbstractRegionFactory.stop()is called viareleaseFromUse(). This means that call toAbstractRegionFactory.stop()will NOT result in a shutdown of Coherence; only theSessionis closed.- Parameters:
coherenceSession- must not be null
-
-
Method Details
-
getImplicitCacheKeysFactory
protected org.hibernate.cache.spi.CacheKeysFactory getImplicitCacheKeysFactory()- Overrides:
getImplicitCacheKeysFactoryin classorg.hibernate.cache.spi.support.RegionFactoryTemplate
-
getCoherenceSession
protected com.tangosol.net.Session getCoherenceSession()Returns the CoherenceSessionused by thisCoherenceRegionFactory.- Returns:
- the Coherence
Session
-
setCoherenceSession
protected void setCoherenceSession(com.tangosol.net.Session coherenceSession) Sets the CoherenceSessionused by thisCoherenceRegionFactory.- Parameters:
coherenceSession- the CoherenceSessionused by this CoherenceRegionFactory. May be null.
-
toString
-
prepareForUse
protected void prepareForUse(org.hibernate.boot.spi.SessionFactoryOptions settings, Map configValues) - Specified by:
prepareForUsein classorg.hibernate.cache.spi.AbstractRegionFactory
-
releaseFromUse
protected void releaseFromUse()- Specified by:
releaseFromUsein classorg.hibernate.cache.spi.AbstractRegionFactory
-
isMinimalPutsEnabledByDefault
public boolean isMinimalPutsEnabledByDefault()see also https://stackoverflow.com/a/12389310/835934
- Specified by:
isMinimalPutsEnabledByDefaultin interfaceorg.hibernate.cache.spi.RegionFactory- Overrides:
isMinimalPutsEnabledByDefaultin classorg.hibernate.cache.spi.AbstractRegionFactory
-
getDefaultAccessType
public org.hibernate.cache.spi.access.AccessType getDefaultAccessType()- Specified by:
getDefaultAccessTypein interfaceorg.hibernate.cache.spi.RegionFactory- Overrides:
getDefaultAccessTypein classorg.hibernate.cache.spi.AbstractRegionFactory
-
nextTimestamp
public long nextTimestamp()- Specified by:
nextTimestampin interfaceorg.hibernate.cache.spi.RegionFactory- Overrides:
nextTimestampin classorg.hibernate.cache.spi.AbstractRegionFactory
-
ensureNamedCache
Ensure the initialization of a NamedCache of the argument name.- Parameters:
cacheName- the name of the NamedCache whose initialization to ensure- Returns:
- a NamedCache for the argument name
-
createDomainDataStorageAccess
protected org.hibernate.cache.spi.support.DomainDataStorageAccess createDomainDataStorageAccess(org.hibernate.cache.cfg.spi.DomainDataRegionConfig regionConfig, org.hibernate.cache.cfg.spi.DomainDataRegionBuildingContext buildingContext) - Overrides:
createDomainDataStorageAccessin classorg.hibernate.cache.spi.support.RegionFactoryTemplate
-
createTimestampsRegionStorageAccess
protected org.hibernate.cache.spi.support.StorageAccess createTimestampsRegionStorageAccess(String regionName, org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory) - Specified by:
createTimestampsRegionStorageAccessin classorg.hibernate.cache.spi.support.RegionFactoryTemplate
-
createQueryResultsRegionStorageAccess
protected org.hibernate.cache.spi.support.StorageAccess createQueryResultsRegionStorageAccess(String regionName, org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory) - Specified by:
createQueryResultsRegionStorageAccessin classorg.hibernate.cache.spi.support.RegionFactoryTemplate
-
createCoherenceRegion
protected CoherenceRegion createCoherenceRegion(String unqualifiedRegionName, org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory) -
buildDomainDataRegion
public org.hibernate.cache.spi.DomainDataRegion buildDomainDataRegion(org.hibernate.cache.cfg.spi.DomainDataRegionConfig regionConfig, org.hibernate.cache.cfg.spi.DomainDataRegionBuildingContext buildingContext) - Specified by:
buildDomainDataRegionin interfaceorg.hibernate.cache.spi.RegionFactory- Overrides:
buildDomainDataRegionin classorg.hibernate.cache.spi.support.RegionFactoryTemplate
-