You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by tr...@apache.org on 2007/11/24 05:26:39 UTC

svn commit: r597801 - /mina/trunk/transport-serial/src/main/java/org/apache/mina/transport/serial/SerialAddress.java

Author: trustin
Date: Fri Nov 23 20:26:38 2007
New Revision: 597801

URL: http://svn.apache.org/viewvc?rev=597801&view=rev
Log:
* Changed type of dataBits to DataBits enum
* Added sanity check

Modified:
    mina/trunk/transport-serial/src/main/java/org/apache/mina/transport/serial/SerialAddress.java

Modified: mina/trunk/transport-serial/src/main/java/org/apache/mina/transport/serial/SerialAddress.java
URL: http://svn.apache.org/viewvc/mina/trunk/transport-serial/src/main/java/org/apache/mina/transport/serial/SerialAddress.java?rev=597801&r1=597800&r2=597801&view=diff
==============================================================================
--- mina/trunk/transport-serial/src/main/java/org/apache/mina/transport/serial/SerialAddress.java (original)
+++ mina/trunk/transport-serial/src/main/java/org/apache/mina/transport/serial/SerialAddress.java Fri Nov 23 20:26:38 2007
@@ -51,17 +51,12 @@
         NONE, RTSCTS_IN, RTSCTS_OUT, XONXOFF_IN, XONXOFF_OUT
     }
 
-    private String name;
-
-    private int bauds;
-
-    private int dataBits;
-
-    private StopBits stopBits;
-
-    private Parity parity;
-
-    private FlowControl flowControl;
+    private final String name;
+    private final int bauds;
+    private final DataBits dataBits;
+    private final StopBits stopBits;
+    private final Parity parity;
+    private final FlowControl flowControl;
 
     /**
      * Create an address for a serial communication, associating a serial interface and
@@ -73,9 +68,27 @@
      * @param parity parity used
      * @param flowControl flow control used
      */
-    public SerialAddress(String name, int bauds, int dataBits,
+    public SerialAddress(String name, int bauds, DataBits dataBits,
             StopBits stopBits, Parity parity, FlowControl flowControl) {
-        super();
+        if (name == null) {
+            throw new NullPointerException("name");
+        }
+        if (bauds <= 0) {
+            throw new IllegalArgumentException("bauds: " + bauds);
+        }
+        if (dataBits == null) {
+            throw new NullPointerException("dataBits");
+        }
+        if (stopBits == null) {
+            throw new NullPointerException("stopBits");
+        }
+        if (parity == null) {
+            throw new NullPointerException("parity");
+        }
+        if (flowControl == null) {
+            throw new NullPointerException("flowControl");
+        }
+        
         this.name = name;
         this.bauds = bauds;
         this.dataBits = dataBits;
@@ -96,7 +109,7 @@
      * Number of data bits for each communicated bytes.
      * @return the data bits
      */
-    public int getDataBits() {
+    public DataBits getDataBits() {
         return dataBits;
     }
 
@@ -137,20 +150,20 @@
      */
     @Override
     public String toString() {
-        return "serial(" + name + ",bauds:" + bauds + ",databits:" + dataBits
-                + ",stopbits:" + stopBits + ",parity:" + parity
-                + ",flowcontrol:" + flowControl + ")";
+        return name + " (bauds: " + bauds + ", dataBits: " + dataBits
+                + ", stopBits: " + stopBits + ", parity: " + parity
+                + ", flowControl: " + flowControl + ")";
     }
 
     int getDataBitsForRXTX() {
         switch (dataBits) {
-        case 5:
+        case DATABITS_5:
             return SerialPort.DATABITS_5;
-        case 6:
+        case DATABITS_6:
             return SerialPort.DATABITS_6;
-        case 7:
+        case DATABITS_7:
             return SerialPort.DATABITS_7;
-        case 8:
+        case DATABITS_8:
             return SerialPort.DATABITS_8;
         }
         throw new InvalidParameterException("broken databits");