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/05/30 09:38:24 UTC

svn commit: r1129030 - in /commons/sandbox/runtime/trunk/src/main: java/org/apache/commons/runtime/net/ java/org/apache/commons/runtime/platform/unix/ native/include/acr/ native/os/unix/

Author: mturk
Date: Mon May 30 07:38:23 2011
New Revision: 1129030

URL: http://svn.apache.org/viewvc?rev=1129030&view=rev
Log:
Add separate SelectionOp flags

Added:
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SelectionOp.java   (with props)
Modified:
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/LocalSocketSelectorFactory.java
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/LocalStrings.properties
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/Poll.java
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SelectionKey.java
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SocketSelectorFactory.java
    commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/platform/unix/SocketSelectorImpl.java
    commons/sandbox/runtime/trunk/src/main/native/include/acr/iodefs.h
    commons/sandbox/runtime/trunk/src/main/native/os/unix/poll.c

Modified: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/LocalSocketSelectorFactory.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/LocalSocketSelectorFactory.java?rev=1129030&r1=1129029&r2=1129030&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/LocalSocketSelectorFactory.java (original)
+++ commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/LocalSocketSelectorFactory.java Mon May 30 07:38:23 2011
@@ -55,7 +55,7 @@ public final class LocalSocketSelectorFa
         throws InvalidRangeException, OutOfMemoryError
     {
         if (size < 1 || size > MAX_CAPACITY)
-            throw new InvalidRangeException();
+            throw new InvalidRangeException(Local.sm.get("selector.ERANGE"));
         return new0(size);
     }
 

Modified: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/LocalStrings.properties
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/LocalStrings.properties?rev=1129030&r1=1129029&r2=1129030&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/LocalStrings.properties (original)
+++ commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/LocalStrings.properties Mon May 30 07:38:23 2011
@@ -15,4 +15,5 @@
 addr.EHOSTNAME=Invalid hostname
 port.ERANGE=Port is outside allowed range
 socketd.CLOSED=Socket is already closed
-selector.NULL=Sellector can't be null
\ No newline at end of file
+selector.NULL=Selector can't be null
+selector.ERANGE=Selector size is outsize allowed range

Modified: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/Poll.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/Poll.java?rev=1129030&r1=1129029&r2=1129030&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/Poll.java (original)
+++ commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/Poll.java Mon May 30 07:38:23 2011
@@ -35,37 +35,37 @@ public final class Poll
     /**
      * There is data to read
      */
-    public static final short     POLLIN        = SelectionKey.OP_READ;
+    public static final short     POLLIN        = SelectionOp.READ;
     /**
      * There is urgent data to read.
      * e.g., out-of-band data on TCP socket; pseudo-terminal master in  packet  mode
      * has seen state change in slave.
      */
-    public static final short     POLLPRI       = SelectionKey.OP_PRI;
+    public static final short     POLLPRI       = SelectionOp.PRI;
     /**
      * Writing now will not block.
      */
-    public static final short     POLLOUT       = SelectionKey.OP_WRITE;
+    public static final short     POLLOUT       = SelectionOp.WRITE;
     /**
      * A Stream socket peer closed  connection, or shut down writing half of connection.
      */
-    public static final short     POLLRDHUP     = SelectionKey.OP_RDHUP;
+    public static final short     POLLRDHUP     = SelectionOp.RDHUP;
     /**
      * A stream-oriented connection was either diconnected or aborted.
      */
-    public static final short     POLLHUP       = SelectionKey.OP_HANGUP;
+    public static final short     POLLHUP       = SelectionOp.HANGUP;
     /**
-     * An invalid descriptor was used.
+     * An error has occurred.
      */
-    public static final short     POLLNVAL      = SelectionKey.OP_ERROR;
+    public static final short     POLLERR       = SelectionOp.ERROR;
     /**
-     * An error has occurred.
+     * An invalid descriptor was used.
      */
-    public static final short     POLLERR       = SelectionKey.OP_ERROR;
+    public static final short     POLLNVAL      = SelectionOp.NVAL;
     /**
      * Time-To-Live event occurred.
      */
