You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2011/08/09 13:04:01 UTC

svn commit: r1155305 - in /httpcomponents/httpcore/trunk: httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/ httpcore-nio/src/test/java/org/apache/http/nio/pool/ httpcore/src/main/java/org/apache/http/impl/pool/ httpcore/src/main/java/org/apache...

Author: olegk
Date: Tue Aug  9 11:04:00 2011
New Revision: 1155305

URL: http://svn.apache.org/viewvc?rev=1155305&view=rev
Log:
Moved pool entry ID generation logic from abstract pool classes to specific implementations

Modified:
    httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOConnPool.java
    httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOPoolEntry.java
    httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/pool/TestNIOConnPool.java
    httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/pool/TestRouteSpecificPool.java
    httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicConnPool.java
    httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicPoolEntry.java
    httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/PoolEntry.java
    httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestConnPool.java
    httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestPoolEntry.java
    httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestRouteSpecificPool.java

Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOConnPool.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOConnPool.java?rev=1155305&r1=1155304&r2=1155305&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOConnPool.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOConnPool.java Tue Aug  9 11:04:00 2011
@@ -29,6 +29,7 @@ package org.apache.http.impl.nio.pool;
 import java.io.IOException;
 import java.net.InetSocketAddress;
 import java.net.SocketAddress;
+import java.util.concurrent.atomic.AtomicLong;
 
 import org.apache.http.HttpConnection;
 import org.apache.http.HttpHost;
