You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by sr...@apache.org on 2018/02/16 19:19:58 UTC
[incubator-plc4x] branch master updated: improved toString from
enums in ADS
This is an automated email from the ASF dual-hosted git repository.
sruehl pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-plc4x.git
The following commit(s) were added to refs/heads/master by this push:
new 9616412 improved toString from enums in ADS
9616412 is described below
commit 961641201d74082978a1b0f0e09aab92118c4999
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Fri Feb 16 20:19:53 2018 +0100
improved toString from enums in ADS
---
.../plc4x/java/ads/api/commands/types/AdsReturnCode.java | 4 +++-
.../org/apache/plc4x/java/ads/api/generic/types/Command.java | 7 +++++++
.../org/apache/plc4x/java/ads/api/generic/types/State.java | 11 +++++++++++
3 files changed, 21 insertions(+), 1 deletion(-)
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/AdsReturnCode.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/AdsReturnCode.java
index e9e1b13..8a1e941 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/AdsReturnCode.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/AdsReturnCode.java
@@ -20,6 +20,8 @@ package org.apache.plc4x.java.ads.api.commands.types;
import java.util.Objects;
+import static java.lang.Long.toHexString;
+
/**
* Based on spec from: https://infosys.beckhoff.com/content/1033/tcadscommon/html/ads_returncodes.htm
*/
@@ -191,7 +193,7 @@ public enum AdsReturnCode {
@Override
public String toString() {
return "AdsReturnCode{" +
- "hex=" + hex +
+ "hex=" + String.format("0x%4s", toHexString(hex)).replace(' ', '0') +
", dec=" + dec +
", description='" + description + '\'' +
", possibleCauses='" + possibleCauses + '\'' +
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/generic/types/Command.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/generic/types/Command.java
index 988f1d9..d526795 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/generic/types/Command.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/generic/types/Command.java
@@ -26,6 +26,8 @@ import org.apache.plc4x.java.ads.api.util.ByteValue;
import java.nio.ByteBuffer;
import java.util.Arrays;
+import static java.lang.Integer.toHexString;
+
public enum Command implements ByteReadable {
Invalid(0x00),
ADS_Read_Device_Info(0x01),
@@ -102,4 +104,9 @@ public enum Command implements ByteReadable {
public static Command of(ByteBuf byteBuf) {
return of(byteBuf.readUnsignedShortLE());
}
+
+ @Override
+ public String toString() {
+ return name() + "/hex=" + String.format("0x%2s", toHexString(intValue)).replace(' ', '0');
+ }
}
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/generic/types/State.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/generic/types/State.java
index 1c4a756..5627506 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/generic/types/State.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/generic/types/State.java
@@ -26,6 +26,7 @@ import java.util.LinkedList;
import java.util.List;
import java.util.stream.Stream;
+import static java.lang.Integer.toBinaryString;
import static org.apache.plc4x.java.ads.api.generic.types.State.StateMask.*;
/**
@@ -74,6 +75,11 @@ public class State extends UnsignedShortLEByteValue {
public int getMask() {
return mask;
}
+
+ @Override
+ public String toString() {
+ return name() + "/mask=" + String.format("0b%16s", toBinaryString(mask)).replace(' ', '0');
+ }
}
public static final State DEFAULT = State.of(ADS_COMMAND);
@@ -186,4 +192,9 @@ public class State extends UnsignedShortLEByteValue {
public boolean isBroadcast() {
return BROADCAST.applies(this);
}
+
+ @Override
+ public String toString() {
+ return "State{" + getStateMaskEnumSet() + "} " + super.toString();
+ }
}
--
To stop receiving notification emails like this one, please contact
sruehl@apache.org.