You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by mt...@apache.org on 2011/06/28 16:42:32 UTC

svn commit: r1140653 - in /commons/sandbox/runtime/trunk/src/main: java/org/apache/commons/runtime/io/Descriptor.java test/org/apache/commons/runtime/TestPosixEndpoint.java

Author: mturk
Date: Tue Jun 28 14:42:32 2011
New Revision: 1140653

URL: http://svn.apache.org/viewvc?rev=1140653&view=rev
Log:
Simple Descriptor retention test

Modified:
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/io/Descriptor.java
    commons/sandbox/runtime/trunk/src/main/test/org/apache/commons/runtime/TestPosixEndpoint.java

Modified: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/io/Descriptor.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/io/Descriptor.java?rev=1140653&r1=1140652&r2=1140653&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/io/Descriptor.java (original)
+++ commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/io/Descriptor.java Tue Jun 28 14:42:32 2011
@@ -235,6 +235,8 @@ public abstract class Descriptor impleme
     {
         try {
             close();
+        } catch (Exception x) {
+            // Ignore exceptions on finalize
         }
         finally {
             fd = 0L;

Modified: commons/sandbox/runtime/trunk/src/main/test/org/apache/commons/runtime/TestPosixEndpoint.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/test/org/apache/commons/runtime/TestPosixEndpoint.java?rev=1140653&r1=1140652&r2=1140653&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/test/org/apache/commons/runtime/TestPosixEndpoint.java (original)
+++ commons/sandbox/runtime/trunk/src/main/test/org/apache/commons/runtime/TestPosixEndpoint.java Tue Jun 28 14:42:32 2011
@@ -22,6 +22,8 @@ import java.util.List;
 import org.testng.annotations.*;
 import org.testng.Assert;
 
+import org.apache.commons.runtime.io.Descriptor;
+
 public class TestPosixEndpoint extends Assert
 {
 
@@ -101,6 +103,12 @@ public class TestPosixEndpoint extends A
         LocalEndpointAddress sa = new LocalEndpointAddress("/tmp/acrposixep1.sock");
         ss.configureBlocking(false);
         ss.bind(sa);
+        // Test Descriptor retention
+        long fd = ss.descriptor().retain();
+        assertFalse(Descriptor.unique(ss.descriptor().fd()));
+        Descriptor.release(fd);
+        assertTrue(Descriptor.unique(ss.descriptor().fd()));
+
         // keyFor() should return null since the endpoint
         // is not yet registered.
         assertNull(ss.keyFor(ps));