From 63815a3fdd8f0d57a2fde4d058ebf07217764d0b Mon Sep 17 00:00:00 2001 From: Ash Date: Wed, 12 Apr 2017 21:50:32 +1000 Subject: [PATCH] Try to show the name of a HID (if possible) --- .../HIDToVPADNetworkClient/controller/HidController.java | 3 ++- src/net/ash/HIDToVPADNetworkClient/hid/HidDevice.java | 7 +++++++ .../hid/hid4java/Hid4JavaHidDevice.java | 5 +++++ .../hid/purejavahid/PureJavaHidDevice.java | 5 +++++ 4 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/net/ash/HIDToVPADNetworkClient/controller/HidController.java b/src/net/ash/HIDToVPADNetworkClient/controller/HidController.java index c753d18..36912fb 100644 --- a/src/net/ash/HIDToVPADNetworkClient/controller/HidController.java +++ b/src/net/ash/HIDToVPADNetworkClient/controller/HidController.java @@ -119,6 +119,7 @@ public class HidController extends Controller { } } - return "USB HID on " + getIdentifier(); + String name = getHidDevice().getProductString(); + return ((name != null) ? name : "USB HID") + " on " + getIdentifier(); } } \ No newline at end of file diff --git a/src/net/ash/HIDToVPADNetworkClient/hid/HidDevice.java b/src/net/ash/HIDToVPADNetworkClient/hid/HidDevice.java index a267694..2e33db2 100644 --- a/src/net/ash/HIDToVPADNetworkClient/hid/HidDevice.java +++ b/src/net/ash/HIDToVPADNetworkClient/hid/HidDevice.java @@ -76,4 +76,11 @@ public interface HidDevice { * @return path */ String getPath(); + + /** + * Returns the name of the HID device + * + * @return product string (name) + */ + String getProductString(); } diff --git a/src/net/ash/HIDToVPADNetworkClient/hid/hid4java/Hid4JavaHidDevice.java b/src/net/ash/HIDToVPADNetworkClient/hid/hid4java/Hid4JavaHidDevice.java index 4ccb8d4..362b3da 100644 --- a/src/net/ash/HIDToVPADNetworkClient/hid/hid4java/Hid4JavaHidDevice.java +++ b/src/net/ash/HIDToVPADNetworkClient/hid/hid4java/Hid4JavaHidDevice.java @@ -66,6 +66,11 @@ class Hid4JavaHidDevice implements HidDevice { return myDevice.getPath(); } + @Override + public String getProductString() { + return myDevice.getProduct(); + } + @Override public String toString() { return "Hid4JavaHidDevice [vid= " + getVendorId() + ", pid= " + getProductId() + ", usage= " + String.format("%04X:%04X", getUsagePage(), getUsageID()) + ", data=" + Arrays.toString(data) + "]"; diff --git a/src/net/ash/HIDToVPADNetworkClient/hid/purejavahid/PureJavaHidDevice.java b/src/net/ash/HIDToVPADNetworkClient/hid/purejavahid/PureJavaHidDevice.java index 5750489..fe3435a 100644 --- a/src/net/ash/HIDToVPADNetworkClient/hid/purejavahid/PureJavaHidDevice.java +++ b/src/net/ash/HIDToVPADNetworkClient/hid/purejavahid/PureJavaHidDevice.java @@ -95,6 +95,11 @@ class PureJavaHidDevice implements HidDevice, InputReportListener { return myDeviceInfo.getPath(); } + @Override + public String getProductString() { + return myDeviceInfo.getProductString(); + } + @Override public String toString() { return "PureJavaHidDevice [vid= " + String.format("%04X", getVendorId()) + ", pid= " + String.format("%04X", getProductId()) + ", path= " + getPath().trim()