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 d333791  added missing types from AdsReadStateResponse
d333791 is described below

commit d333791700ba2f6031832874927a13d4f727dd7f
Author: Sebastian Rühl <sru...@apache.org>
AuthorDate: Thu Apr 19 12:19:00 2018 +0200

    added missing types from AdsReadStateResponse
---
 .../ads/api/commands/AdsReadStateResponse.java     | 55 ++++++++++++++++------
 .../java/ads/api/commands/types/MajorVersion.java  |  4 ++
 .../java/ads/api/commands/types/MinorVersion.java  |  5 ++
 .../java/ads/protocol/Ads2PayloadProtocol.java     |  4 +-
 .../java/ads/protocol/AbstractProtocolTest.java    |  4 +-
 5 files changed, 56 insertions(+), 16 deletions(-)

diff --git 
a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/AdsReadStateResponse.java
 
b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/AdsReadStateResponse.java
index 5b28873..15ff0d2 100644
--- 
a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/AdsReadStateResponse.java
+++ 
b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/AdsReadStateResponse.java
@@ -18,6 +18,8 @@
  */
 package org.apache.plc4x.java.ads.api.commands;
 
+import org.apache.plc4x.java.ads.api.commands.types.AdsState;
+import org.apache.plc4x.java.ads.api.commands.types.DeviceState;
 import org.apache.plc4x.java.ads.api.commands.types.Result;
 import org.apache.plc4x.java.ads.api.generic.AdsData;
 import org.apache.plc4x.java.ads.api.generic.AmsHeader;