-    public static final short     POLLTTL       = SelectionKey.OP_TIMEOUT;
+    public static final short     POLLTTL       = SelectionOp.TIMEOUT;
 
 
     private static native int wait0(int[] fds, short[] events, short[] revents,

Modified: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SelectionKey.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SelectionKey.java?rev=1129030&r1=1129029&r2=1129030&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SelectionKey.java (original)
+++ commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SelectionKey.java Mon May 30 07:38:23 2011
@@ -31,59 +31,6 @@ public abstract class SelectionKey
     private Endpoint        endpoint;
     private int             timeout;
 
-    /** Accept operation.
-     * <p>
-     * </p>
-     */
-    static final int OP_ACCEPT          = 0x0001;
-    /** Connect operation.
-     * <p>
-     * </p>
-     */
-    static final int OP_CONNECT         = 0x0002;
-    /** Read operation.
-     * <p>
-     * </p>
-     */
-    static final int OP_READ            = 0x0004;
-    /** Write operation.
-     * <p>
-     * </p>
-     */
-    static final int OP_PRI             = 0x0008;
-    /** Write operation.
-     * <p>
-     * </p>
-     */
-    static final int OP_WRITE           = 0x0010;
-    /** Read hang up operation.
-     * <p>
-     * If present in output it signals that
-     * stream socket peer closed connection,
-     * or shut down writing half of connection.
-     * </p>
-     */
-    static final int OP_RDHUP           = 0x0020;
-    /** Hang up happened on the associated descriptor.
-     * <p>
-     * This is output only flag.
-     * </p>
-     */
-    static final int OP_HANGUP          = 0x0040;
-    /** Error condition happened on the associated descriptor.
-     * <p>
-     * This is output only flag.
-     * </p>
-     */
-    static final int OP_ERROR           = 0x0100;
-    /** Timeout condition happened on the associated descriptor.
-     * <p>
-     * This is output only flag and indicates that Time-To-Live
-     * event occurred.
-     * </p>
-     */
-    static final int OP_TIMEOUT         = 0x0200;
-
     /**
      * Constructs a new {@code SelectionKey} for given selector and enpoint
      */

Added: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SelectionOp.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SelectionOp.java?rev=1129030&view=auto
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SelectionOp.java (added)
+++ commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SelectionOp.java Mon May 30 07:38:23 2011
@@ -0,0 +1,90 @@
+/* Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.commons.runtime.net;
+
+/**
+ * Selection operation type flags.
+ */
+public final class SelectionOp
+{
+
+    private SelectionOp()
+    {
+        // No Instance
+    }
+
+    /** Accept operation.
+     * <p>
+     * </p>
+     */
+    public static final int ACCEPT      = 0x0001;
+    /** Connect operation.
+     * <p>
+     * </p>
+     */
+    public static final int CONNECT     = 0x0002;
+    /** Read operation.
+     * <p>
+     * </p>
+     */
+    public static final int READ        = 0x0004;
+    /** There is urgent data to read.
+     * <p>
+     * </p>
+     */
+    public static final int PRI         = 0x0008;
+    /** Write operation.
+     * <p>
+     * </p>
+     */
+    public static final int WRITE       = 0x0010;
+    /** Read hang up operation.
+     * <p>
+     * If present in output it signals that
+     * stream socket peer closed connection,
+     * or shut down writing half of connection.
+     * </p>
+     */
+    public static final int RDHUP       = 0x0020;
+    /** Hang up happened on the associated descriptor.
+     * <p>
+     * This is output only flag.
+     * </p>
+     */
+    public static final int HANGUP      = 0x0040;
+    /** Error condition happened on the associated descriptor.
+     * <p>
+     * This is output only flag.
+     * </p>
+     */
+    public static final int ERROR       = 0x0100;
+    /**
+     * An invalid descriptor was used.
+     * <p>
+     * This is output only flag.
+     * </p>
+     */
+    public static final int NVAL        = 0x0200;
+    /** Timeout condition happened on the associated descriptor.
+     * <p>
+     * This is output only flag and indicates that Time-To-Live
+     * event occurred.
+     * </p>
+     */
+    public static final int TIMEOUT     = 0x0400;
+
+}

Propchange: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SelectionOp.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SocketSelectorFactory.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SocketSelectorFactory.java?rev=1129030&r1=1129029&r2=1129030&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SocketSelectorFactory.java (original)
+++ commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/net/SocketSelectorFactory.java Mon May 30 07:38:23 2011
@@ -55,7 +55,7 @@ public final class SocketSelectorFactory
         throws InvalidRangeException, OutOfMemoryError
     {
         if (size < 1 || size > MAX_CAPACITY)
-            throw new InvalidRangeException();
+            throw new InvalidRangeException(Local.sm.get("selector.ERANGE"));
         return new0(size);
     }
 

Modified: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/platform/unix/SocketSelectorImpl.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/platform/unix/SocketSelectorImpl.java?rev=1129030&r1=1129029&r2=1129030&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/platform/unix/SocketSelectorImpl.java (original)
+++ commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/platform/unix/SocketSelectorImpl.java Mon May 30 07:38:23 2011
@@ -24,6 +24,7 @@ import org.apache.commons.runtime.net.En
 import org.apache.commons.runtime.net.IllegalSelectorException;
 import org.apache.commons.runtime.net.Poll;
 import org.apache.commons.runtime.net.SelectionKey;
+import org.apache.commons.runtime.net.SelectionOp;
 import org.apache.commons.runtime.net.Selector;
 import org.apache.commons.runtime.AlreadyExistsException;
 import org.apache.commons.runtime.InvalidArgumentException;

Modified: commons/sandbox/runtime/trunk/src/main/native/include/acr/iodefs.h
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/include/acr/iodefs.h?rev=1129030&r1=1129029&r2=1129030&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/include/acr/iodefs.h (original)
+++ commons/sandbox/runtime/trunk/src/main/native/include/acr/iodefs.h Mon May 30 07:38:23 2011
@@ -35,15 +35,6 @@
 #define ACR_FOPEN_NOINHERIT  0x010000  /**< Do not inherit files on exec */
 #define ACR_FOPEN_INFO       0x020000  /**< Open without READ or WRITE access */
 
-#define ACR_POLLIN           0x01
-#define ACR_POLLPRI          0x02
-#define ACR_POLLOUT          0x04
-#define ACR_POLLERR          0x08
-#define ACR_POLLHUP          0x10
-#define ACR_POLLRDHUP        0x20
-#define ACR_POLLNVAL         0x40
-#define ACR_POLLTTL          0x80
-
 #define ACR_OP_ACCEPT        0x0001
 #define ACR_OP_CONNECT       0x0002
 #define ACR_OP_READ          0x0004
@@ -53,6 +44,7 @@
 #define ACR_OP_RDHUP         0x0020
 #define ACR_OP_HANGUP        0x0040
 #define ACR_OP_ERROR         0x0100
-#define ACR_OP_TIMEOUT       0x0200
+#define ACR_OP_NVAL          0x0200
+#define ACR_OP_TIMEOUT       0x0400
 
 #endif /* _ACR_IODEFS_H */

Modified: commons/sandbox/runtime/trunk/src/main/native/os/unix/poll.c
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/os/unix/poll.c?rev=1129030&r1=1129029&r2=1129030&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/os/unix/poll.c (original)
+++ commons/sandbox/runtime/trunk/src/main/native/os/unix/poll.c Mon May 30 07:38:23 2011
@@ -101,7 +101,7 @@ static short reventt(short event)
         rv |= ACR_OP_RDHUP;
 #endif
     if (event & POLLNVAL)
-        rv |= ACR_OP_ERROR;
+        rv |= ACR_OP_NVAL;
     return rv;
 }
 
@@ -436,7 +436,7 @@ ACR_UNX_EXPORT(jint, SocketSelectorImpl,
                 if (ps->ooset[i].exp > now) {
                     /* Expired descriptor */
                     ps->fdset[i].revents = POLLHUP;
-                    pevents[rv] = ACR_POLLTTL;
+                    pevents[rv] = ACR_OP_TIMEOUT;
                     (*env)->SetObjectArrayElement(env, rs, rv++, ps->ooset[i].obj);
                 }
             }