From 3f7ddbf313aaabbfba4650cb2036cb41e51a9bde Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Thu, 18 Apr 2013 11:37:28 +0000
Subject: [PATCH] Fix OPENDJ-838: Add ConnectionFactory.close() method to facilitate resource cleanup after application exit

---
 opendj3/opendj-ldap-sdk/src/test/java/com/forgerock/opendj/ldap/DefaultTCPNIOTransportTestCase.java |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/opendj3/opendj-ldap-sdk/src/test/java/com/forgerock/opendj/ldap/DefaultTCPNIOTransportTestCase.java b/opendj3/opendj-ldap-sdk/src/test/java/com/forgerock/opendj/ldap/DefaultTCPNIOTransportTestCase.java
index 7058267..4f6f844 100644
--- a/opendj3/opendj-ldap-sdk/src/test/java/com/forgerock/opendj/ldap/DefaultTCPNIOTransportTestCase.java
+++ b/opendj3/opendj-ldap-sdk/src/test/java/com/forgerock/opendj/ldap/DefaultTCPNIOTransportTestCase.java
@@ -22,11 +22,12 @@
  *
  *
  *      Copyright 2010 Sun Microsystems, Inc.
- *      Portions copyright 2012 ForgeRock AS.
+ *      Portions copyright 2012-2013 ForgeRock AS.
  */
 
 package com.forgerock.opendj.ldap;
 
+import static com.forgerock.opendj.ldap.DefaultTCPNIOTransport.DEFAULT_TRANSPORT;
 import static org.forgerock.opendj.ldap.TestCaseUtils.findFreeSocketAddress;
 import static org.testng.Assert.assertTrue;
 
@@ -36,6 +37,8 @@
 import org.glassfish.grizzly.nio.transport.TCPNIOTransport;
 import org.testng.annotations.Test;
 
+import com.forgerock.opendj.util.ReferenceCountedObject;
+
 /**
  * Tests DefaultTCPNIOTransport class.
  */
@@ -52,9 +55,10 @@
     @Test(enabled = false)
     public void testGetInstance() throws Exception {
         // Create a transport.
-        final TCPNIOTransport transport = DefaultTCPNIOTransport.getInstance();
+        final ReferenceCountedObject<TCPNIOTransport>.Reference transport =
+                DEFAULT_TRANSPORT.acquire();
         SocketAddress socketAddress = findFreeSocketAddress();
-        transport.bind(socketAddress);
+        transport.get().bind(socketAddress);
 
         // Establish a socket connection to see if the transport factory works.
         final Socket socket = new Socket();
@@ -66,6 +70,7 @@
             // Don't stop the transport because it is shared with the ldap server.
         } finally {
             socket.close();
+            transport.release();
         }
     }
 }

--
Gitblit v1.10.0