no longer need patch
[fw/altos] / altosuilib / AltosUSBDevice.java
index 16a0e7709dd5be7c3793bd3eb42c86c481164d6c..585bd7740d293b1b256c408d6c5d32a31912c1cd 100644 (file)
  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
  */
 
-package org.altusmetrum.altosuilib_13;
+package org.altusmetrum.altosuilib_14;
 
 import java.util.*;
 import libaltosJNI.*;
+import org.altusmetrum.altoslib_14.*;
 
 public class AltosUSBDevice  extends altos_device implements AltosDevice {
 
        public String toString() {
                String  name = getName();
-               if (name == null)
+               if (name == null || "".equals(name))
                        name = "Altus Metrum";
                return String.format("%-20.20s %4d %s",
                                     name, getSerial(), getPath());
@@ -33,7 +34,7 @@ public class AltosUSBDevice  extends altos_device implements AltosDevice {
 
        public String toShortString() {
                String  name = getName();
-               if (name == null)
+               if (name == null || "".equals(name))
                        name = "Altus Metrum";
                return String.format("%s %d %s",
                                     name, getSerial(), getPath());
@@ -73,13 +74,13 @@ public class AltosUSBDevice  extends altos_device implements AltosDevice {
 
                if (want_product == AltosUILib.product_basestation)
                        return have_product == AltosUILib.product_teledongle ||
-                               have_product == AltosUILib.product_teleterra ||
                                have_product == AltosUILib.product_telebt ||
                                have_product == AltosUILib.product_megadongle;
 
                if (want_product == AltosUILib.product_altimeter)
                        return have_product == AltosUILib.product_telemetrum ||
                                have_product == AltosUILib.product_telemega ||
+                               have_product == AltosUILib.product_easytimer ||
                                have_product == AltosUILib.product_easymega ||
                                have_product == AltosUILib.product_telegps ||
                                have_product == AltosUILib.product_easymini ||
@@ -95,7 +96,15 @@ public class AltosUSBDevice  extends altos_device implements AltosDevice {
        }
 
        public int hashCode() {
-               return getVendor() ^ getProduct() ^ getSerial();
+               return getVendor() ^ getProduct() ^ getSerial() ^ getPath().hashCode();
+       }
+
+       public AltosUsbId usb_id() {
+               return new AltosUsbId(getVendor(), getProduct());
+       }
+
+       public String usb_product() {
+               return getName();
        }
 
        public boolean equals(Object o) {
@@ -108,7 +117,8 @@ public class AltosUSBDevice  extends altos_device implements AltosDevice {
 
                return getVendor() == other.getVendor() &&
                        getProduct() == other.getProduct() &&
-                       getSerial() == other.getSerial();
+                       getSerial() == other.getSerial() &&
+                       getPath().equals(other.getPath());
        }
 
        static public java.util.List<AltosDevice> list(int product) {