@@ -39,51 +41,74 @@ public class AdsReadStateResponse extends 
AdsAbstractResponse {
      */
     private final Result result;
 
-    private AdsReadStateResponse(AmsHeader amsHeader, Result result) {
+    /**
+     * 2 bytes New ADS status (see data type ADSSTATE of the ADS-DLL).
+     */
+    private final AdsState adsState;
+
+    /**
+     * 2 bytes New device status.
+     */
+    private final DeviceState deviceState;
+
+    private AdsReadStateResponse(AmsHeader amsHeader, Result result, AdsState 
adsState, DeviceState deviceState) {
         super(amsHeader);
         this.result = requireNonNull(result);
+        this.adsState = requireNonNull(adsState);
+        this.deviceState = requireNonNull(deviceState);
     }
 
-    private AdsReadStateResponse(AmsNetId targetAmsNetId, AmsPort 
targetAmsPort, AmsNetId sourceAmsNetId, AmsPort sourceAmsPort, Invoke invokeId, 
Result result) {
+    private AdsReadStateResponse(AmsNetId targetAmsNetId, AmsPort 
targetAmsPort, AmsNetId sourceAmsNetId, AmsPort sourceAmsPort, Invoke invokeId, 
Result result, AdsState adsState, DeviceState deviceState) {
         super(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, 
invokeId);
         this.result = requireNonNull(result);
+        this.adsState = requireNonNull(adsState);
+        this.deviceState = requireNonNull(deviceState);
     }
 
-    public static AdsReadStateResponse of(AmsHeader amsHeader, Result result) {
-        return new AdsReadStateResponse(amsHeader, result);
+    public static AdsReadStateResponse of(AmsHeader amsHeader, Result result, 
AdsState adsState, DeviceState deviceState) {
+        return new AdsReadStateResponse(amsHeader, result, adsState, 
deviceState);
     }
 
-    public static AdsReadStateResponse of(AmsNetId targetAmsNetId, AmsPort 
targetAmsPort, AmsNetId sourceAmsNetId, AmsPort sourceAmsPort, Invoke invokeId, 
Result result) {
-        return new AdsReadStateResponse(targetAmsNetId, targetAmsPort, 
sourceAmsNetId, sourceAmsPort, invokeId, result);
+    public static AdsReadStateResponse of(AmsNetId targetAmsNetId, AmsPort 
targetAmsPort, AmsNetId sourceAmsNetId, AmsPort sourceAmsPort, Invoke invokeId, 
Result result, AdsState adsState, DeviceState deviceState) {
+        return new AdsReadStateResponse(targetAmsNetId, targetAmsPort, 
sourceAmsNetId, sourceAmsPort, invokeId, result, adsState, deviceState);
     }
 
     public Result getResult() {
         return result;
     }
 
+    public AdsState getAdsState() {
+        return adsState;
+    }
+
+    public DeviceState getDeviceState() {
+        return deviceState;
+    }
+
     @Override
     public AdsData getAdsData() {
-        return buildADSData(result);
+        return buildADSData(result, adsState, deviceState);
     }
 
     @Override
     public boolean equals(Object o) {
-        if (this == o)
-            return true;
-        if (!(o instanceof AdsReadStateResponse))
-            return false;
-        if (!super.equals(o))
-            return false;
+        if (this == o) return true;
+        if (!(o instanceof AdsReadStateResponse)) return false;
+        if (!super.equals(o)) return false;
 
         AdsReadStateResponse that = (AdsReadStateResponse) o;
 
-        return result.equals(that.result);
+        if (!result.equals(that.result)) return false;
+        if (!adsState.equals(that.adsState)) return false;
+        return deviceState.equals(that.deviceState);
     }
 
     @Override
     public int hashCode() {
         int result1 = super.hashCode();
         result1 = 31 * result1 + result.hashCode();
+        result1 = 31 * result1 + adsState.hashCode();
+        result1 = 31 * result1 + deviceState.hashCode();
         return result1;
     }
 
@@ -91,6 +116,8 @@ public class AdsReadStateResponse extends 
AdsAbstractResponse {
     public String toString() {
         return "AdsReadStateResponse{" +
             "result=" + result +
+            ", adsState=" + adsState +
+            ", deviceState=" + deviceState +
             "} " + super.toString();
     }
 }
diff --git 
a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/MajorVersion.java
 
b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/MajorVersion.java
index 884ba2b..532ebf3 100644
--- 
a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/MajorVersion.java
+++ 
b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/MajorVersion.java
@@ -55,6 +55,10 @@ public class MajorVersion extends ByteValue {
         return NUM_BYTES;
     }
 
+    public byte getAsByte() {
+        return getBytes()[0];
+    }
+
     @Override
     public String toString() {
         return "MajorVersion{" +
diff --git 
a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/MinorVersion.java
 
b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/MinorVersion.java
index 6084051..20cb211 100644
--- 
a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/MinorVersion.java
+++ 
b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/MinorVersion.java
@@ -55,10 +55,15 @@ public class MinorVersion extends ByteValue {
         return NUM_BYTES;
     }
 
+    public byte getAsByte() {
+        return getBytes()[0];
+    }
+
     @Override
     public String toString() {
         return "MinorVersion{" +
             "value=" + Arrays.toString(value) +
             "} " + super.toString();
     }
+
 }
diff --git 
a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/protocol/Ads2PayloadProtocol.java
 
b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/protocol/Ads2PayloadProtocol.java
index c2a3e94..4b53edf 100644
--- 
a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/protocol/Ads2PayloadProtocol.java
+++ 
b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/protocol/Ads2PayloadProtocol.java
@@ -197,7 +197,9 @@ public class Ads2PayloadProtocol extends 
MessageToMessageCodec<ByteBuf, AmsPacke
             amsPacket = AdsReadStateRequest.of(amsHeader);
         } else {
             Result result = Result.of(commandBuffer);
-            amsPacket = AdsReadStateResponse.of(amsHeader, result);
+            AdsState adsState = AdsState.of(commandBuffer);
+            DeviceState deviceState = DeviceState.of(commandBuffer);
+            amsPacket = AdsReadStateResponse.of(amsHeader, result, adsState, 
deviceState);
         }
         return amsPacket;
     }
diff --git 
a/plc4j/protocols/ads/src/test/java/org/apache/plc4x/java/ads/protocol/AbstractProtocolTest.java
 
b/plc4j/protocols/ads/src/test/java/org/apache/plc4x/java/ads/protocol/AbstractProtocolTest.java
index e9ba236..fc9aadf 100644
--- 
a/plc4j/protocols/ads/src/test/java/org/apache/plc4x/java/ads/protocol/AbstractProtocolTest.java
+++ 
b/plc4j/protocols/ads/src/test/java/org/apache/plc4x/java/ads/protocol/AbstractProtocolTest.java
@@ -97,7 +97,9 @@ public class AbstractProtocolTest {
             ),
             AdsReadStateResponse.of(
                 targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, 
invokeId,
-                Result.of(0)
+                Result.of(0),
+                AdsState.of(0),
+                DeviceState.of(0)
             ),
             AdsReadWriteRequest.of(
                 targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, 
invokeId,

-- 
To stop receiving notification emails like this one, please contact
sru...@apache.org.

Reply via email to