Return-Path: X-Original-To: apmail-hc-commits-archive@www.apache.org Delivered-To: apmail-hc-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 4A63F87BA for ; Wed, 7 Sep 2011 20:44:56 +0000 (UTC) Received: (qmail 69338 invoked by uid 500); 7 Sep 2011 20:44:56 -0000 Delivered-To: apmail-hc-commits-archive@hc.apache.org Received: (qmail 69294 invoked by uid 500); 7 Sep 2011 20:44:55 -0000 Mailing-List: contact commits-help@hc.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "HttpComponents Project" Delivered-To: mailing list commits@hc.apache.org Received: (qmail 69287 invoked by uid 99); 7 Sep 2011 20:44:55 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 07 Sep 2011 20:44:55 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 07 Sep 2011 20:44:50 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 2599823889E7 for ; Wed, 7 Sep 2011 20:44:28 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1166394 - in /httpcomponents/httpcore/trunk: httpcore-nio/src/main/java/org/apache/http/impl/nio/pool/ httpcore-nio/src/main/java/org/apache/http/nio/pool/ httpcore-nio/src/test/java/org/apache/http/impl/nio/pool/ httpcore-nio/src/test/jav... Date: Wed, 07 Sep 2011 20:44:27 -0000 To: commits@hc.apache.org From: olegk@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20110907204428.2599823889E7@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: olegk Date: Wed Sep 7 20:44:26 2011 New Revision: 1166394 URL: http://svn.apache.org/viewvc?rev=1166394&view=rev Log: Added abstract methods #close and #isClosed to PoolEntry; pool implementations to check whether or not the underlying is closed prior when processing lease requests 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/main/java/org/apache/http/nio/pool/AbstractNIOConnPool.java httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/nio/pool/RouteSpecificPool.java httpcomponents/httpcore/trunk/httpcore-nio/src/test/java/org/apache/http/impl/nio/pool/TestBasicNIOConnPool.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/AbstractConnPool.java httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/PoolEntry.java httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/RouteSpecificPool.java httpcomponents/httpcore/trunk/httpcore/src/test/java/org/apache/http/impl/pool/TestBasicConnPool.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=1166394&r1=1166393&r2=1166394&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 Wed Sep 7 20:44:26 2011 @@ -26,7 +26,6 @@ */ package org.apache.http.impl.nio.pool; -import java.io.IOException; import java.net.InetSocketAddress; import java.net.SocketAddress; import java.util.concurrent.Future; @@ -98,15 +97,6 @@ public class BasicNIOConnPool extends Ab } @Override - protected void closeEntry(final BasicNIOPoolEntry entry) { - NHttpClientConnection conn = entry.getConnection(); - try { - conn.shutdown(); - } catch (IOException ex) { - } - } - - @Override public Future lease( final HttpHost route, final Object state, 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=1166394&r1=1166393&r2=1166394&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 Wed Sep 7 20:44:26 2011 @@ -26,6 +26,8 @@ */ package org.apache.http.impl.nio.pool; +import java.io.IOException; + import org.apache.http.HttpHost; import org.apache.http.annotation.ThreadSafe; import org.apache.http.nio.NHttpClientConnection; @@ -43,4 +45,17 @@ public class BasicNIOPoolEntry extends P super(id, route, conn); } + @Override + public void close() { + try { + getConnection().close(); + } catch (IOException ignore) { + } + } + + @Override + public boolean isClosed() { + return !getConnection().isOpen(); + } + } Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/nio/pool/AbstractNIOConnPool.java URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/nio/pool/AbstractNIOConnPool.java?rev=1166394&r1=1166393&r2=1166394&view=diff ============================================================================== --- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/nio/pool/AbstractNIOConnPool.java (original) +++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/nio/pool/AbstractNIOConnPool.java Wed Sep 7 20:44:26 2011 @@ -119,8 +119,6 @@ public abstract class AbstractNIOConnPoo protected abstract E createEntry(T route, C conn); - protected abstract void closeEntry(E entry); - public boolean isShutdown() { return this.isShutDown; } @@ -136,10 +134,10 @@ public abstract class AbstractNIOConnPoo sessionRequest.cancel(); } for (E entry: this.available) { - closeEntry(entry); + entry.close(); } for (E entry: this.leased) { - closeEntry(entry); + entry.close(); } for (RouteSpecificPool pool: this.routeToPool.values()) { pool.shutdown(); @@ -165,11 +163,6 @@ public abstract class AbstractNIOConnPoo return AbstractNIOConnPool.this.createEntry(route, conn); } - @Override - protected void closeEntry(final E entry) { - AbstractNIOConnPool.this.closeEntry(entry); - } - }; this.routeToPool.put(route, pool); } @@ -226,7 +219,7 @@ public abstract class AbstractNIOConnPoo if (reusable) { this.available.add(entry); } else { - closeEntry(entry); + entry.close(); } processPendingRequests(); } @@ -259,8 +252,8 @@ public abstract class AbstractNIOConnPoo if (entry == null) { break; } - if (entry.isExpired(System.currentTimeMillis())) { - closeEntry(entry); + if (entry.isClosed() || entry.isExpired(System.currentTimeMillis())) { + entry.close(); this.available.remove(entry); pool.free(entry, false); } else { @@ -285,7 +278,7 @@ public abstract class AbstractNIOConnPoo if (lastUsed == null) { break; } - closeEntry(lastUsed); + lastUsed.close(); this.available.remove(lastUsed); pool.remove(lastUsed); } @@ -301,7 +294,7 @@ public abstract class AbstractNIOConnPoo if (totalAvailable > freeCapacity - 1) { if (!this.available.isEmpty()) { E lastUsed = this.available.removeFirst(); - closeEntry(lastUsed); + lastUsed.close(); RouteSpecificPool otherpool = getPool(lastUsed.getRoute()); otherpool.remove(lastUsed); } @@ -537,7 +530,7 @@ public abstract class AbstractNIOConnPoo while (it.hasNext()) { E entry = it.next(); if (entry.getUpdated() <= deadline) { - closeEntry(entry); + entry.close(); RouteSpecificPool pool = getPool(entry.getRoute()); pool.remove(entry); it.remove(); @@ -557,7 +550,7 @@ public abstract class AbstractNIOConnPoo while (it.hasNext()) { E entry = it.next(); if (entry.isExpired(now)) { - closeEntry(entry); + entry.close(); RouteSpecificPool pool = getPool(entry.getRoute()); pool.remove(entry); it.remove(); Modified: httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/nio/pool/RouteSpecificPool.java URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/nio/pool/RouteSpecificPool.java?rev=1166394&r1=1166393&r2=1166394&view=diff ============================================================================== --- httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/nio/pool/RouteSpecificPool.java (original) +++ httpcomponents/httpcore/trunk/httpcore-nio/src/main/java/org/apache/http/nio/pool/RouteSpecificPool.java Wed Sep 7 20:44:26 2011 @@ -57,8 +57,6 @@ abstract class RouteSpecificPool { @@ -86,12 +96,6 @@ public class TestNIOConnPool { return new LocalPoolEntry(route, session); } - @Override - protected void closeEntry(final LocalPoolEntry entry) { - IOSession session = entry.getConnection(); - session.close(); - } - } @Test 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=1166394&r1=1166393&r2=1166394&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 Wed Sep 7 20:44:26 2011 @@ -47,6 +47,16 @@ public class TestRouteSpecificPool { super(null, route, conn); } + @Override + public void close() { + getConnection().close(); + } + + @Override + public boolean isClosed() { + return getConnection().isClosed(); + } + } static class LocalRoutePool extends RouteSpecificPool { @@ -60,12 +70,6 @@ public class TestRouteSpecificPool { return new LocalPoolEntry(route, session); } - @Override - protected void closeEntry(final LocalPoolEntry entry) { - IOSession session = entry.getConnection(); - session.close(); - } - }; @Test 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=1166394&r1=1166393&r2=1166394&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 Wed Sep 7 20:44:26 2011 @@ -26,11 +26,9 @@ */ package org.apache.http.impl.pool; -import java.io.IOException; import java.util.concurrent.atomic.AtomicLong; import org.apache.http.HttpClientConnection; -import org.apache.http.HttpConnection; import org.apache.http.HttpHost; import org.apache.http.annotation.ThreadSafe; import org.apache.http.params.HttpParams; @@ -60,13 +58,4 @@ public class BasicConnPool extends Abstr return new BasicPoolEntry(Long.toString(COUNTER.getAndIncrement()), host, conn); } - @Override - protected void closeEntry(final BasicPoolEntry entry) { - HttpConnection conn = entry.getConnection(); - try { - conn.close(); - } catch (IOException ignore) { - } - } - } 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=1166394&r1=1166393&r2=1166394&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 Wed Sep 7 20:44:26 2011 @@ -26,6 +26,8 @@ */ package org.apache.http.impl.pool; +import java.io.IOException; + import org.apache.http.HttpClientConnection; import org.apache.http.HttpHost; import org.apache.http.annotation.ThreadSafe; @@ -41,4 +43,17 @@ public class BasicPoolEntry extends Pool super(id, route, conn); } + @Override + public void close() { + try { + this.getConnection().close(); + } catch (IOException ignore) { + } + } + + @Override + public boolean isClosed() { + return !this.getConnection().isOpen(); + } + } Modified: httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/AbstractConnPool.java URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/AbstractConnPool.java?rev=1166394&r1=1166393&r2=1166394&view=diff ============================================================================== --- httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/AbstractConnPool.java (original) +++ httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/AbstractConnPool.java Wed Sep 7 20:44:26 2011 @@ -95,8 +95,6 @@ public abstract class AbstractConnPool pool: this.routeToPool.values()) { pool.shutdown(); @@ -135,11 +133,6 @@ public abstract class AbstractConnPool freeCapacity - 1) { if (!this.available.isEmpty()) { E lastUsed = this.available.removeFirst(); - closeEntry(lastUsed); + lastUsed.close(); RouteSpecificPool otherpool = getPool(lastUsed.getRoute()); otherpool.remove(lastUsed); } @@ -291,7 +284,7 @@ public abstract class AbstractConnPool pool = getPool(entry.getRoute()); pool.remove(entry); it.remove(); @@ -443,7 +436,7 @@ public abstract class AbstractConnPool pool = getPool(entry.getRoute()); pool.remove(entry); it.remove(); 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=1166394&r1=1166393&r2=1166394&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 Wed Sep 7 20:44:26 2011 @@ -39,7 +39,7 @@ import org.apache.http.annotation.Thread * @since 4.2 */ @ThreadSafe -public class PoolEntry { +public abstract class PoolEntry { private final String id; private final T route; @@ -133,6 +133,10 @@ public class PoolEntry { return now >= this.expiry; } + public abstract void close(); + + public abstract boolean isClosed(); + @Override public String toString() { StringBuilder buffer = new StringBuilder(); Modified: httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/RouteSpecificPool.java URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/RouteSpecificPool.java?rev=1166394&r1=1166393&r2=1166394&view=diff ============================================================================== --- httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/RouteSpecificPool.java (original) +++ httpcomponents/httpcore/trunk/httpcore/src/main/java/org/apache/http/pool/RouteSpecificPool.java Wed Sep 7 20:44:26 2011 @@ -51,8 +51,6 @@ abstract class RouteSpecificPool { @@ -66,15 +79,6 @@ public class TestConnPool { return new LocalPoolEntry(route, conn); } - @Override - protected void closeEntry(final LocalPoolEntry entry) { - HttpConnection conn = entry.getConnection(); - try { - conn.close(); - } catch (IOException ignore) { - } - } - } @Test @@ -112,7 +116,9 @@ public class TestConnPool { @Test public void testLeaseRelease() throws Exception { HttpConnection conn1 = Mockito.mock(HttpConnection.class); + Mockito.when(conn1.isOpen()).thenReturn(true); HttpConnection conn2 = Mockito.mock(HttpConnection.class); + Mockito.when(conn2.isOpen()).thenReturn(true); LocalConnFactory connFactory = Mockito.mock(LocalConnFactory.class); Mockito.when(connFactory.create(Mockito.eq("somehost"))).thenReturn(conn1); @@ -214,9 +220,11 @@ public class TestConnPool { LocalConnFactory connFactory = Mockito.mock(LocalConnFactory.class); HttpConnection conn1 = Mockito.mock(HttpConnection.class); + Mockito.when(conn1.isOpen()).thenReturn(true); Mockito.when(connFactory.create(Mockito.eq("somehost"))).thenReturn(conn1); HttpConnection conn2 = Mockito.mock(HttpConnection.class); + Mockito.when(conn2.isOpen()).thenReturn(true); Mockito.when(connFactory.create(Mockito.eq("otherhost"))).thenReturn(conn2); LocalConnPool pool = new LocalConnPool(connFactory, 2, 10); @@ -313,12 +321,17 @@ public class TestConnPool { LocalConnFactory connFactory = Mockito.mock(LocalConnFactory.class); HttpConnection conn1 = Mockito.mock(HttpConnection.class); + Mockito.when(conn1.isOpen()).thenReturn(true); HttpConnection conn2 = Mockito.mock(HttpConnection.class); + Mockito.when(conn2.isOpen()).thenReturn(true); HttpConnection conn3 = Mockito.mock(HttpConnection.class); + Mockito.when(conn3.isOpen()).thenReturn(true); Mockito.when(connFactory.create(Mockito.eq("somehost"))).thenReturn(conn1, conn2, conn3); HttpConnection conn4 = Mockito.mock(HttpConnection.class); + Mockito.when(conn4.isOpen()).thenReturn(true); HttpConnection conn5 = Mockito.mock(HttpConnection.class); + Mockito.when(conn5.isOpen()).thenReturn(true); Mockito.when(connFactory.create(Mockito.eq("otherhost"))).thenReturn(conn4, conn5); LocalConnPool pool = new LocalConnPool(connFactory, 2, 10); @@ -417,8 +430,11 @@ public class TestConnPool { LocalConnFactory connFactory = Mockito.mock(LocalConnFactory.class); HttpConnection conn1 = Mockito.mock(HttpConnection.class); + Mockito.when(conn1.isOpen()).thenReturn(true); HttpConnection conn2 = Mockito.mock(HttpConnection.class); + Mockito.when(conn2.isOpen()).thenReturn(true); HttpConnection conn3 = Mockito.mock(HttpConnection.class); + Mockito.when(conn3.isOpen()).thenReturn(true); Mockito.when(connFactory.create(Mockito.eq("somehost"))).thenReturn(conn1, conn2, conn3); LocalConnPool pool = new LocalConnPool(connFactory, 2, 10); @@ -480,6 +496,7 @@ public class TestConnPool { LocalConnFactory connFactory = Mockito.mock(LocalConnFactory.class); HttpConnection conn1 = Mockito.mock(HttpConnection.class); + Mockito.when(conn1.isOpen()).thenReturn(true); Mockito.when(connFactory.create(Mockito.eq("somehost"))).thenReturn(conn1); LocalConnPool pool = new LocalConnPool(connFactory, 2, 2); @@ -555,6 +572,7 @@ public class TestConnPool { LocalConnFactory connFactory = Mockito.mock(LocalConnFactory.class); HttpConnection conn1 = Mockito.mock(HttpConnection.class); + Mockito.when(conn1.isOpen()).thenReturn(true); Mockito.when(connFactory.create(Mockito.eq("somehost"))).thenReturn(conn1); LocalConnPool pool = new LocalConnPool(connFactory, 1, 1); @@ -601,6 +619,7 @@ public class TestConnPool { LocalConnFactory connFactory = Mockito.mock(LocalConnFactory.class); HttpConnection conn1 = Mockito.mock(HttpConnection.class); + Mockito.when(conn1.isOpen()).thenReturn(true); Mockito.when(connFactory.create(Mockito.eq("somehost"))).thenReturn(conn1); LocalConnPool pool = new LocalConnPool(connFactory, 1, 1); @@ -636,7 +655,9 @@ public class TestConnPool { LocalConnFactory connFactory = Mockito.mock(LocalConnFactory.class); HttpConnection conn1 = Mockito.mock(HttpConnection.class); + Mockito.when(conn1.isOpen()).thenReturn(true); HttpConnection conn2 = Mockito.mock(HttpConnection.class); + Mockito.when(conn2.isOpen()).thenReturn(true); Mockito.when(connFactory.create(Mockito.eq("somehost"))).thenReturn(conn1, conn2); @@ -726,8 +747,10 @@ public class TestConnPool { LocalConnFactory connFactory = Mockito.mock(LocalConnFactory.class); HttpConnection conn1 = Mockito.mock(HttpConnection.class); + Mockito.when(conn1.isOpen()).thenReturn(true); Mockito.when(connFactory.create(Mockito.eq("somehost"))).thenReturn(conn1); HttpConnection conn2 = Mockito.mock(HttpConnection.class); + Mockito.when(conn2.isOpen()).thenReturn(true); Mockito.when(connFactory.create(Mockito.eq("otherhost"))).thenReturn(conn2); LocalConnPool pool = new LocalConnPool(connFactory, 2, 2); 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=1166394&r1=1166393&r2=1166394&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 Wed Sep 7 20:44:26 2011 @@ -26,6 +26,7 @@ */ package org.apache.http.pool; +import java.io.IOException; import java.util.concurrent.TimeUnit; import junit.framework.Assert; @@ -48,6 +49,19 @@ public class TestPoolEntry { super(null, route, conn, timeToLive, tunit); } + @Override + public void close() { + try { + getConnection().close(); + } catch (IOException ignore) { + } + } + + @Override + public boolean isClosed() { + return !getConnection().isOpen(); + } + } @Test 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=1166394&r1=1166393&r2=1166394&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 Wed Sep 7 20:44:26 2011 @@ -44,6 +44,19 @@ public class TestRouteSpecificPool { super(null, route, conn); } + @Override + public void close() { + try { + getConnection().close(); + } catch (IOException ignore) { + } + } + + @Override + public boolean isClosed() { + return !getConnection().isOpen(); + } + } static class LocalRoutePool extends RouteSpecificPool { @@ -57,15 +70,6 @@ public class TestRouteSpecificPool { return new LocalPoolEntry(getRoute(), conn); } - @Override - protected void closeEntry(LocalPoolEntry entry) { - HttpConnection conn = entry.getConnection(); - try { - conn.close(); - } catch (IOException ignore) { - } - } - }; @Test