org.hibernate.cache.spi
Class UpdateTimestampsCache

java.lang.Object
  extended by org.hibernate.cache.spi.UpdateTimestampsCache

public class UpdateTimestampsCache
extends Object

Tracks the timestamps of the most recent updates to particular tables. It is important that the cache timeout of the underlying cache implementation be set to a higher value than the timeouts of any of the query caches. In fact, we recommend that the the underlying cache not be configured for expiry at all. Note, in particular, that an LRU cache expiry policy is never appropriate.


Field Summary
static String REGION_NAME
           
 
Constructor Summary
UpdateTimestampsCache(Settings settings, Properties props)
           
UpdateTimestampsCache(Settings settings, Properties props, SessionFactoryImplementor factory)
           
 
Method Summary
 void clear()
           
 void destroy()
           
 TimestampsRegion getRegion()
           
 void invalidate(Serializable[] spaces, SessionImplementor session)
          Perform invalidation.
 boolean isUpToDate(Set<Serializable> spaces, Long timestamp, SessionImplementor session)
          Perform an up-to-date check for the given set of query spaces.
 void preInvalidate(Serializable[] spaces, SessionImplementor session)
          Perform pre-invalidation.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

REGION_NAME

public static final String REGION_NAME
Constructor Detail

UpdateTimestampsCache

public UpdateTimestampsCache(Settings settings,
                             Properties props,
                             SessionFactoryImplementor factory)
                      throws HibernateException
Throws:
HibernateException

UpdateTimestampsCache

public UpdateTimestampsCache(Settings settings,
                             Properties props)
                      throws HibernateException
Throws:
HibernateException
Method Detail

preInvalidate

public void preInvalidate(Serializable[] spaces,
                          SessionImplementor session)
                   throws CacheException
Perform pre-invalidation.

Parameters:
spaces - The spaces to pre-invalidate
session -
Throws:
CacheException - Indicated problem delegating to underlying region.

invalidate

public void invalidate(Serializable[] spaces,
                       SessionImplementor session)
                throws CacheException
Perform invalidation.

Parameters:
spaces - The spaces to pre-invalidate
session -
Throws:
CacheException - Indicated problem delegating to underlying region.

isUpToDate

public boolean isUpToDate(Set<Serializable> spaces,
                          Long timestamp,
                          SessionImplementor session)
                   throws CacheException
Perform an up-to-date check for the given set of query spaces.

Parameters:
spaces - The spaces to check
timestamp - The timestamp against which to check.
session -
Returns:
Whether all those spaces are up-to-date
Throws:
CacheException - Indicated problem delegating to underlying region.

clear

public void clear()
           throws CacheException
Throws:
CacheException

destroy

public void destroy()

getRegion

public TimestampsRegion getRegion()

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2001-2015 Red Hat, Inc. All Rights Reserved.