@@ -47,6 +48,8 @@ import org.apache.http.params.HttpParams
 @ThreadSafe
 public class BasicNIOConnPool extends AbstractNIOConnPool<HttpHost, NHttpClientConnection, BasicNIOPoolEntry> {
 
+    private static AtomicLong COUNTER = new AtomicLong();
+
     private final HttpResponseFactory responseFactory;
     private final ByteBufferAllocator allocator;
     private final HttpParams params;
@@ -79,7 +82,7 @@ public class BasicNIOConnPool extends Ab
 
     @Override
     protected BasicNIOPoolEntry createEntry(final HttpHost host, final NHttpClientConnection conn) {
-        return new BasicNIOPoolEntry(host, conn);
+        return new BasicNIOPoolEntry(Long.toString(COUNTER.getAndIncrement()), host, conn);
     }
 
     @Override

Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOPoolEntry.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOPoolEntry.java?rev=1155305&r1=1155304&r2=1155305&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOPoolEntry.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/BasicNIOPoolEntry.java Tue Aug  9 11:04:00 2011
@@ -34,8 +34,8 @@ import org.apache.http.pool.PoolEntry;
 @ThreadSafe
 public class BasicNIOPoolEntry extends PoolEntry<HttpHost, NHttpClientConnection> {
 
-    public BasicNIOPoolEntry(final HttpHost route, final NHttpClientConnection conn) {
-        super(route, conn);
+    public BasicNIOPoolEntry(final String id, final HttpHost route, final NHttpClientConnection conn) {
+        super(id, route, conn);
     }
 
 }

Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/pool/TestNIOConnPool.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/pool/TestNIOConnPool.java?rev=1155305&r1=1155304&r2=1155305&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/pool/TestNIOConnPool.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/pool/TestNIOConnPool.java Tue Aug  9 11:04:00 2011
@@ -51,7 +51,7 @@ public class TestNIOConnPool {
     static class LocalPoolEntry extends PoolEntry<String, IOSession> {
 
         public LocalPoolEntry(final String route, final IOSession conn) {
-            super(route, conn);
+            super(null, route, conn);
         }
 
     }

Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/pool/TestRouteSpecificPool.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/pool/TestRouteSpecificPool.java?rev=1155305&r1=1155304&r2=1155305&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/pool/TestRouteSpecificPool.java (original)
+++ httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/nio/pool/TestRouteSpecificPool.java Tue Aug  9 11:04:00 2011
@@ -44,7 +44,7 @@ public class TestRouteSpecificPool {
     static class LocalPoolEntry extends PoolEntry<String, IOSession> {
 
         public LocalPoolEntry(final String route, final IOSession conn) {
-            super(route, conn);
+            super(null, route, conn);
         }
 
     }

Modified: httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicConnPool.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicConnPool.java?rev=1155305&r1=1155304&r2=1155305&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicConnPool.java (original)
+++ httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicConnPool.java Tue Aug  9 11:04:00 2011
@@ -29,6 +29,7 @@ package org.apache.http.impl.pool;
 import java.io.IOException;
 import java.net.InetSocketAddress;
 import java.net.Socket;
+import java.util.concurrent.atomic.AtomicLong;
 
 import javax.net.ssl.SSLSocketFactory;
 
@@ -44,6 +45,8 @@ import org.apache.http.pool.AbstractConn
 @ThreadSafe
 public class BasicConnPool extends AbstractConnPool<HttpHost, HttpClientConnection, BasicPoolEntry> {
 
+    private static AtomicLong COUNTER = new AtomicLong();
+
     private final SSLSocketFactory sslfactory;
     private final HttpParams params;
 
@@ -86,7 +89,7 @@ public class BasicConnPool extends Abstr
 
     @Override
     protected BasicPoolEntry createEntry(final HttpHost host, final HttpClientConnection conn) {
-        return new BasicPoolEntry(host, conn);
+        return new BasicPoolEntry(Long.toString(COUNTER.getAndIncrement()), host, conn);
     }
 
     @Override

Modified: httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicPoolEntry.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicPoolEntry.java?rev=1155305&r1=1155304&r2=1155305&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicPoolEntry.java (original)
+++ httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/impl/pool/BasicPoolEntry.java Tue Aug  9 11:04:00 2011
@@ -34,8 +34,8 @@ import org.apache.http.pool.PoolEntry;
 @ThreadSafe
 public class BasicPoolEntry extends PoolEntry<HttpHost, HttpClientConnection> {
 
-    public BasicPoolEntry(final HttpHost route, final HttpClientConnection conn) {
-        super(route, conn);
+    public BasicPoolEntry(final String id, final HttpHost route, final HttpClientConnection conn) {
+        super(id, route, conn);
     }
 
 }

Modified: httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/PoolEntry.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/PoolEntry.java?rev=1155305&r1=1155304&r2=1155305&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/PoolEntry.java (original)
+++ httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/PoolEntry.java Tue Aug  9 11:04:00 2011
@@ -27,16 +27,13 @@
 package org.apache.http.pool;
 
 import java.util.concurrent.TimeUnit;
-import java.util.concurrent.atomic.AtomicLong;
 
 import org.apache.http.annotation.ThreadSafe;
 
 @ThreadSafe
 public class PoolEntry<T, C> {
 
-    private static AtomicLong COUNTER = new AtomicLong();
-
-    private final long id;
+    private final String id;
     private final T route;
     private final C conn;
     private final long created;
@@ -46,7 +43,8 @@ public class PoolEntry<T, C> {
     private long updated;
     private long expiry;
 
-    public PoolEntry(final T route, final C conn, final long timeToLive, final TimeUnit tunit) {
+    public PoolEntry(final String id, final T route, final C conn,
+            final long timeToLive, final TimeUnit tunit) {
         super();
         if (route == null) {
             throw new IllegalArgumentException("Route may not be null");
@@ -57,9 +55,9 @@ public class PoolEntry<T, C> {
         if (tunit == null) {
             throw new IllegalArgumentException("Time unit may not be null");
         }
+        this.id = id;
         this.route = route;
         this.conn = conn;
-        this.id = COUNTER.incrementAndGet();
         this.created = System.currentTimeMillis();
         if (timeToLive > 0) {
             this.validUnit = this.created + tunit.toMillis(timeToLive);
@@ -69,11 +67,11 @@ public class PoolEntry<T, C> {
         this.expiry = this.validUnit;
     }
 
-    public PoolEntry(final T route, final C conn) {
-        this(route, conn, 0, TimeUnit.MILLISECONDS);
+    public PoolEntry(final String id, final T route, final C conn) {
+        this(id, route, conn, 0, TimeUnit.MILLISECONDS);
     }
 
-    public long getId() {
+    public String getId() {
         return this.id;
     }
 

Modified: httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestConnPool.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestConnPool.java?rev=1155305&r1=1155304&r2=1155305&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestConnPool.java (original)
+++ httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestConnPool.java Tue Aug  9 11:04:00 2011
@@ -51,7 +51,7 @@ public class TestConnPool {
     static class LocalPoolEntry extends PoolEntry<String, HttpConnection> {
 
         public LocalPoolEntry(final String route, final HttpConnection conn) {
-            super(route, conn);
+            super(null, route, conn);
         }
 
     }

Modified: httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestPoolEntry.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestPoolEntry.java?rev=1155305&r1=1155304&r2=1155305&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestPoolEntry.java (original)
+++ httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestPoolEntry.java Tue Aug  9 11:04:00 2011
@@ -40,12 +40,12 @@ public class TestPoolEntry {
 
         public MockPoolEntry(final String route,
                 long timeToLive, final TimeUnit tunit) {
-            super(route, Mockito.mock(HttpConnection.class), timeToLive, tunit);
+            super(null, route, Mockito.mock(HttpConnection.class), timeToLive, tunit);
         }
 
         public MockPoolEntry(final String route, final HttpConnection conn,
                 long timeToLive, final TimeUnit tunit) {
-            super(route, conn, timeToLive, tunit);
+            super(null, route, conn, timeToLive, tunit);
         }
 
     }

Modified: httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestRouteSpecificPool.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestRouteSpecificPool.java?rev=1155305&r1=1155304&r2=1155305&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestRouteSpecificPool.java (original)
+++ httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/pool/TestRouteSpecificPool.java Tue Aug  9 11:04:00 2011
@@ -41,7 +41,7 @@ public class TestRouteSpecificPool {
     static class LocalPoolEntry extends PoolEntry<String, HttpConnection> {
 
         public LocalPoolEntry(final String route, final HttpConnection conn) {
-            super(route, conn);
+            super(null, route, conn);
         }
 
     }