com.atlassian.confluence.cache.hibernate
Class ConfluenceCacheStrategy

java.lang.Object
  extended by com.atlassian.confluence.cache.hibernate.ConfluenceCacheStrategy
All Implemented Interfaces:
net.sf.hibernate.cache.CacheConcurrencyStrategy

public class ConfluenceCacheStrategy
extends Object
implements net.sf.hibernate.cache.CacheConcurrencyStrategy

Custom Hibernate read write cache strategy that delegates to the appropriate cache to use based on Confluence's cluster configuration


Nested Class Summary
 
Nested classes/interfaces inherited from interface net.sf.hibernate.cache.CacheConcurrencyStrategy
net.sf.hibernate.cache.CacheConcurrencyStrategy.SoftLock
 
Constructor Summary
ConfluenceCacheStrategy()
           
 
Method Summary
 void afterInsert(Object key, Object value, Object version)
           
 void afterUpdate(Object key, Object value, Object version, net.sf.hibernate.cache.CacheConcurrencyStrategy.SoftLock lock)
           
 void clear()
           
 void destroy()
           
 void evict(Object key)
           
 Object get(Object key, long txTimestamp)
           
 void insert(Object key, Object value)
           
 net.sf.hibernate.cache.CacheConcurrencyStrategy.SoftLock lock(Object key, Object version)
           
 boolean put(Object key, Object value, long txTimestamp, Object version, Comparator versionComparator)
           
 void release(Object key, net.sf.hibernate.cache.CacheConcurrencyStrategy.SoftLock lock)
           
 void remove(Object key)
           
 void setCache(net.sf.hibernate.cache.Cache cache)
           
 void setMinimalPuts(boolean minimalPuts)
           
 void update(Object key, Object value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConfluenceCacheStrategy

public ConfluenceCacheStrategy()
Method Detail

afterInsert

public void afterInsert(Object key,
                        Object value,
                        Object version)
                 throws net.sf.hibernate.cache.CacheException
Specified by:
afterInsert in interface net.sf.hibernate.cache.CacheConcurrencyStrategy
Throws:
net.sf.hibernate.cache.CacheException

afterUpdate

public void afterUpdate(Object key,
                        Object value,
                        Object version,
                        net.sf.hibernate.cache.CacheConcurrencyStrategy.SoftLock lock)
                 throws net.sf.hibernate.cache.CacheException
Specified by:
afterUpdate in interface net.sf.hibernate.cache.CacheConcurrencyStrategy
Throws:
net.sf.hibernate.cache.CacheException

clear

public void clear()
           throws net.sf.hibernate.cache.CacheException
Specified by:
clear in interface net.sf.hibernate.cache.CacheConcurrencyStrategy
Throws:
net.sf.hibernate.cache.CacheException

destroy

public void destroy()
Specified by:
destroy in interface net.sf.hibernate.cache.CacheConcurrencyStrategy

evict

public void evict(Object key)
           throws net.sf.hibernate.cache.CacheException
Specified by:
evict in interface net.sf.hibernate.cache.CacheConcurrencyStrategy
Throws:
net.sf.hibernate.cache.CacheException

get

public Object get(Object key,
                  long txTimestamp)
           throws net.sf.hibernate.cache.CacheException
Specified by:
get in interface net.sf.hibernate.cache.CacheConcurrencyStrategy
Throws:
net.sf.hibernate.cache.CacheException

insert

public void insert(Object key,
                   Object value)
            throws net.sf.hibernate.cache.CacheException
Specified by:
insert in interface net.sf.hibernate.cache.CacheConcurrencyStrategy
Throws:
net.sf.hibernate.cache.CacheException

lock

public net.sf.hibernate.cache.CacheConcurrencyStrategy.SoftLock lock(Object key,
                                                                     Object version)
                                                              throws net.sf.hibernate.cache.CacheException
Specified by:
lock in interface net.sf.hibernate.cache.CacheConcurrencyStrategy
Throws:
net.sf.hibernate.cache.CacheException

put

public boolean put(Object key,
                   Object value,
                   long txTimestamp,
                   Object version,
                   Comparator versionComparator)
            throws net.sf.hibernate.cache.CacheException
Specified by:
put in interface net.sf.hibernate.cache.CacheConcurrencyStrategy
Throws:
net.sf.hibernate.cache.CacheException

release

public void release(Object key,
                    net.sf.hibernate.cache.CacheConcurrencyStrategy.SoftLock lock)
             throws net.sf.hibernate.cache.CacheException
Specified by:
release in interface net.sf.hibernate.cache.CacheConcurrencyStrategy
Throws:
net.sf.hibernate.cache.CacheException

remove

public void remove(Object key)
            throws net.sf.hibernate.cache.CacheException
Specified by:
remove in interface net.sf.hibernate.cache.CacheConcurrencyStrategy
Throws:
net.sf.hibernate.cache.CacheException

setCache

public void setCache(net.sf.hibernate.cache.Cache cache)
Specified by:
setCache in interface net.sf.hibernate.cache.CacheConcurrencyStrategy

setMinimalPuts

public void setMinimalPuts(boolean minimalPuts)
                    throws net.sf.hibernate.HibernateException
Specified by:
setMinimalPuts in interface net.sf.hibernate.cache.CacheConcurrencyStrategy
Throws:
net.sf.hibernate.HibernateException

update

public void update(Object key,
                   Object value)
            throws net.sf.hibernate.cache.CacheException
Specified by:
update in interface net.sf.hibernate.cache.CacheConcurrencyStrategy
Throws:
net.sf.hibernate.cache.CacheException


Copyright © 2003-2013 Atlassian. All Rights Reserved.