X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosuilib%2FAltosUSBDevice.java;h=49f966f330b56e9f7c3f7fc53bc3dd9c0a161c2c;hp=221ac829727715c08d02b10d4f47c48fb9ecddb2;hb=debian;hpb=1085ec5d57e0ed5d132f2bbdac1a0b6a32c0ab4a diff --git a/altosuilib/AltosUSBDevice.java b/altosuilib/AltosUSBDevice.java index 221ac829..585bd774 100644 --- a/altosuilib/AltosUSBDevice.java +++ b/altosuilib/AltosUSBDevice.java @@ -16,16 +16,17 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -package org.altusmetrum.altosuilib_11; +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 || @@ -94,6 +95,32 @@ public class AltosUSBDevice extends altos_device implements AltosDevice { return false; } + public int hashCode() { + 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) { + if (o == null) + return false; + + if (!(o instanceof AltosUSBDevice)) + return false; + AltosUSBDevice other = (AltosUSBDevice) o; + + return getVendor() == other.getVendor() && + getProduct() == other.getProduct() && + getSerial() == other.getSerial() && + getPath().equals(other.getPath()); + } + static public java.util.List list(int product) { if (!AltosUILib.load_library()) return null;