From: <ste...@us...> - 2006-02-13 16:57:31
|
Update of /cvsroot/hibernate/Hibernate3/src/org/hibernate/cache In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31018/src/org/hibernate/cache Modified Files: NonstrictReadWriteCache.java TransactionalCache.java Log Message: oops! Index: NonstrictReadWriteCache.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate3/src/org/hibernate/cache/NonstrictReadWriteCache.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- NonstrictReadWriteCache.java 9 Feb 2006 20:48:42 -0000 1.9 +++ NonstrictReadWriteCache.java 13 Feb 2006 16:57:22 -0000 1.10 @@ -13,19 +13,20 @@ * version available in the database. Configure your cache timeout accordingly! * This is an "asynchronous" concurrency strategy. * - * @see ReadWriteCache for a much stricter algorithm * @author Gavin King + * @see ReadWriteCache for a much stricter algorithm */ public class NonstrictReadWriteCache implements CacheConcurrencyStrategy { private Cache cache; - private static final Log log = LogFactory.getLog(NonstrictReadWriteCache.class); + private static final Log log = LogFactory.getLog( NonstrictReadWriteCache.class ); - public NonstrictReadWriteCache() {} + public NonstrictReadWriteCache() { + } public void setCache(Cache cache) { - this.cache=cache; + this.cache = cache; } public Cache getCache() { @@ -36,14 +37,16 @@ * Get the most recent version, if available. */ public Object get(Object key, long txTimestamp) throws CacheException { - if ( log.isDebugEnabled() ) log.debug("Cache lookup: " + key); + if ( log.isDebugEnabled() ) { + log.debug( "Cache lookup: " + key ); + } - Object result = cache.get(key); - if ( result!=null ) { - log.debug("Cache hit"); + Object result = cache.get( key ); + if ( result != null ) { + log.debug( "Cache hit" ); } else { - log.debug("Cache miss"); + log.debug( "Cache miss" ); } return result; } @@ -52,26 +55,30 @@ * Add an item to the cache. */ public boolean put( - Object key, - Object value, - long txTimestamp, - Object version, - Comparator versionComparator, - boolean minimalPut) - throws CacheException { - if ( minimalPut && cache.get(key)!=null ) { - if ( log.isDebugEnabled() ) log.debug("item already cached: " + key); - return false; - } - if ( log.isDebugEnabled() ) log.debug("Caching: " + key); - - cache.put(key, value); + Object key, + Object value, + long txTimestamp, + Object version, + Comparator versionComparator, + boolean minimalPut) throws CacheException { + if ( minimalPut && cache.get( key ) != null ) { + if ( log.isDebugEnabled() ) { + log.debug( "item already cached: " + key ); + } + return false; + } + if ( log.isDebugEnabled() ) { + log.debug( "Caching: " + key ); + } + + cache.put( key, value ); return true; } /** * Do nothing. + * * @return null, no lock */ public SoftLock lock(Object key, Object version) throws CacheException { @@ -79,12 +86,16 @@ } public void remove(Object key) throws CacheException { - if ( log.isDebugEnabled() ) log.debug("Removing: " + key); - cache.remove(key); + if ( log.isDebugEnabled() ) { + log.debug( "Removing: " + key ); + } + cache.remove( key ); } public void clear() throws CacheException { - if ( log.isDebugEnabled() ) log.debug("Clearing"); + if ( log.isDebugEnabled() ) { + log.debug( "Clearing" ); + } cache.clear(); } @@ -92,8 +103,8 @@ try { cache.destroy(); } - catch (Exception e) { - log.warn("could not destroy cache", e); + catch ( Exception e ) { + log.warn( "could not destroy cache", e ); } } @@ -101,16 +112,17 @@ * Invalidate the item */ public void evict(Object key) throws CacheException { - if ( log.isDebugEnabled() ) log.debug("Invalidating: " + key); + if ( log.isDebugEnabled() ) { + log.debug( "Invalidating: " + key ); + } - cache.remove(key); + cache.remove( key ); } /** * Invalidate the item */ public boolean insert(Object key, Object value, Object currentVersion) { - evict(key); return false; } @@ -118,6 +130,7 @@ * Do nothing. */ public boolean update(Object key, Object value, Object currentVersion, Object previousVersion) { + evict( key ); return false; } @@ -125,16 +138,18 @@ * Invalidate the item (again, for safety). */ public void release(Object key, SoftLock lock) throws CacheException { - if ( log.isDebugEnabled() ) log.debug("Invalidating (again): " + key); + if ( log.isDebugEnabled() ) { + log.debug( "Invalidating (again): " + key ); + } - cache.remove(key); + cache.remove( key ); } /** * Invalidate the item (again, for safety). */ public boolean afterUpdate(Object key, Object value, Object version, SoftLock lock) throws CacheException { - release(key, lock); + release( key, lock ); return false; } @@ -142,16 +157,13 @@ * Do nothing. */ public boolean afterInsert(Object key, Object value, Object version) throws CacheException { - //if ( log.isDebugEnabled() ) log.debug("Adding new: " + key); - - //cache.put(key, value); return false; } public String getRegionName() { return cache.getRegionName(); } - + public String toString() { return cache + "(nonstrict-read-write)"; } Index: TransactionalCache.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate3/src/org/hibernate/cache/TransactionalCache.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- TransactionalCache.java 9 Feb 2006 20:48:42 -0000 1.11 +++ TransactionalCache.java 13 Feb 2006 16:57:22 -0000 1.12 @@ -11,43 +11,46 @@ * JBoss TreeCache. Note that this might be a less scalable * concurrency strategy than <tt>ReadWriteCache</tt>. This is * a "synchronous" concurrency strategy. - * + * * @author Gavin King */ public class TransactionalCache implements CacheConcurrencyStrategy { - - private static final Log log = LogFactory.getLog(TransactionalCache.class); + + private static final Log log = LogFactory.getLog( TransactionalCache.class ); private Cache cache; public String getRegionName() { return cache.getRegionName(); } - + public Object get(Object key, long txTimestamp) throws CacheException { - if ( log.isDebugEnabled() ) log.debug("cache lookup: " + key); - Object result = cache.read(key); if ( log.isDebugEnabled() ) { - log.debug( result==null ? "cache miss" : "cache hit" ); + log.debug( "cache lookup: " + key ); + } + Object result = cache.read( key ); + if ( log.isDebugEnabled() ) { + log.debug( result == null ? "cache miss" : "cache hit" ); } return result; } public boolean put( - Object key, - Object value, - long txTimestamp, - Object version, - Comparator versionComparator, - boolean minimalPut) - throws CacheException { - - if ( minimalPut && cache.read(key)!=null ) { - if ( log.isDebugEnabled() ) log.debug("item already cached: " + key); + Object key, + Object value, + long txTimestamp, + Object version, + Comparator versionComparator, + boolean minimalPut) throws CacheException { + if ( minimalPut && cache.read( key ) != null ) { + if ( log.isDebugEnabled() ) { + log.debug( "item already cached: " + key ); + } return false; } - if ( log.isDebugEnabled() ) log.debug("caching: " + key); -// cache.put(key, value); + if ( log.isDebugEnabled() ) { + log.debug( "caching: " + key ); + } if ( cache instanceof OptimisticCache ) { ( ( OptimisticCache ) cache ).writeLoad( key, value, version ); } @@ -72,9 +75,13 @@ //noop } - public boolean update(Object key, Object value, Object currentVersion, Object previousVersion) { + public boolean update( + Object key, + Object value, + Object currentVersion, + Object previousVersion) throws CacheException { if ( log.isDebugEnabled() ) { - log.debug("updating: " + key); + log.debug( "updating: " + key ); } if ( cache instanceof OptimisticCache ) { ( ( OptimisticCache ) cache ).writeUpdate( key, value, currentVersion, previousVersion ); @@ -85,9 +92,12 @@ return true; } - public boolean insert(Object key, Object value, Object currentVersion) throws CacheException { + public boolean insert( + Object key, + Object value, + Object currentVersion) throws CacheException { if ( log.isDebugEnabled() ) { - log.debug("inserting: " + key); + log.debug( "inserting: " + key ); } if ( cache instanceof OptimisticCache ) { ( ( OptimisticCache ) cache ).writeInsert( key, value, currentVersion ); @@ -98,55 +108,19 @@ return true; } - public boolean update(Object key, Object value) throws CacheException { -// if ( log.isDebugEnabled() ) log.debug("updating: " + key); -// cache.update(key, value); -// return true; - if ( log.isDebugEnabled() ) { - log.debug("updating: " + key); - } - if ( cache instanceof OptimisticCache ) { - // todo : need to call writeUpdate() instead - // but that requires this method to take previous and current versions - // ( ( OptimisticCache ) cache ).writeUpdate( key, value, currentVersion, previousVersion ); - ( ( OptimisticCache ) cache ).update( key, value ); - } - else { - cache.update( key, value ); - } - return true; - } - - public boolean insert(Object key, Object value) throws CacheException { -// if ( log.isDebugEnabled() ) log.debug("inserting: " + key); -// cache.update(key, value); -// return true; - if ( log.isDebugEnabled() ) { - log.debug("inserting: " + key); - } - if ( cache instanceof OptimisticCache ) { - // todo : need to call writeInsert() instead - // but that requires this method to take current version - // ( ( OptimisticCache ) cache ).writeInsert( key, value, currentVersion ); - ( ( OptimisticCache ) cache ).update( key, value ); - } - else { - cache.update( key, value ); - } - return true; - } - public void evict(Object key) throws CacheException { - cache.remove(key); + cache.remove( key ); } public void remove(Object key) throws CacheException { - if ( log.isDebugEnabled() ) log.debug("removing: " + key); - cache.remove(key); + if ( log.isDebugEnabled() ) { + log.debug( "removing: " + key ); + } + cache.remove( key ); } public void clear() throws CacheException { - log.debug("clearing"); + log.debug( "clearing" ); cache.clear(); } @@ -154,8 +128,8 @@ try { cache.destroy(); } - catch (Exception e) { - log.warn("could not destroy cache", e); + catch ( Exception e ) { + log.warn( "could not destroy cache", e ); } } @@ -170,19 +144,24 @@ /** * Do nothing. */ - public boolean afterInsert(Object key, Object value, Object version) - throws CacheException { + public boolean afterInsert( + Object key, + Object value, + Object version) throws CacheException { return false; } /** * Do nothing. */ - public boolean afterUpdate(Object key, Object value, Object version, SoftLock clientLock) - throws CacheException { + public boolean afterUpdate( + Object key, + Object value, + Object version, + SoftLock clientLock) throws CacheException { return false; } - + public String toString() { return cache + "(transactional)"; } |