From 8e8c4bb292bf313051cc09e3f03287e8add79172 Mon Sep 17 00:00:00 2001 From: Florian Hotze Date: Mon, 16 Sep 2024 15:43:19 +0200 Subject: [PATCH 1/2] [thing] Add toString override to ThingImpl & BridgeImpl This is nice to have when working with Things in scripts. Signed-off-by: Florian Hotze --- .../core/thing/internal/BridgeImpl.java | 5 ++++ .../core/thing/internal/ThingImpl.java | 24 +++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/BridgeImpl.java b/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/BridgeImpl.java index ad13e86e506..313bab6af0e 100644 --- a/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/BridgeImpl.java +++ b/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/BridgeImpl.java @@ -89,4 +89,9 @@ public List getThings() { } return bridgeHandler; } + + @Override + public String toString() { + return super.toString().replace("Bridge=False", "Bridge=True"); + } } diff --git a/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/ThingImpl.java b/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/ThingImpl.java index 5e78aac9837..2ff7ed38ec0 100644 --- a/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/ThingImpl.java +++ b/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/ThingImpl.java @@ -237,6 +237,30 @@ public boolean isEnabled() { return ThingStatusDetail.DISABLED != getStatusInfo().getStatusDetail(); } + @Override + public String toString() { + StringBuilder sb = new StringBuilder(getUID().toString()); + sb.append(" (ThingTypeUID="); + sb.append(getThingTypeUID()); + sb.append(", Bridge=False"); + if (getBridgeUID() != null) { + sb.append(", BridgeUID="); + sb.append(getBridgeUID()); + } + sb.append(", Label="); + sb.append(getLabel()); + if (getLocation() != null) { + sb.append(", Location="); + sb.append(getLocation()); + } + sb.append(", Status="); + sb.append(getStatus()); + sb.append(", StatusInfo="); + sb.append(getStatusInfo()); + sb.append(")"); + return sb.toString(); + } + @Override public int hashCode() { final int prime = 31; From 59d73d4469f7e0ed5b61fe54a114540149a7294d Mon Sep 17 00:00:00 2001 From: Florian Hotze Date: Thu, 19 Sep 2024 15:03:54 +0200 Subject: [PATCH 2/2] Address review Signed-off-by: Florian Hotze --- .../src/main/java/org/openhab/core/thing/internal/ThingImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/ThingImpl.java b/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/ThingImpl.java index 2ff7ed38ec0..e82877349f2 100644 --- a/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/ThingImpl.java +++ b/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/ThingImpl.java @@ -239,6 +239,7 @@ public boolean isEnabled() { @Override public String toString() { + // Configuration is deliberately excluded because it might include sensitive data like passwords. StringBuilder sb = new StringBuilder(getUID().toString()); sb.append(" (ThingTypeUID="); sb.append(getThingTypeUID());