Author: cziegeler
Date: Thu Dec 13 04:41:22 2007
New Revision: 603908

URL: http://svn.apache.org/viewvc?rev=603908&view=rev
Log:
Simplify extending the abstract sling repository and open up the 
implementations a little bit to make inheritance easier.

Modified:
    
incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/AbstractSlingRepository.java
    
incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/internal/PooledSession.java
    
incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/internal/SessionPool.java

Modified: 
incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/AbstractSlingRepository.java
URL: 
http://svn.apache.org/viewvc/incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/AbstractSlingRepository.java?rev=603908&r1=603907&r2=603908&view=diff
==============================================================================
--- 
incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/AbstractSlingRepository.java
 (original)
+++ 
incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/AbstractSlingRepository.java
 Thu Dec 13 04:41:22 2007
@@ -151,13 +151,18 @@
 
             public SessionPool createPool(final SessionPoolManager mgr, final 
SimpleCredentials credentials) {
                 // create and configure the new pool
-                final SessionPool pool = new SessionPool(mgr, credentials);
+                final SessionPool pool = createSessionPool(mgr, credentials);
                 pool.setMaxActiveSessions(maxActiveSessions);
                 pool.setMaxActiveSessionsWait(maxActiveSessionsWait);
                 pool.setMaxIdleSessions(maxIdleSessions);
                 return pool;
             }
         };
+    }
+
+    protected SessionPool createSessionPool(final SessionPoolManager mgr, 
final SimpleCredentials credentials) {
+        final SessionPool pool = new SessionPool(mgr, credentials);
+        return pool;
     }
 
     /**

Modified: 
incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/internal/PooledSession.java
URL: 
http://svn.apache.org/viewvc/incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/internal/PooledSession.java?rev=603908&r1=603907&r2=603908&view=diff
==============================================================================
--- 
incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/internal/PooledSession.java
 (original)
+++ 
incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/internal/PooledSession.java
 Thu Dec 13 04:41:22 2007
@@ -77,7 +77,7 @@
      * @param delegatee The <code>Session</code> to which all calls are
      *          delegated.
      */
-    protected PooledSession(SessionPool sessionPool, Session delegatee) {
+    public PooledSession(SessionPool sessionPool, Session delegatee) {
         this.sessionPool = sessionPool;
         this.delegatee = delegatee;
     }

Modified: 
incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/internal/SessionPool.java
URL: 
http://svn.apache.org/viewvc/incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/internal/SessionPool.java?rev=603908&r1=603907&r2=603908&view=diff
==============================================================================
--- 
incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/internal/SessionPool.java
 (original)
+++ 
incubator/sling/trunk/jcr/api/src/main/java/org/apache/sling/jcr/api/internal/SessionPool.java
 Thu Dec 13 04:41:22 2007
@@ -47,6 +47,7 @@
  * implementins pooling and reusing sessions with the defined limits.
  * See [EMAIL PROTECTED] #acquireSession(SimpleCredentials, String)}
  * and [EMAIL PROTECTED] #acquireSession(Session, Credentials)} for details.
+ *
  */
 public class SessionPool {
 
@@ -98,7 +99,7 @@
     /**
      * Active sessions issued by this session pool.
      */
-    private final IdentityHashMap<PooledSession, Session> activeSessions;
+    protected final IdentityHashMap<PooledSession, Session> activeSessions;
 
     /**
      * The maximum number of active sessions for this mapping.
@@ -680,7 +681,7 @@
      * @param delegatee The <code>Session</code> to wrap as a pooled session.
      * @see PooledSession
      */
-    private PooledSession createPooledSession(Session delegatee) throws 
RepositoryException {
+    protected PooledSession createPooledSession(Session delegatee) throws 
RepositoryException {
         PooledSession pooledSession = new PooledSession(this, delegatee);
 
         // keep the pooled session


Reply via email to