The following document contains the results of FindBugs - http://findbugs.sourceforge.net/. This isn't formatted like a pretty CheckStyle / JDepend sheet as the FindBugs XML output is very terse and does not describe what each error type is. We have no desire to hardcode messages against FindBugs, so we'll wait until FindBugs XML output can be modified to produce easy to use messages.
L DE: javax.util.jcache.CacheLoader.log(String) might ignore javax.util.jcache.CacheNotAvailableException At CacheLoader.java:[line 315] L DE: javax.util.jcache.CacheLoader.log(String) might ignore javax.util.jcache.CacheException At CacheLoader.java:[line 317] H HE: org.fjank.jcache.AttributesImpl defines equals and uses Object.hashCode() L SIC: Should org.fjank.jcache.CacheAccessImpl2$1 be a _static_ inner class? L DE: org.fjank.jcache.CacheImpl.open(String) might ignore java.lang.NumberFormatException At CacheImpl.java:[line 330] M Dm: org.fjank.jcache.CacheObject.<init>(Object,Object,CacheGroup,CacheRegion,java.lang.ref.ReferenceQueue) invokes dubious new String(String) constructor; just use the argument At CacheObject.java:[line 85] H HE: org.fjank.jcache.CacheObject defines equals and uses Object.hashCode() H Dm: org.fjank.jcache.CacheSweeper.sweepCache() forces garbage collection; extremely dubious except in benchmarking code At CacheSweeper.java:[line 107] L IS2: Inconsistent synchronization of org.fjank.jcache.CacheSweeper.active; locked 50% of time Unsynchronized access at CacheSweeper.java:[line 61] H Se: Class org.fjank.jcache.persistence.DiskCache defines non-transient non-serializable instance field javax.util.jcache.CacheAttributes.cattr At unknown source line L Se: Class org.fjank.jcache.persistence.DiskCache defines non-transient non-serializable instance field EDU.oswego.cs.dl.util.concurrent.ReadWriteLock.storageLock At unknown source line