You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by an...@apache.org on 2015/09/28 00:04:26 UTC

svn commit: r1705584 - in /tomee/deps/branches/commons-jcs: ./ commons-jcs-core/ commons-jcs-core/src/main/java/org/apache/commons/jcs/access/ commons-jcs-core/src/main/java/org/apache/commons/jcs/auxiliary/disk/block/ commons-jcs-core/src/main/java/or...

Author: andygumbrecht
Date: Sun Sep 27 22:04:25 2015
New Revision: 1705584

URL: http://svn.apache.org/viewvc?rev=1705584&view=rev
Log:
Update to latest snapshot.
Update versions.
Cleanup POM files.

Added:
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/access/GroupCacheAccessUnitTest.java
Modified:
    tomee/deps/branches/commons-jcs/commons-jcs-core/pom.xml
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/access/AbstractCacheAccess.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/auxiliary/disk/block/BlockDiskCache.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/auxiliary/disk/block/BlockDiskKeyStore.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/CacheStatus.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCache.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCacheManager.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/ElementEvent.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/ElementEventQueue.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEvent.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEventHandler.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEventQueue.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/memory/AbstractDoubleLinkedListMemoryCache.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/utils/threadpool/ThreadPoolManager.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/access/CacheAccessUnitTest.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/auxiliary/disk/indexed/LRUMapSizeVsCount.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/event/ElementEventHandlerMockImpl.java
    tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/event/SimpleEventHandlingUnitTest.java
    tomee/deps/branches/commons-jcs/commons-jcs-dist/pom.xml
    tomee/deps/branches/commons-jcs/commons-jcs-jcache-extras/   (props changed)
    tomee/deps/branches/commons-jcs/commons-jcs-jcache-extras/pom.xml
    tomee/deps/branches/commons-jcs/commons-jcs-jcache-openjpa/   (props changed)
    tomee/deps/branches/commons-jcs/commons-jcs-jcache-openjpa/pom.xml
    tomee/deps/branches/commons-jcs/commons-jcs-jcache/pom.xml
    tomee/deps/branches/commons-jcs/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCachingManager.java
    tomee/deps/branches/commons-jcs/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/cdi/CDIJCacheHelper.java
    tomee/deps/branches/commons-jcs/commons-jcs-sandbox/filecache/pom.xml
    tomee/deps/branches/commons-jcs/commons-jcs-sandbox/yajcache/pom.xml
    tomee/deps/branches/commons-jcs/commons-jcs-tck-tests/pom.xml
    tomee/deps/branches/commons-jcs/pom.xml
    tomee/deps/branches/commons-jcs/src/changes/changes.xml
    tomee/deps/branches/commons-jcs/xdocs/faq.fml

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/pom.xml
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/pom.xml?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/pom.xml (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/pom.xml Sun Sep 27 22:04:25 2015
@@ -17,12 +17,15 @@
    limitations under the License.
 
 -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
   <modelVersion>4.0.0</modelVersion>
+
   <parent>
-    <groupId>org.apache.tomee.patch</groupId>
+    <groupId>org.apache.commons</groupId>
     <artifactId>commons-jcs</artifactId>
-    <version>2.0-M2-SNAPSHOT</version>
+    <version>2.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>commons-jcs-core</artifactId>

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/access/AbstractCacheAccess.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/access/AbstractCacheAccess.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/access/AbstractCacheAccess.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/access/AbstractCacheAccess.java Sun Sep 27 22:04:25 2015
@@ -62,7 +62,7 @@ public abstract class AbstractCacheAcces
     /**
      * Removes all of the elements from a region.
      * <p>
-     * @throws CacheException on error
+     * @throws CacheException
      */
     @Override
     public void clear()

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/auxiliary/disk/block/BlockDiskCache.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/auxiliary/disk/block/BlockDiskCache.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/auxiliary/disk/block/BlockDiskCache.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/auxiliary/disk/block/BlockDiskCache.java Sun Sep 27 22:04:25 2015
@@ -19,9 +19,21 @@ package org.apache.commons.jcs.auxiliary
  * under the License.
  */
 
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.locks.ReentrantReadWriteLock;
+
 import org.apache.commons.jcs.auxiliary.AuxiliaryCacheAttributes;
 import org.apache.commons.jcs.auxiliary.disk.AbstractDiskCache;
-import org.apache.commons.jcs.auxiliary.disk.behavior.IDiskCacheAttributes.DiskLimitType;
 import org.apache.commons.jcs.engine.CacheConstants;
 import org.apache.commons.jcs.engine.behavior.ICacheElement;
 import org.apache.commons.jcs.engine.behavior.IElementSerializer;
@@ -34,19 +46,6 @@ import org.apache.commons.jcs.engine.sta
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.ScheduledExecutorService;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.locks.ReentrantReadWriteLock;
-
 /**
  * There is one BlockDiskCache per region. It manages the key and data store.
  * <p>

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/auxiliary/disk/block/BlockDiskKeyStore.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/auxiliary/disk/block/BlockDiskKeyStore.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/auxiliary/disk/block/BlockDiskKeyStore.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/auxiliary/disk/block/BlockDiskKeyStore.java Sun Sep 27 22:04:25 2015
@@ -19,16 +19,6 @@ package org.apache.commons.jcs.auxiliary
  * under the License.
  */
 
-import org.apache.commons.jcs.auxiliary.disk.LRUMapJCS;
-import org.apache.commons.jcs.auxiliary.disk.behavior.IDiskCacheAttributes.DiskLimitType;
-import org.apache.commons.jcs.auxiliary.disk.indexed.IndexedDiskElementDescriptor;
-import org.apache.commons.jcs.io.ObjectInputStreamClassLoaderAware;
-import org.apache.commons.jcs.utils.struct.AbstractLRUMap;
-import org.apache.commons.jcs.utils.struct.LRUMap;
-import org.apache.commons.jcs.utils.timing.ElapsedTimer;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
 import java.io.BufferedInputStream;
 import java.io.BufferedOutputStream;
 import java.io.EOFException;
@@ -43,6 +33,14 @@ import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.atomic.AtomicInteger;
 
+import org.apache.commons.jcs.auxiliary.disk.behavior.IDiskCacheAttributes.DiskLimitType;
+import org.apache.commons.jcs.io.ObjectInputStreamClassLoaderAware;
+import org.apache.commons.jcs.utils.struct.AbstractLRUMap;
+import org.apache.commons.jcs.utils.struct.LRUMap;
+import org.apache.commons.jcs.utils.timing.ElapsedTimer;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
 /**
  * This is responsible for storing the keys.
  * <p>
@@ -419,6 +417,7 @@ public class BlockDiskKeyStore<K>
          * @param key
          * @param value
          */
+        @Override
         protected void processRemovedLRU( K key, int[] value )
         {
             blockDiskCache.freeBlocks( value );

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/CacheStatus.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/CacheStatus.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/CacheStatus.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/CacheStatus.java Sun Sep 27 22:04:25 2015
@@ -22,7 +22,7 @@ package org.apache.commons.jcs.engine;
 /**
  * Cache statuses
  * <p>
- * @version $Id: CacheStatus.java 536904 2007-05-10 16:03:42Z tv $
+ * @version $Id$
  */
 public enum CacheStatus
 {

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCache.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCache.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCache.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCache.java Sun Sep 27 22:04:25 2015
@@ -1684,7 +1684,7 @@ public class CompositeCache<K, V>
                 log.warn("No element event queue available for cache " + getCacheName());
                 return;
             }
-            IElementEvent event = new ElementEvent( element, eventType );
+            IElementEvent<ICacheElement<K, V>> event = new ElementEvent<ICacheElement<K, V>>( element, eventType );
             for (IElementEventHandler hand : eventHandlers)
             {
                 try

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCacheManager.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCacheManager.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCacheManager.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/CompositeCacheManager.java Sun Sep 27 22:04:25 2015
@@ -19,6 +19,23 @@ package org.apache.commons.jcs.engine.co
  * under the License.
  */
 
+import java.io.IOException;
+import java.io.InputStream;
+import java.lang.management.ManagementFactory;
+import java.security.AccessControlException;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.LinkedHashSet;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.Executors;
+import java.util.concurrent.ScheduledExecutorService;
+
+import javax.management.MBeanServer;
+import javax.management.ObjectName;
+
 import org.apache.commons.jcs.access.exception.CacheException;
 import org.apache.commons.jcs.admin.JCSAdminBean;
 import org.apache.commons.jcs.auxiliary.AuxiliaryCache;
@@ -44,23 +61,6 @@ import org.apache.commons.jcs.utils.thre
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
-import javax.management.MBeanServer;
-import javax.management.ObjectName;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.lang.management.ManagementFactory;
-import java.security.AccessControlException;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.LinkedHashSet;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Set;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.Executors;
-import java.util.concurrent.ScheduledExecutorService;
-
 /**
  * Manages a composite cache. This provides access to caches and is the primary way to shutdown the
  * caching system as a whole.
@@ -657,6 +657,9 @@ public class CompositeCacheManager
             // shutdown all scheduled jobs
             this.scheduledExecutor.shutdownNow();
 
+            // shutdown all thread pools
+            ThreadPoolManager.dispose();
+
             // notify any observers
             synchronized ( shutdownObservers )
             {

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/ElementEvent.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/ElementEvent.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/ElementEvent.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/ElementEvent.java Sun Sep 27 22:04:25 2015
@@ -19,18 +19,18 @@ package org.apache.commons.jcs.engine.co
  * under the License.
  */
 
+import java.util.EventObject;
+
 import org.apache.commons.jcs.engine.control.event.behavior.ElementEventType;
 import org.apache.commons.jcs.engine.control.event.behavior.IElementEvent;
 
-import java.util.EventObject;
-
 /**
  * Element events will trigger the creation of Element Event objects. This is a wrapper around the
  * cache element that indicates the event triggered.
  */
-public class ElementEvent
+public class ElementEvent<T>
     extends EventObject
-    implements IElementEvent
+    implements IElementEvent<T>
 {
     /** Don't change */
     private static final long serialVersionUID = -5364117411457467056L;
@@ -41,10 +41,10 @@ public class ElementEvent
     /**
      * Constructor for the ElementEvent object
      * <p>
-     * @param source The Cache Element (should restrict?)
+     * @param source The Cache Element
      * @param elementEvent The event id defined in the enum class.
      */
-    public ElementEvent( Object source, ElementEventType elementEvent )
+    public ElementEvent( T source, ElementEventType elementEvent )
     {
         super( source );
         this.elementEvent = elementEvent;
@@ -60,4 +60,15 @@ public class ElementEvent
     {
         return elementEvent;
     }
+
+    /**
+     * @return the source of the event.
+     */
+    @SuppressWarnings("unchecked") // Generified
+    @Override
+    public T getSource()
+    {
+        return (T) super.getSource();
+
+    }
 }

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/ElementEventQueue.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/ElementEventQueue.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/ElementEventQueue.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/ElementEventQueue.java Sun Sep 27 22:04:25 2015
@@ -19,6 +19,11 @@ package org.apache.commons.jcs.engine.co
  * under the License.
  */
 
+import java.io.IOException;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.ThreadPoolExecutor;
+import java.util.concurrent.TimeUnit;
+
 import org.apache.commons.jcs.engine.control.event.behavior.IElementEvent;
 import org.apache.commons.jcs.engine.control.event.behavior.IElementEventHandler;
 import org.apache.commons.jcs.engine.control.event.behavior.IElementEventQueue;
@@ -26,11 +31,6 @@ import org.apache.commons.jcs.utils.thre
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
-import java.io.IOException;
-import java.util.concurrent.LinkedBlockingQueue;
-import java.util.concurrent.ThreadPoolExecutor;
-import java.util.concurrent.TimeUnit;
-
 /**
  * An event queue is used to propagate ordered cache events to one and only one target listener.
  */
@@ -95,7 +95,7 @@ public class ElementEventQueue
      * @throws IOException
      */
     @Override
-    public void addElementEvent( IElementEventHandler hand, IElementEvent event )
+    public <T> void addElementEvent( IElementEventHandler hand, IElementEvent<T> event )
         throws IOException
     {
 
@@ -167,7 +167,7 @@ public class ElementEventQueue
         private final IElementEventHandler hand;
 
         /** event */
-        private final IElementEvent event;
+        private final IElementEvent<?> event;
 
         /**
          * Constructor for the PutEvent object.
@@ -177,7 +177,7 @@ public class ElementEventQueue
          * @throws IOException
          */
         @SuppressWarnings("synthetic-access")
-        ElementEventRunner( IElementEventHandler hand, IElementEvent event )
+        ElementEventRunner( IElementEventHandler hand, IElementEvent<?> event )
             throws IOException
         {
             if ( log.isDebugEnabled() )

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEvent.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEvent.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEvent.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEvent.java Sun Sep 27 22:04:25 2015
@@ -24,7 +24,7 @@ import java.io.Serializable;
 /**
  * Defines how an element event object should behave.
  */
-public interface IElementEvent
+public interface IElementEvent<T>
     extends Serializable
 {
     /**
@@ -38,5 +38,5 @@ public interface IElementEvent
     /**
      * @return the source of the event.
      */
-    Object getSource();
+    T getSource();
 }

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEventHandler.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEventHandler.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEventHandler.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEventHandler.java Sun Sep 27 22:04:25 2015
@@ -36,5 +36,5 @@ public interface IElementEventHandler
      * @param event
      *            The event created by the cache.
      */
-    void handleElementEvent( IElementEvent event );
+    <T> void handleElementEvent( IElementEvent<T> event );
 }

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEventQueue.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEventQueue.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEventQueue.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/control/event/behavior/IElementEventQueue.java Sun Sep 27 22:04:25 2015
@@ -37,7 +37,7 @@ public interface IElementEventQueue
      *            The IElementEventHandler IElementEvent event
      * @throws IOException
      */
-    void addElementEvent( IElementEventHandler hand, IElementEvent event )
+    <T> void addElementEvent( IElementEventHandler hand, IElementEvent<T> event )
         throws IOException;
 
     /**

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/memory/AbstractDoubleLinkedListMemoryCache.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/memory/AbstractDoubleLinkedListMemoryCache.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/memory/AbstractDoubleLinkedListMemoryCache.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/engine/memory/AbstractDoubleLinkedListMemoryCache.java Sun Sep 27 22:04:25 2015
@@ -388,7 +388,7 @@ public abstract class AbstractDoubleLink
                 }
             }
         }
-        else if ( key instanceof GroupAttrName )
+        else if ( key instanceof GroupAttrName && ((GroupAttrName<?>)key).attrName == null)
         {
             // remove all keys of the same name hierarchy.
             for (Iterator<Map.Entry<K, MemoryElementDescriptor<K, V>>> itr = map.entrySet().iterator(); itr.hasNext(); )

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/utils/threadpool/ThreadPoolManager.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/utils/threadpool/ThreadPoolManager.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/utils/threadpool/ThreadPoolManager.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/main/java/org/apache/commons/jcs/utils/threadpool/ThreadPoolManager.java Sun Sep 27 22:04:25 2015
@@ -19,11 +19,6 @@ package org.apache.commons.jcs.utils.thr
  * under the License.
  */
 
-import org.apache.commons.jcs.utils.props.PropertyLoader;
-import org.apache.commons.jcs.utils.threadpool.PoolConfiguration.WhenBlockedPolicy;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Properties;
@@ -32,6 +27,11 @@ import java.util.concurrent.LinkedBlocki
 import java.util.concurrent.ThreadPoolExecutor;
 import java.util.concurrent.TimeUnit;
 
+import org.apache.commons.jcs.utils.props.PropertyLoader;
+import org.apache.commons.jcs.utils.threadpool.PoolConfiguration.WhenBlockedPolicy;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
 /**
  * This manages threadpools for an application using Doug Lea's Util Concurrent package.
  * http://gee.cs.oswego.edu/dl/classes/EDU/oswego/cs/dl/util/concurrent/intro.html
@@ -99,17 +99,14 @@ public class ThreadPoolManager
     /** The default config, created using property defaults if present, else those above. */
     private static PoolConfiguration defaultConfig;
 
-    /** This is the default value. */
-    public static final String DEFAULT_PROPS_FILE_NAME = "cache.ccf";
-
     /** Setting this after initialization will have no effect.  */
     private static String propsFileName = null;
 
     /** the root property name */
-    public static String PROP_NAME_ROOT = "thread_pool";
+    private static final String PROP_NAME_ROOT = "thread_pool";
 
     /** default property file name */
-    private static String DEFAULT_PROP_NAME_ROOT = "thread_pool.default";
+    private static final String DEFAULT_PROP_NAME_ROOT = "thread_pool.default";
 
     /**
      * You can specify the properties to be used to configure the thread pool. Setting this post
@@ -206,6 +203,29 @@ public class ThreadPoolManager
     }
 
     /**
+     * Dispose of the instance of the ThreadPoolManger and shut down all thread pools
+     */
+    public static synchronized void dispose()
+    {
+        if ( INSTANCE != null )
+        {
+            for ( String poolName : INSTANCE.getPoolNames())
+            {
+                try
+                {
+                    INSTANCE.getPool(poolName).shutdownNow();
+                }
+                catch (Throwable t)
+                {
+                    log.warn("Failed to close pool " + poolName, t);
+                }
+            }
+
+            INSTANCE = null;
+        }
+    }
+
+    /**
      * Returns a pool by name. If a pool by this name does not exist in the configuration file or
      * properties, one will be created using the default values.
      * <p>

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/access/CacheAccessUnitTest.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/access/CacheAccessUnitTest.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/access/CacheAccessUnitTest.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/access/CacheAccessUnitTest.java Sun Sep 27 22:04:25 2015
@@ -19,7 +19,12 @@ package org.apache.commons.jcs.access;
  * under the License.
  */
 
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
 import junit.framework.TestCase;
+
 import org.apache.commons.jcs.JCS;
 import org.apache.commons.jcs.access.exception.CacheException;
 import org.apache.commons.jcs.access.exception.ObjectExistsException;
@@ -29,12 +34,8 @@ import org.apache.commons.jcs.engine.beh
 import org.apache.commons.jcs.engine.behavior.ICompositeCacheAttributes;
 import org.apache.commons.jcs.engine.behavior.IElementAttributes;
 
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
 /**
- * Tests the methods of the cache access class from which the class JCS extends.
+ * Tests the methods of the cache access class.
  * <p>
  * @author Aaron Smuts
  */
@@ -62,7 +63,7 @@ public class CacheAccessUnitTest
         try
         {
             access.putSafe( key, "someothervalue" );
-            fail( "We should have received an eception since this key is alredy in the cache." );
+            fail( "We should have received an exception since this key is already in the cache." );
         }
         catch ( CacheException e )
         {
@@ -71,7 +72,7 @@ public class CacheAccessUnitTest
         }
 
         String returnedValue2 = access.get( key );
-        assertEquals( "Wrong value returned.  Shoudl still be the original.", value, returnedValue2 );
+        assertEquals( "Wrong value returned.  Should still be the original.", value, returnedValue2 );
     }
 
     /**
@@ -94,7 +95,7 @@ public class CacheAccessUnitTest
         }
         catch ( CacheException e )
         {
-            assertTrue( "Should have the work null in the error message.", e.getMessage().indexOf( "null" ) != -1 );
+            assertTrue( "Should have the word null in the error message.", e.getMessage().indexOf( "null" ) != -1 );
         }
     }
 
@@ -118,7 +119,7 @@ public class CacheAccessUnitTest
         }
         catch ( CacheException e )
         {
-            assertTrue( "Should have the work null in the error message.", e.getMessage().indexOf( "null" ) != -1 );
+            assertTrue( "Should have the word null in the error message.", e.getMessage().indexOf( "null" ) != -1 );
         }
     }
 
@@ -223,7 +224,7 @@ public class CacheAccessUnitTest
 
     /**
      * Verify that we can get a region using the define region method with cache attributes and
-     * elemetn attributes.
+     * element attributes.
      * @throws Exception
      */
     public void testRegionDefinitonWithBothAttributes()
@@ -352,51 +353,4 @@ public class CacheAccessUnitTest
             assertTrue( "Should be a cache element.", value instanceof ICacheElement );
         }
     }
-
-    /**
-     * Verify we can use the group cache.
-     * <p>
-     * @throws Exception
-     */
-    public void testGroupCache()
-        throws Exception
-    {
-        GroupCacheAccess<String, Integer> access = JCS.getGroupCacheInstance( "testGroup" );
-        String groupName1 = "testgroup1";
-        String groupName2 = "testgroup2";
-
-        Set<String> keys1 = access.getGroupKeys( groupName1 );
-        assertNotNull(keys1);
-        assertEquals(0, keys1.size());
-
-        Set<String> keys2 = access.getGroupKeys( groupName2 );
-        assertNotNull(keys2);
-        assertEquals(0, keys2.size());
-
-        // DO WORK
-        int numToInsertGroup1 = 10;
-        // insert with prefix1
-        for ( int i = 0; i < numToInsertGroup1; i++ )
-        {
-            access.putInGroup(String.valueOf( i ), groupName1, Integer.valueOf( i ) );
-        }
-
-        int numToInsertGroup2 = 50;
-        // insert with prefix1
-        for ( int i = 0; i < numToInsertGroup2; i++ )
-        {
-            access.putInGroup(String.valueOf( i ), groupName2, Integer.valueOf( i + 1 ) );
-        }
-
-        keys1 = access.getGroupKeys( groupName1 ); // Test for JCS-102
-        assertNotNull(keys1);
-        assertEquals("Wrong number returned 1:", 10, keys1.size());
-
-        keys2 = access.getGroupKeys( groupName2 );
-        assertNotNull(keys2);
-        assertEquals("Wrong number returned 2:", 50, keys2.size());
-
-        assertEquals(Integer.valueOf(5), access.getFromGroup("5", groupName1));
-        assertEquals(Integer.valueOf(6), access.getFromGroup("5", groupName2));
-    }
 }

Added: tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/access/GroupCacheAccessUnitTest.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/access/GroupCacheAccessUnitTest.java?rev=1705584&view=auto
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/access/GroupCacheAccessUnitTest.java (added)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/access/GroupCacheAccessUnitTest.java Sun Sep 27 22:04:25 2015
@@ -0,0 +1,240 @@
+package org.apache.commons.jcs.access;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.util.Set;
+
+import junit.framework.TestCase;
+
+import org.apache.commons.jcs.JCS;
+import org.apache.commons.jcs.access.exception.CacheException;
+
+/**
+ * Tests the methods of the group cache access class.
+ * <p>
+ * @author Aaron Smuts
+ */
+public class GroupCacheAccessUnitTest
+    extends TestCase
+{
+    /**
+     * Verify that we can put and get an object
+     * @throws Exception
+     */
+    public void testPutAndGet()
+        throws Exception
+    {
+        GroupCacheAccess<String, String> access = JCS.getGroupCacheInstance( "test" );
+        assertNotNull( "We should have an access class", access );
+
+        String key = "mykey";
+        String group = "mygroup";
+        String value = "myvalue";
+
+        access.putInGroup(key, group, value);
+
+        String returnedValue1 = access.getFromGroup(key, group);
+        assertEquals( "Wrong value returned.", value, returnedValue1 );
+    }
+
+    /**
+     * Try to put a null key and verify that we get an exception.
+     * @throws Exception
+     */
+    public void testPutNullKey()
+        throws Exception
+    {
+        GroupCacheAccess<String, String> access = JCS.getGroupCacheInstance( "test" );
+        assertNotNull( "We should have an access class", access );
+
+        String key = null;
+        String group = "mygroup";
+        String value = "myvalue";
+
+        try
+        {
+            access.putInGroup(key, group, value);
+            fail( "Should not have been able to put a null key." );
+        }
+        catch ( CacheException e )
+        {
+            assertTrue( "Should have the word null in the error message.", e.getMessage().indexOf( "null" ) != -1 );
+        }
+    }
+
+    /**
+     * Try to put a null value and verify that we get an exception.
+     * @throws Exception
+     */
+    public void testPutNullValue()
+        throws Exception
+    {
+        GroupCacheAccess<String, String> access = JCS.getGroupCacheInstance( "test" );
+        assertNotNull( "We should have an access class", access );
+
+        String key = "myKey";
+        String group = "mygroup";
+        String value = null;
+
+        try
+        {
+            access.putInGroup(key, group, value);
+            fail( "Should not have been able to put a null object." );
+        }
+        catch ( CacheException e )
+        {
+            assertTrue( "Should have the word null in the error message.", e.getMessage().indexOf( "null" ) != -1 );
+        }
+    }
+
+    /**
+     * Verify that we can remove items from the cache
+     * @throws Exception
+     */
+    public void testRemove()
+        throws Exception
+    {
+        GroupCacheAccess<String, String> access = JCS.getGroupCacheInstance( "test" );
+        assertNotNull( "We should have an access class", access );
+
+        String key = "mykey";
+        String group = "mygroup";
+        String value = "myvalue";
+
+        for (int i = 0; i < 10; i++)
+        {
+            access.putInGroup(key + i, group, value + i);
+        }
+
+        // Make sure cache contains some data
+        for (int i = 0; i < 10; i++)
+        {
+            String returnedValue1 = access.getFromGroup(key + i, group);
+            assertEquals( "Wrong value returned.", value + i, returnedValue1 );
+        }
+
+        access.removeFromGroup(key + 0, group);
+
+        assertNull("Should not be in cache", access.getFromGroup(key + 0, group));
+
+        for (int i = 1; i < 10; i++)
+        {
+            String returnedValue1 = access.getFromGroup(key + i, group);
+            assertEquals( "Wrong value returned.", value + i, returnedValue1 );
+        }
+    }
+
+    /**
+     * Verify that we can invalidate the group
+     * @throws Exception
+     */
+    public void testInvalidate()
+        throws Exception
+    {
+        GroupCacheAccess<String, String> access = JCS.getGroupCacheInstance( "test" );
+        assertNotNull( "We should have an access class", access );
+
+        String key = "mykey";
+        String group = "mygroup";
+        String value = "myvalue";
+
+        for (int i = 0; i < 10; i++)
+        {
+            access.putInGroup(key + i, group + 0, value + i);
+        }
+
+        for (int i = 0; i < 10; i++)
+        {
+            access.putInGroup(key + i, group + 1, value + i);
+        }
+
+        // Make sure cache contains some data
+        for (int i = 0; i < 10; i++)
+        {
+            String returnedValue1 = access.getFromGroup(key + i, group + 0);
+            assertEquals( "Wrong value returned.", value + i, returnedValue1 );
+            String returnedValue2 = access.getFromGroup(key + i, group + 1);
+            assertEquals( "Wrong value returned.", value + i, returnedValue2 );
+        }
+
+        access.invalidateGroup(group + 0);
+
+        for (int i = 0; i < 10; i++)
+        {
+            assertNull("Should not be in cache", access.getFromGroup(key + i, group + 0));
+        }
+
+        for (int i = 0; i < 10; i++)
+        {
+            String returnedValue1 = access.getFromGroup(key + i, group + 1);
+            assertEquals( "Wrong value returned.", value + i, returnedValue1 );
+        }
+    }
+
+    /**
+     * Verify we can use the group cache.
+     * <p>
+     * @throws Exception
+     */
+    public void testGroupCache()
+        throws Exception
+    {
+        GroupCacheAccess<String, Integer> access = JCS.getGroupCacheInstance( "testGroup" );
+        String groupName1 = "testgroup1";
+        String groupName2 = "testgroup2";
+
+        Set<String> keys1 = access.getGroupKeys( groupName1 );
+        assertNotNull(keys1);
+        assertEquals(0, keys1.size());
+
+        Set<String> keys2 = access.getGroupKeys( groupName2 );
+        assertNotNull(keys2);
+        assertEquals(0, keys2.size());
+
+        // DO WORK
+        int numToInsertGroup1 = 10;
+        // insert with prefix1
+        for ( int i = 0; i < numToInsertGroup1; i++ )
+        {
+            access.putInGroup(String.valueOf( i ), groupName1, Integer.valueOf( i ) );
+        }
+
+        int numToInsertGroup2 = 50;
+        // insert with prefix1
+        for ( int i = 0; i < numToInsertGroup2; i++ )
+        {
+            access.putInGroup(String.valueOf( i ), groupName2, Integer.valueOf( i + 1 ) );
+        }
+
+        keys1 = access.getGroupKeys( groupName1 ); // Test for JCS-102
+        assertNotNull(keys1);
+        assertEquals("Wrong number returned 1:", 10, keys1.size());
+
+        keys2 = access.getGroupKeys( groupName2 );
+        assertNotNull(keys2);
+        assertEquals("Wrong number returned 2:", 50, keys2.size());
+
+        assertEquals(Integer.valueOf(5), access.getFromGroup("5", groupName1));
+        assertEquals(Integer.valueOf(6), access.getFromGroup("5", groupName2));
+
+        assertTrue(access.getGroupNames().contains(groupName1));
+        assertTrue(access.getGroupNames().contains(groupName2));
+    }
+}

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/auxiliary/disk/indexed/LRUMapSizeVsCount.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/auxiliary/disk/indexed/LRUMapSizeVsCount.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/auxiliary/disk/indexed/LRUMapSizeVsCount.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/auxiliary/disk/indexed/LRUMapSizeVsCount.java Sun Sep 27 22:04:25 2015
@@ -19,22 +19,12 @@ package org.apache.commons.jcs.auxiliary
  * under the License.
  */
 
+import java.util.Map;
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
 
-import org.apache.commons.jcs.JCSvsHashtablePerformanceTest;
-import org.apache.commons.jcs.TestLogConfigurationUtil;
-import org.apache.commons.jcs.auxiliary.disk.AbstractDiskCache;
-import org.apache.commons.jcs.auxiliary.disk.indexed.IndexedDiskCache;
-import org.apache.commons.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes;
-import org.apache.commons.jcs.auxiliary.disk.indexed.IndexedDiskElementDescriptor;
-import org.apache.log4j.ConsoleAppender;
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
-
-import java.util.Map;
-
 /**
  * This ensures that the jcs version of the LRU map is as fast as the commons
  * version. It has been testing at .6 to .7 times the commons LRU.
@@ -109,7 +99,7 @@ public class LRUMapSizeVsCount
         long getTotalCount = 0;
         long putTotalSize = 0;
         long getTotalSize = 0;
-        
+
         long minTimeSizePut = Long.MAX_VALUE;
         long minTimeSizeGet = Long.MAX_VALUE;
         long minTimeCountPut = Long.MAX_VALUE;
@@ -170,7 +160,7 @@ public class LRUMapSizeVsCount
                 time = end - start;
                 putTotalSize += time;
                 minTimeSizePut = Math.min(minTimeSizePut, time);
-                
+
                 tPer = Float.intBitsToFloat( (int) time ) / Float.intBitsToFloat( tries );
                 System.out.println( cache2Name + " put time for " + tries + " = " + time + "; millis per = " + tPer );
 
@@ -183,7 +173,7 @@ public class LRUMapSizeVsCount
                 time = end - start;
                 getTotalSize += time;
                 minTimeSizeGet = Math.min(minTimeSizeGet, time);
-                
+
                 tPer = Float.intBitsToFloat( (int) time ) / Float.intBitsToFloat( tries );
                 System.out.println( cache2Name + " get time for " + tries + " = " + time + "; millis per = " + tPer );
 
@@ -209,7 +199,7 @@ public class LRUMapSizeVsCount
         ratioPut = (putAvSize *1.0) / putAvCount;
         System.out.println( cache2Name.trim() + " puts took " + ratioPut + " times the " + cacheName.trim() + ", the goal is <" + targetPut
             + "x" );
-        
+
         System.out.println( "\n" );
         System.out.println( "Put minimum for " + cacheName +  " = " + minTimeCountPut );
         System.out.println( "Put minimum for " + cache2Name + " = " + minTimeSizePut );
@@ -224,7 +214,7 @@ public class LRUMapSizeVsCount
         ratioGet = (getAvSize * 1.0) / getAvCount;
         System.out.println( cache2Name.trim() + " gets took " + ratioGet + " times the " + cacheName.trim() + ", the goal is <" + targetGet
             + "x" );
-        
+
         System.out.println( "\n" );
         System.out.println( "Get minimum for " + cacheName +  " = " + minTimeCountGet );
         System.out.println( "Get minimum for " + cache2Name + " = " + minTimeSizeGet );

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/event/ElementEventHandlerMockImpl.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/event/ElementEventHandlerMockImpl.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/event/ElementEventHandlerMockImpl.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/event/ElementEventHandlerMockImpl.java Sun Sep 27 22:04:25 2015
@@ -56,7 +56,7 @@ public class ElementEventHandlerMockImpl
      * @param event
      */
     @Override
-    public synchronized void handleElementEvent( IElementEvent event )
+    public synchronized <T> void handleElementEvent( IElementEvent<T> event )
     {
         setCallCount( getCallCount() + 1 );
 

Modified: tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/event/SimpleEventHandlingUnitTest.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/event/SimpleEventHandlingUnitTest.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/event/SimpleEventHandlingUnitTest.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-core/src/test/java/org/apache/commons/jcs/engine/control/event/SimpleEventHandlingUnitTest.java Sun Sep 27 22:04:25 2015
@@ -20,6 +20,7 @@ package org.apache.commons.jcs.engine.co
  */
 
 import junit.framework.TestCase;
+
 import org.apache.commons.jcs.JCS;
 import org.apache.commons.jcs.access.CacheAccess;
 import org.apache.commons.jcs.engine.behavior.IElementAttributes;
@@ -279,7 +280,7 @@ public class SimpleEventHandlingUnitTest
          * @param event
          */
         @Override
-        public synchronized void handleElementEvent( IElementEvent event )
+        public synchronized <T> void handleElementEvent( IElementEvent<T> event )
         {
             //System.out.println( "Handling Event of Type " +
             // event.getElementEvent() );
@@ -307,6 +308,12 @@ public class SimpleEventHandlingUnitTest
                 case EXCEEDED_IDLETIME_ONREQUEST:
                 exceededIdletimeCount++;
                 break;
+
+                case EXCEEDED_IDLETIME_BACKGROUND:
+                break;
+
+                case EXCEEDED_MAXLIFE_BACKGROUND:
+                break;
             }
         }
 

Modified: tomee/deps/branches/commons-jcs/commons-jcs-dist/pom.xml
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-dist/pom.xml?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-dist/pom.xml (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-dist/pom.xml Sun Sep 27 22:04:25 2015
@@ -20,8 +20,8 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <parent>
     <artifactId>commons-jcs</artifactId>
-    <groupId>org.apache.tomee.patch</groupId>
-    <version>2.0-M1-SNAPSHOT</version>
+    <groupId>org.apache.commons</groupId>
+    <version>2.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
@@ -32,74 +32,74 @@
 
   <dependencies>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-core</artifactId>
       <version>${project.version}</version>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-core</artifactId>
       <version>${project.version}</version>
       <classifier>sources</classifier>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-core</artifactId>
       <version>${project.version}</version>
       <classifier>javadoc</classifier>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-jcache</artifactId>
       <version>${project.version}</version>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-jcache</artifactId>
       <version>${project.version}</version>
       <classifier>sources</classifier>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-jcache</artifactId>
       <version>${project.version}</version>
       <classifier>javadoc</classifier>
     </dependency>
     <dependency> <!-- no sources or javadoc since src/main/java is empty -->
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-jcache-tck</artifactId>
       <version>${project.version}</version>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-jcache-extras</artifactId>
       <version>${project.version}</version>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-jcache-extras</artifactId>
       <version>${project.version}</version>
       <classifier>sources</classifier>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-jcache-extras</artifactId>
       <version>${project.version}</version>
       <classifier>javadoc</classifier>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-jcache-openjpa</artifactId>
       <version>${project.version}</version>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-jcache-openjpa</artifactId>
       <version>${project.version}</version>
       <classifier>sources</classifier>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-jcache-openjpa</artifactId>
       <version>${project.version}</version>
       <classifier>javadoc</classifier>

Propchange: tomee/deps/branches/commons-jcs/commons-jcs-jcache-extras/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Sun Sep 27 22:04:25 2015
@@ -4,3 +4,4 @@ target
 .classpath
 maven-eclipse.xml
 .externalToolBuilders
+tomcat.0

Modified: tomee/deps/branches/commons-jcs/commons-jcs-jcache-extras/pom.xml
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-jcache-extras/pom.xml?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-jcache-extras/pom.xml (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-jcache-extras/pom.xml Sun Sep 27 22:04:25 2015
@@ -17,16 +17,19 @@
    limitations under the License.
 
 -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+
   <parent>
     <artifactId>commons-jcs</artifactId>
-    <groupId>org.apache.tomee.patch</groupId>
-    <version>2.0-M2-SNAPSHOT</version>
+    <groupId>org.apache.commons</groupId>
+    <version>2.0-SNAPSHOT</version>
   </parent>
-  <modelVersion>4.0.0</modelVersion>
 
   <artifactId>commons-jcs-jcache-extras</artifactId>
-  <version>2.0-M2-SNAPSHOT</version>
+  <version>2.0-SNAPSHOT</version>
   <name>Apache Commons JCS :: JCache Extras</name>
 
   <dependencies>
@@ -53,7 +56,6 @@
     <dependency>
       <groupId>org.apache.geronimo.specs</groupId>
       <artifactId>geronimo-servlet_3.0_spec</artifactId>
-      <version>1.0</version>
       <scope>provided</scope>
     </dependency>
 
@@ -66,7 +68,7 @@
       <artifactId>openwebbeans-impl</artifactId>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-jcache</artifactId>
       <version>${project.version}</version>
       <scope>test</scope>
@@ -74,19 +76,16 @@
     <dependency>
       <groupId>org.apache.tomcat</groupId>
       <artifactId>tomcat-catalina</artifactId>
-      <version>8.0.18</version>
       <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.tomcat</groupId>
       <artifactId>tomcat-jasper</artifactId>
-      <version>8.0.18</version>
       <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>commons-io</groupId>
       <artifactId>commons-io</artifactId>
-      <version>2.4</version>
       <scope>test</scope>
     </dependency>
   </dependencies>

Propchange: tomee/deps/branches/commons-jcs/commons-jcs-jcache-openjpa/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Sun Sep 27 22:04:25 2015
@@ -5,3 +5,4 @@ target
 maven-eclipse.xml
 .externalToolBuilders
 *.iml
+derby.log

Modified: tomee/deps/branches/commons-jcs/commons-jcs-jcache-openjpa/pom.xml
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-jcache-openjpa/pom.xml?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-jcache-openjpa/pom.xml (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-jcache-openjpa/pom.xml Sun Sep 27 22:04:25 2015
@@ -20,8 +20,8 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <parent>
     <artifactId>commons-jcs</artifactId>
-    <groupId>org.apache.tomee.patch</groupId>
-    <version>2.0-M2-SNAPSHOT</version>
+    <groupId>org.apache.commons</groupId>
+    <version>2.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
@@ -32,7 +32,6 @@
     <dependency>
       <groupId>org.apache.geronimo.specs</groupId>
       <artifactId>geronimo-jpa_2.0_spec</artifactId>
-      <version>1.1</version>
       <scope>provided</scope>
     </dependency>
     <dependency>
@@ -42,24 +41,21 @@
     <dependency>
       <groupId>org.apache.openjpa</groupId>
       <artifactId>openjpa</artifactId>
-      <version>2.3.0</version>
       <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
-      <version>4.11</version>
       <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.derby</groupId>
       <artifactId>derby</artifactId>
-      <version>10.11.1.1</version>
       <scope>test</scope>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-jcache</artifactId>
       <version>${project.version}</version>
       <scope>test</scope>

Modified: tomee/deps/branches/commons-jcs/commons-jcs-jcache/pom.xml
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-jcache/pom.xml?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-jcache/pom.xml (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-jcache/pom.xml Sun Sep 27 22:04:25 2015
@@ -17,14 +17,15 @@
    limitations under the License.
 
 -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
   <modelVersion>4.0.0</modelVersion>
 
   <parent>
-    <groupId>org.apache.tomee.patch</groupId>
+    <groupId>org.apache.commons</groupId>
     <artifactId>commons-jcs</artifactId>
-    <version>2.0-M2-SNAPSHOT</version>
-    <relativePath>../pom.xml</relativePath>
+    <version>2.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>commons-jcs-jcache</artifactId>
@@ -53,7 +54,7 @@
     </dependency>
 
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-core</artifactId>
       <version>${project.version}</version>
     </dependency>
@@ -77,7 +78,6 @@
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-jar-plugin</artifactId>
-        <version>2.5</version>
         <executions>
           <execution>
             <id>default-jar</id>

Modified: tomee/deps/branches/commons-jcs/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCachingManager.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCachingManager.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCachingManager.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCachingManager.java Sun Sep 27 22:04:25 2015
@@ -26,9 +26,12 @@ import javax.cache.Cache;
 import javax.cache.CacheManager;
 import javax.cache.configuration.Configuration;
 import javax.cache.spi.CachingProvider;
+import java.io.ByteArrayInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.net.URI;
+import java.net.URL;
+import java.util.Enumeration;
 import java.util.Map;
 import java.util.Properties;
 import java.util.concurrent.ConcurrentHashMap;
@@ -39,6 +42,21 @@ import static org.apache.commons.jcs.jca
 public class JCSCachingManager implements CacheManager
 {
     private static final Subsitutor SUBSTITUTOR = Subsitutor.Helper.INSTANCE;
+    private static final String DEFAULT_CONFIG =
+        "jcs.default=DC\n" +
+        "jcs.default.cacheattributes=org.apache.commons.jcs.engine.CompositeCacheAttributes\n" +
+        "jcs.default.cacheattributes.MaxObjects=200001\n" +
+        "jcs.default.cacheattributes.MemoryCacheName=org.apache.commons.jcs.engine.memory.lru.LRUMemoryCache\n" +
+        "jcs.default.cacheattributes.UseMemoryShrinker=true\n" +
+        "jcs.default.cacheattributes.MaxMemoryIdleTimeSeconds=3600\n" +
+        "jcs.default.cacheattributes.ShrinkerIntervalSeconds=60\n" +
+        "jcs.default.elementattributes=org.apache.commons.jcs.engine.ElementAttributes\n" +
+        "jcs.default.elementattributes.IsEternal=false\n" +
+        "jcs.default.elementattributes.MaxLife=700\n" +
+        "jcs.default.elementattributes.IdleTime=1800\n" +
+        "jcs.default.elementattributes.IsSpool=true\n" +
+        "jcs.default.elementattributes.IsRemote=true\n" +
+        "jcs.default.elementattributes.IsLateral=true\n";
 
     private static class InternalManager extends CompositeCacheManager
     {
@@ -81,18 +99,58 @@ public class JCSCachingManager implement
 
     private Properties readConfig(final URI uri, final ClassLoader loader, final Properties properties) {
         final Properties props = new Properties();
-        InputStream inStream = null;
-        try
-        {
+        try {
             if (JCSCachingProvider.DEFAULT_URI.toString().equals(uri.toString()) || uri.toURL().getProtocol().equals("jcs"))
             {
-                inStream = loader.getResourceAsStream(uri.getPath());
+
+                final Enumeration<URL> resources = loader.getResources(uri.getPath());
+                if (!resources.hasMoreElements()) // default
+                {
+                    props.load(new ByteArrayInputStream(DEFAULT_CONFIG.getBytes("UTF-8")));
+                }
+                else
+                {
+                    do
+                    {
+                        addProperties(resources.nextElement(), props);
+                    }
+                    while (resources.hasMoreElements());
+                }
             }
             else
             {
-                inStream = uri.toURL().openStream();
+                props.load(uri.toURL().openStream());
+            }
+        } catch (final IOException e) {
+            throw new IllegalStateException(e);
+        }
+
+        if (properties != null)
+        {
+            props.putAll(properties);
+        }
+
+        for (final Map.Entry<Object, Object> entry : props.entrySet()) {
+            if (entry.getValue() == null)
+            {
+                continue;
+            }
+            final String substitute = SUBSTITUTOR.substitute(entry.getValue().toString());
+            if (!substitute.equals(entry.getValue()))
+            {
+                entry.setValue(substitute);
             }
-            props.load(inStream);
+        }
+        return props;
+    }
+
+    private void addProperties(final URL url, final Properties aggregator)
+    {
+        InputStream inStream = null;
+        try
+        {
+            inStream = url.openStream();
+            aggregator.load(inStream);
         }
         catch (final IOException e)
         {
@@ -112,22 +170,6 @@ public class JCSCachingManager implement
                 }
             }
         }
-        if (properties != null)
-        {
-            props.putAll(properties);
-        }
-        for (final Map.Entry<Object, Object> entry : props.entrySet()) {
-            if (entry.getValue() == null)
-            {
-                continue;
-            }
-            final String substitute = SUBSTITUTOR.substitute(entry.getValue().toString());
-            if (!substitute.equals(entry.getValue()))
-            {
-                entry.setValue(substitute);
-            }
-        }
-        return props;
     }
 
     private void assertNotClosed()

Modified: tomee/deps/branches/commons-jcs/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/cdi/CDIJCacheHelper.java
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/cdi/CDIJCacheHelper.java?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/cdi/CDIJCacheHelper.java (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/cdi/CDIJCacheHelper.java Sun Sep 27 22:04:25 2015
@@ -150,7 +150,7 @@ public class CDIJCacheHelper
         if (defaults != null)
         {
             final Class<? extends CacheKeyGenerator> defaultCacheKeyGenerator = defaults.cacheKeyGenerator();
-            if (!CacheResolverFactory.class.equals(defaultCacheKeyGenerator))
+            if (!CacheKeyGenerator.class.equals(defaultCacheKeyGenerator))
             {
                 return instance(defaultCacheKeyGenerator);
             }

Modified: tomee/deps/branches/commons-jcs/commons-jcs-sandbox/filecache/pom.xml
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-sandbox/filecache/pom.xml?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-sandbox/filecache/pom.xml (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-sandbox/filecache/pom.xml Sun Sep 27 22:04:25 2015
@@ -22,7 +22,7 @@
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
-    <groupId>org.apache.tomee.patch</groupId>
+    <groupId>org.apache.commons</groupId>
     <artifactId>commons-jcs-sandbox</artifactId>
     <version>2.0-SNAPSHOT</version>
   </parent>
@@ -33,11 +33,11 @@
 
   <dependencies>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-core</artifactId>
     </dependency>
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.commons</groupId>
       <artifactId>commons-jcs-core</artifactId>
       <type>test-jar</type>
       <scope>test</scope>

Modified: tomee/deps/branches/commons-jcs/commons-jcs-sandbox/yajcache/pom.xml
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-sandbox/yajcache/pom.xml?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-sandbox/yajcache/pom.xml (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-sandbox/yajcache/pom.xml Sun Sep 27 22:04:25 2015
@@ -22,7 +22,7 @@
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
-    <groupId>org.apache.tomee.patch</groupId>
+    <groupId>org.apache.commons</groupId>
     <artifactId>commons-jcs-sandbox</artifactId>
     <version>2.0-SNAPSHOT</version>
   </parent>

Modified: tomee/deps/branches/commons-jcs/commons-jcs-tck-tests/pom.xml
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/commons-jcs-tck-tests/pom.xml?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/commons-jcs-tck-tests/pom.xml (original)
+++ tomee/deps/branches/commons-jcs/commons-jcs-tck-tests/pom.xml Sun Sep 27 22:04:25 2015
@@ -17,13 +17,15 @@
    limitations under the License.
 
 -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
   <modelVersion>4.0.0</modelVersion>
 
   <parent>
-    <groupId>org.apache.tomee.patch</groupId>
+    <groupId>org.apache.commons</groupId>
     <artifactId>commons-jcs</artifactId>
-    <version>2.0-M2-SNAPSHOT</version>
+    <version>2.0-SNAPSHOT</version>
   </parent>
 
   <!--
@@ -33,8 +35,6 @@
   -->
 
   <artifactId>commons-jcs-jcache-tck</artifactId>
-  <version>2.0-M2-SNAPSHOT</version>
-
   <name>Apache Commons JCS :: JCache TCK</name>
 
   <properties>
@@ -47,7 +47,8 @@
     <CacheImpl>org.apache.commons.jcs.jcache.JCSCache</CacheImpl>
     <CacheEntryImpl>org.apache.commons.jcs.jcache.JCSEntry</CacheEntryImpl>
 
-    <javax.management.builder.initial>org.apache.commons.jcs.jcache.jmx.ConfigurableMBeanServerIdBuilder</javax.management.builder.initial>
+    <javax.management.builder.initial>org.apache.commons.jcs.jcache.jmx.ConfigurableMBeanServerIdBuilder
+    </javax.management.builder.initial>
     <org.jsr107.tck.management.agentId>MBeanServerJCS</org.jsr107.tck.management.agentId>
 
     <domain-lib-dir>${project.build.directory}/domainlib</domain-lib-dir>
@@ -106,7 +107,6 @@
     <dependency>
       <groupId>javax.transaction</groupId>
       <artifactId>jta</artifactId>
-      <version>1.1</version>
     </dependency>
 
     <dependency>
@@ -143,7 +143,6 @@
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-source-plugin</artifactId>
-        <version>2.2</version>
         <configuration>
           <skipSource>true</skipSource>
         </configuration>

Modified: tomee/deps/branches/commons-jcs/pom.xml
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/pom.xml?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/pom.xml (original)
+++ tomee/deps/branches/commons-jcs/pom.xml Sun Sep 27 22:04:25 2015
@@ -16,25 +16,25 @@
    limitations under the License.
 
 -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.apache.commons</groupId>
     <artifactId>commons-parent</artifactId>
-    <version>36</version>
-    <relativePath><!-- Resolve on repository --></relativePath>
+    <version>37</version>
+    <relativePath><!--Resolve on repository--></relativePath>
   </parent>
 
-  <groupId>org.apache.tomee.patch</groupId>
   <artifactId>commons-jcs</artifactId>
   <packaging>pom</packaging>
-  <version>2.0-M2-SNAPSHOT</version>
+  <version>2.0-SNAPSHOT</version>
 
   <!--
    * Build with -PjcacheTck to run the JSR-107 TCK
   -->
 
-  <name>Apache Commons JCS - TomEE Patch</name>
+  <name>Apache Commons JCS</name>
   <url>http://commons.apache.org/proper/commons-jcs/</url>
   <description>Apache Commons JCS is a distributed, versatile caching system.</description>
   <inceptionYear>2002</inceptionYear>
@@ -42,8 +42,8 @@
   <!-- Required for staging to work -->
   <distributionManagement>
     <site>
-      <id>openejb-website</id>
-      <url>scp://people.apache.org/www/tomee.apache.org/openejb/maven</url>
+      <id>commons.jcs.apache.org</id>
+      <url>http://commons.apache.org/proper/commons-jcs/</url>
     </site>
   </distributionManagement>
 
@@ -53,34 +53,34 @@
   </issueManagement>
 
   <scm>
-    <connection>scm:svn:http://svn.apache.org/repos/asf/tomee/deps/branches/commons-jcs</connection>
+    <connection>scm:svn:http://svn.apache.org/repos/asf/commons/proper/jcs/trunk</connection>
     <developerConnection>scm:svn:https://svn.apache.org/repos/asf/tomee/deps/branches/commons-jcs</developerConnection>
-    <url>http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs</url>
+    <url>https://svn.apache.org/repos/asf/tomee/deps/branches/commons-jcs</url>
   </scm>
 
   <mailingLists>
     <mailingList>
       <name>Jakarta JCS User List Archive</name>
-      <subscribe />
-      <unsubscribe />
+      <subscribe/>
+      <unsubscribe/>
       <archive>http://mail-archives.apache.org/mod_mbox/jakarta-jcs-users/</archive>
     </mailingList>
     <mailingList>
       <name>Jakarta JCS Developer List Archive</name>
-      <subscribe />
-      <unsubscribe />
+      <subscribe/>
+      <unsubscribe/>
       <archive>http://mail-archives.apache.org/mod_mbox/jakarta-jcs-dev/</archive>
     </mailingList>
     <mailingList>
       <name>OLD User List Archive</name>
-      <subscribe />
-      <unsubscribe />
+      <subscribe/>
+      <unsubscribe/>
       <archive>http://mail-archives.apache.org/mod_mbox/jakarta-turbine-jcs-user/</archive>
     </mailingList>
     <mailingList>
       <name>OLD Developer List Archive</name>
-      <subscribe />
-      <unsubscribe />
+      <subscribe/>
+      <unsubscribe/>
       <archive>http://mail-archives.apache.org/mod_mbox/jakarta-turbine-jcs-dev/</archive>
     </mailingList>
     <mailingList>
@@ -157,19 +157,19 @@
       <id>asmuts</id>
       <name>Aaron Smuts</name>
       <email>asmuts@apache.org</email>
-      <organization />
+      <organization/>
     </developer>
     <developer>
       <id>jtaylor</id>
       <name>James Taylor</name>
       <email>james@jamestaylor.org</email>
-      <organization />
+      <organization/>
     </developer>
     <developer>
       <id>hchar</id>
       <name>Hanson Char</name>
       <email>hchar@apache.org</email>
-      <organization />
+      <organization/>
     </developer>
     <developer>
       <id>tsavo</id>
@@ -181,13 +181,13 @@
       <id>tv</id>
       <name>Thomas Vandahl</name>
       <email>tv@apache.org</email>
-      <organization />
+      <organization/>
     </developer>
     <developer>
       <id>rmannibucau</id>
       <name>Romain Manni-Bucau</name>
       <email>rmannibucau@apache.org</email>
-      <organization />
+      <organization/>
     </developer>
   </developers>
 
@@ -239,77 +239,77 @@
             <configuration>
               <target xmlns:if="ant:if" xmlns:unless="ant:unless">
                 <presetdef name="truth">
-                  <condition value="true" else="false" />
+                  <condition value="true" else="false"/>
                 </presetdef>
 
                 <macrodef name="seek">
-                  <attribute name="name" />
-                  <attribute name="addto" />
+                  <attribute name="name"/>
+                  <attribute name="addto"/>
                   <sequential>
-                    <union id="@{name}-ws" />
-                    <step dir="${user.dir}" name="@{name}" addto="@{addto}" ws="@{name}-ws" />
+                    <union id="@{name}-ws"/>
+                    <step dir="${user.dir}" name="@{name}" addto="@{addto}" ws="@{name}-ws"/>
                   </sequential>
                 </macrodef>
 
                 <macrodef name="step">
-                  <attribute name="name" />
-                  <attribute name="dir" />
-                  <attribute name="addto" />
-                  <attribute name="ws" />
+                  <attribute name="name"/>
+                  <attribute name="dir"/>
+                  <attribute name="addto"/>
+                  <attribute name="ws"/>
                   <sequential>
-                    <local name="seenDir" />
+                    <local name="seenDir"/>
                     <truth property="seenDir">
                       <resourcecount when="gt" count="0">
                         <intersect id="intersection">
-                          <resources refid="@{ws}" />
-                          <file name="@{dir}" />
+                          <resources refid="@{ws}"/>
+                          <file name="@{dir}"/>
                         </intersect>
                       </resourcecount>
                     </truth>
                     <sequential unless:true="${seenDir}">
                       <augment id="@{ws}">
-                        <file file="@{dir}" />
+                        <file file="@{dir}"/>
                       </augment>
-                      <local name="exists" />
+                      <local name="exists"/>
                       <truth property="exists">
-                        <available file="@{dir}/@{name}" />
+                        <available file="@{dir}/@{name}"/>
                       </truth>
 
                       <sequential if:true="${exists}">
                         <augment id="@{addto}">
-                          <file file="@{dir}/@{name}" />
+                          <file file="@{dir}/@{name}"/>
                         </augment>
                       </sequential>
                       <sequential unless:true="${exists}">
-                        <local name="parent.dir" />
-                        <dirname property="parent.dir" file="@{dir}" />
-                        <step dir="${parent.dir}" name="@{name}" addto="@{addto}" ws="@{ws}" />
+                        <local name="parent.dir"/>
+                        <dirname property="parent.dir" file="@{dir}"/>
+                        <step dir="${parent.dir}" name="@{name}" addto="@{addto}" ws="@{ws}"/>
                       </sequential>
                     </sequential>
                   </sequential>
                 </macrodef>
 
                 <truth property="pom-only">
-                  <equals arg1="${project.packaging}" arg2="pom" />
+                  <equals arg1="${project.packaging}" arg2="pom"/>
                 </truth>
                 <sequential unless:true="${pom-only}">
-                  <union id="notices" />
-                  <seek name="LICENSE.txt" addto="notices" />
-                  <seek name="NOTICE.txt" addto="notices" />
+                  <union id="notices"/>
+                  <seek name="LICENSE.txt" addto="notices"/>
+                  <seek name="NOTICE.txt" addto="notices"/>
 
-                  <mkdir dir="${project.build.directory}/generated-resources/notices/META-INF" />
+                  <mkdir dir="${project.build.directory}/generated-resources/notices/META-INF"/>
                   <copy verbose="true" todir="${project.build.directory}/generated-resources/notices/META-INF">
-                    <resources refid="notices" />
+                    <resources refid="notices"/>
                   </copy>
 
-                  <mkdir dir="${project.build.directory}/generated-test-resources/notices/META-INF" />
+                  <mkdir dir="${project.build.directory}/generated-test-resources/notices/META-INF"/>
                   <copy verbose="true" todir="${project.build.directory}/generated-test-resources/notices/META-INF">
-                    <resources refid="notices" />
+                    <resources refid="notices"/>
                   </copy>
 
-                  <mkdir dir="${project.build.directory}/apidocs/META-INF" />
+                  <mkdir dir="${project.build.directory}/apidocs/META-INF"/>
                   <copy verbose="true" todir="${project.build.directory}/apidocs/META-INF">
-                    <resources refid="notices" />
+                    <resources refid="notices"/>
                   </copy>
                 </sequential>
               </target>
@@ -436,6 +436,36 @@
         <version>${project.version}</version>
       </dependency>
 
+      <dependency>
+        <groupId>org.apache.geronimo.specs</groupId>
+        <artifactId>geronimo-jpa_2.0_spec</artifactId>
+        <version>1.1</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.geronimo.specs</groupId>
+        <artifactId>geronimo-servlet_3.0_spec</artifactId>
+        <version>1.0</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.openjpa</groupId>
+        <artifactId>openjpa</artifactId>
+        <version>2.4.0</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.derby</groupId>
+        <artifactId>derby</artifactId>
+        <version>10.11.1.1</version>
+      </dependency>
+
+      <dependency>
+        <groupId>javax.transaction</groupId>
+        <artifactId>jta</artifactId>
+        <version>1.1</version>
+      </dependency>
+
       <!--  REQUIRED FOR JCS CORE -->
       <dependency>
         <groupId>commons-logging</groupId>
@@ -478,7 +508,7 @@
       <dependency>
         <groupId>junit</groupId>
         <artifactId>junit</artifactId>
-        <version>4.11</version>
+        <version>4.12</version>
         <scope>test</scope>
       </dependency>
       <dependency>
@@ -560,7 +590,7 @@
       <dependency>
         <groupId>org.apache.openwebbeans</groupId>
         <artifactId>openwebbeans-impl</artifactId>
-        <version>1.5.0</version>
+        <version>1.6.2</version>
         <scope>test</scope>
       </dependency>
 
@@ -593,6 +623,22 @@
         <version>${jsr107.api.version}</version>
       </dependency>
 
+      <dependency>
+        <groupId>org.apache.tomcat</groupId>
+        <artifactId>tomcat-catalina</artifactId>
+        <version>8.0.26</version>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.tomcat</groupId>
+        <artifactId>tomcat-jasper</artifactId>
+        <version>8.0.26</version>
+      </dependency>
+      <dependency>
+        <groupId>commons-io</groupId>
+        <artifactId>commons-io</artifactId>
+        <version>2.4</version>
+      </dependency>
+
     </dependencies>
   </dependencyManagement>
 
@@ -645,7 +691,7 @@
                 <!-- disable assembly:single from commons-parent
                      release profile; multimodule assembly handled
                      by dist module -->
-                <phase />
+                <phase/>
               </execution>
             </executions>
           </plugin>
@@ -656,7 +702,7 @@
               <execution>
                 <id>create-source-jar</id>
                 <!-- suppress execution specified by parent profile -->
-                <phase />
+                <phase/>
               </execution>
             </executions>
           </plugin>
@@ -702,7 +748,7 @@
     <commons.encoding>UTF-8</commons.encoding>
     <commons.javadoc.java.link>http://docs.oracle.com/javase/6/docs/api/</commons.javadoc.java.link>
 
-    <jsr107.api.version>1.0.0</jsr107.api.version>
+    <jsr107.api.version>1.0.1</jsr107.api.version>
     <commons.collections.version>4.0</commons.collections.version>
     <commons.lang.version>3.3.2</commons.lang.version>
 

Modified: tomee/deps/branches/commons-jcs/src/changes/changes.xml
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/src/changes/changes.xml?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/src/changes/changes.xml (original)
+++ tomee/deps/branches/commons-jcs/src/changes/changes.xml Sun Sep 27 22:04:25 2015
@@ -20,6 +20,12 @@
 	</properties>
 	<body>
         <release version="2.0" date="unreleased" description="JDK 1.6 based major release">
+            <action dev="tv" type="fix">
+                Fix removal of items from group cache, added several tests
+            </action>
+            <action dev="tv" type="add">
+                Add orderly shutdown of ThreadPoolManager
+            </action>
             <action issue="JCS-124" dev="tv" type="update" due-to="Richard Eigenmann">
                 Make the code in Step 5 on the JCS overview page a full working class that can compile
             </action>

Modified: tomee/deps/branches/commons-jcs/xdocs/faq.fml
URL: http://svn.apache.org/viewvc/tomee/deps/branches/commons-jcs/xdocs/faq.fml?rev=1705584&r1=1705583&r2=1705584&view=diff
==============================================================================
--- tomee/deps/branches/commons-jcs/xdocs/faq.fml (original)
+++ tomee/deps/branches/commons-jcs/xdocs/faq.fml Sun Sep 27 22:04:25 2015
@@ -25,8 +25,14 @@
 		<faq id="required-jars">
 			<question>What jars are required by JCS?</question>
 			<answer>
+                <p>
+                    As of version 2.0, the core of JCS (the LRU
+                    memory cache, the indexed disk cache, the TCP
+                    lateral, and the RMI remote server) only
+                    requires commons-logging.
+                </p>
 				<p>
-					As of verison 1.2.7.0, the core of JCS (the LRU
+					As of version 1.2.7.0, the core of JCS (the LRU
 					memory cache, the indexed disk cache, the TCP
 					lateral, and the RMI remote server) requires only
 					two other jars.
@@ -130,7 +136,7 @@
 				<p>
 					You can download the admin jsp
 					<a
-						href="http://svn.apache.org/viewcvs.cgi/commons/proper/jcs/trunk/src/java/org/apache/jcs/admin/JCSAdmin.jsp">
+						href="http://svn.apache.org/viewvc/commons/proper/jcs/trunk/commons-jcs-core/src/main/java/org/apache/commons/jcs/admin/JCSAdmin.jsp?view=log">
 						here
 					</a>
 					.
@@ -163,7 +169,7 @@
 					The download is available at
 					http://maven.apache.org/download.html.
 					After installing run
-					"mvn" which compiles and tests the entire package.
+					"mvn test" which compiles and tests the entire package.
 					To build a jar run "mvn install".
 				</p>
 			</answer>