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/17 14:45:30 UTC

[incubator-plc4x] branch master updated: added missing getters and tests

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 a24ae22  added missing getters and tests
a24ae22 is described below

commit a24ae22e5adf9d03b8344c6c7f471710b8186d65
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Sat Feb 17 15:45:24 2018 +0100

    added missing getters and tests
---
 .../commands/ADSAddDeviceNotificationRequest.java  | 42 ++++++++++++++++++----
 .../commands/ADSAddDeviceNotificationResponse.java |  8 +++++
 .../ADSDeleteDeviceNotificationRequest.java        |  4 +++
 .../ADSDeleteDeviceNotificationResponse.java       |  4 +++
 .../api/commands/ADSDeviceNotificationRequest.java | 20 +++++++++++
 .../api/commands/ADSReadDeviceInfoResponse.java    | 20 +++++++++++
 .../java/ads/api/commands/ADSReadRequest.java      | 12 +++++++
 .../java/ads/api/commands/ADSReadResponse.java     |  8 +++++
 .../ads/api/commands/ADSReadStateResponse.java     |  4 +++
 .../java/ads/api/commands/ADSReadWriteRequest.java | 28 +++++++++++++++
 .../ads/api/commands/ADSReadWriteResponse.java     | 20 +++++++++++
 .../ads/api/commands/ADSWriteControlRequest.java   | 24 +++++++++++++
 .../ads/api/commands/ADSWriteControlResponse.java  |  4 +++
 .../java/ads/api/commands/ADSWriteRequest.java     | 24 +++++++++++++
 .../java/ads/api/commands/ADSWriteResponse.java    |  8 ++---
 .../java/ads/api/commands/UnknownCommand.java      |  5 +++
 .../api/commands/types/AdsNotificationSample.java  | 20 +++++++++++
 .../java/ads/api/commands/types/AdsReturnCode.java | 20 +++++++++++
 .../ads/api/commands/types/AdsStampHeader.java     | 12 +++++++
 .../plc4x/java/ads/api/generic/AMSTCPHeader.java   | 12 +++++++
 .../ads/api/commands/CommandFactoryMethodTest.java | 35 ++++++++++++++++--
 .../ads/api/generic/GenericFactoryMethodTest.java  | 39 +++++++++++++-------
 22 files changed, 348 insertions(+), 25 deletions(-)

diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSAddDeviceNotificationRequest.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSAddDeviceNotificationRequest.java
index a6c6e1f..aa777f9 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSAddDeviceNotificationRequest.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSAddDeviceNotificationRequest.java
@@ -113,16 +113,32 @@ public class ADSAddDeviceNotificationRequest extends ADSAbstractRequest {
         return new ADSAddDeviceNotificationRequest(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, indexGroup, indexOffset, length, transmissionMode, maxDelay, cycleTime);
     }
 
-    public static class Reserved extends ByteValue {
+    public IndexGroup getIndexGroup() {
+        return indexGroup;
+    }
 
-        public static final int NUM_BYTES = 16;
+    public IndexOffset getIndexOffset() {
+        return indexOffset;
+    }
 
-        private static final Reserved INSTANCE = new Reserved();
+    public Length getLength() {
+        return length;
+    }
 
-        private Reserved() {
-            super((byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00);
-            assertLength(NUM_BYTES);
-        }
+    public TransmissionMode getTransmissionMode() {
+        return transmissionMode;
+    }
+
+    public MaxDelay getMaxDelay() {
+        return maxDelay;
+    }
+
+    public CycleTime getCycleTime() {
+        return cycleTime;
+    }
+
+    public Reserved getReserved() {
+        return reserved;
     }
 
     @Override
@@ -137,4 +153,16 @@ public class ADSAddDeviceNotificationRequest extends ADSAbstractRequest {
             ", reserved=" + reserved +
             "} " + super.toString();
     }
+
+    public static class Reserved extends ByteValue {
+
+        public static final int NUM_BYTES = 16;
+
+        private static final Reserved INSTANCE = new Reserved();
+
+        private Reserved() {
+            super((byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00);
+            assertLength(NUM_BYTES);
+        }
+    }
 }
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSAddDeviceNotificationResponse.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSAddDeviceNotificationResponse.java
index 47e9fa1..fe22e62 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSAddDeviceNotificationResponse.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSAddDeviceNotificationResponse.java
@@ -66,6 +66,14 @@ public class ADSAddDeviceNotificationResponse extends ADSAbstractResponse {
         return new ADSAddDeviceNotificationResponse(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, result, notificationHandle);
     }
 
+    public Result getResult() {
+        return result;
+    }
+
+    public NotificationHandle getNotificationHandle() {
+        return notificationHandle;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(result, notificationHandle);
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSDeleteDeviceNotificationRequest.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSDeleteDeviceNotificationRequest.java
index 208e313..e6c3605 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSDeleteDeviceNotificationRequest.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSDeleteDeviceNotificationRequest.java
@@ -67,6 +67,10 @@ public class ADSDeleteDeviceNotificationRequest extends ADSAbstractRequest {
         return new ADSDeleteDeviceNotificationRequest(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, notificationHandle);
     }
 
+    public NotificationHandle getNotificationHandle() {
+        return notificationHandle;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(notificationHandle);
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSDeleteDeviceNotificationResponse.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSDeleteDeviceNotificationResponse.java
index 9c4b55e..36fe661 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSDeleteDeviceNotificationResponse.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSDeleteDeviceNotificationResponse.java
@@ -58,6 +58,10 @@ public class ADSDeleteDeviceNotificationResponse extends ADSAbstractResponse {
         return new ADSDeleteDeviceNotificationResponse(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, result);
     }
 
+    public Result getResult() {
+        return result;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(result);
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSDeviceNotificationRequest.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSDeviceNotificationRequest.java
index 86842c4..2a3b71e 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSDeviceNotificationRequest.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSDeviceNotificationRequest.java
@@ -108,6 +108,26 @@ public class ADSDeviceNotificationRequest extends ADSAbstractRequest {
         return new ADSDeviceNotificationRequest(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, stamps, adsStampHeaders);
     }
 
+    public Length getLength() {
+        return length;
+    }
+
+    public Stamps getStamps() {
+        return stamps;
+    }
+
+    public List<AdsStampHeader> getAdsStampHeaders() {
+        return adsStampHeaders;
+    }
+
+    public LengthSupplier getLengthSupplier() {
+        return lengthSupplier;
+    }
+
+    public boolean isCalculated() {
+        return calculated;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(calculated ? Length.of(lengthSupplier.getCalculatedLength()) : length, stamps, buildADSData(adsStampHeaders.toArray(new ByteReadable[adsStampHeaders.size()])));
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadDeviceInfoResponse.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadDeviceInfoResponse.java
index dece8db..3345cc9 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadDeviceInfoResponse.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadDeviceInfoResponse.java
@@ -82,6 +82,26 @@ public class ADSReadDeviceInfoResponse extends ADSAbstractResponse {
         return new ADSReadDeviceInfoResponse(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, result, majorVersion, minorVersion, version, device);
     }
 
+    public Result getResult() {
+        return result;
+    }
+
+    public MajorVersion getMajorVersion() {
+        return majorVersion;
+    }
+
+    public MinorVersion getMinorVersion() {
+        return minorVersion;
+    }
+
+    public Version getVersion() {
+        return version;
+    }
+
+    public Device getDevice() {
+        return device;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(result, majorVersion, minorVersion, version, device);
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadRequest.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadRequest.java
index a130eca..55f7225 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadRequest.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadRequest.java
@@ -85,6 +85,18 @@ public class ADSReadRequest extends ADSAbstractRequest {
         return new ADSReadRequest(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, indexGroup, indexOffset, length);
     }
 
+    public IndexGroup getIndexGroup() {
+        return indexGroup;
+    }
+
+    public IndexOffset getIndexOffset() {
+        return indexOffset;
+    }
+
+    public Length getLength() {
+        return length;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(indexGroup, indexOffset, length);
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadResponse.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadResponse.java
index cdcc3da..7b5e7e9 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadResponse.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadResponse.java
@@ -84,6 +84,14 @@ public class ADSReadResponse extends ADSAbstractResponse {
         return new ADSReadResponse(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, result, data);
     }
 
+    public LengthSupplier getLengthSupplier() {
+        return lengthSupplier;
+    }
+
+    public boolean isCalculated() {
+        return calculated;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(result, calculated ? Length.of(lengthSupplier.getCalculatedLength()) : length, data);
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 28dd110..c8e7fcd 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
@@ -58,6 +58,10 @@ public class ADSReadStateResponse extends ADSAbstractResponse {
         return new ADSReadStateResponse(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, result);
     }
 
+    public Result getResult() {
+        return result;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(result);
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadWriteRequest.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadWriteRequest.java
index e43cd9d..085299f 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadWriteRequest.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadWriteRequest.java
@@ -111,6 +111,34 @@ public class ADSReadWriteRequest extends ADSAbstractRequest {
         return new ADSReadWriteRequest(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, indexGroup, indexOffset, readLength, data);
     }
 
+    public IndexGroup getIndexGroup() {
+        return indexGroup;
+    }
+
+    public IndexOffset getIndexOffset() {
+        return indexOffset;
+    }
+
+    public ReadLength getReadLength() {
+        return readLength;
+    }
+
+    public WriteLength getWriteLength() {
+        return writeLength;
+    }
+
+    public Data getData() {
+        return data;
+    }
+
+    public LengthSupplier getLengthSupplier() {
+        return lengthSupplier;
+    }
+
+    public boolean isCalculated() {
+        return calculated;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(indexGroup, indexOffset, readLength, calculated ? WriteLength.of(lengthSupplier.getCalculatedLength()) : writeLength, data);
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadWriteResponse.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadWriteResponse.java
index 50e4640..8e94016 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadWriteResponse.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSReadWriteResponse.java
@@ -86,6 +86,26 @@ public class ADSReadWriteResponse extends ADSAbstractResponse {
         return new ADSReadWriteResponse(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, result, data);
     }
 
+    public Result getResult() {
+        return result;
+    }
+
+    public Length getLength() {
+        return length;
+    }
+
+    public Data getData() {
+        return data;
+    }
+
+    public LengthSupplier getLengthSupplier() {
+        return lengthSupplier;
+    }
+
+    public boolean isCalculated() {
+        return calculated;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(result, calculated ? Length.of(lengthSupplier.getCalculatedLength()) : length, data);
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteControlRequest.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteControlRequest.java
index 343e959..c4ab86f 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteControlRequest.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteControlRequest.java
@@ -107,6 +107,30 @@ public class ADSWriteControlRequest extends ADSAbstractRequest {
         return new ADSWriteControlRequest(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, adsState, deviceState, data);
     }
 
+    public ADSState getAdsState() {
+        return adsState;
+    }
+
+    public DeviceState getDeviceState() {
+        return deviceState;
+    }
+
+    public Length getLength() {
+        return length;
+    }
+
+    public Data getData() {
+        return data;
+    }
+
+    public LengthSupplier getLengthSupplier() {
+        return lengthSupplier;
+    }
+
+    public boolean isCalculated() {
+        return calculated;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(adsState, deviceState, calculated ? Length.of(lengthSupplier.getCalculatedLength()) : length, data);
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteControlResponse.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteControlResponse.java
index 32e2e5a..89b56ab 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteControlResponse.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteControlResponse.java
@@ -57,6 +57,10 @@ public class ADSWriteControlResponse extends ADSAbstractResponse {
         return new ADSWriteControlResponse(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, result);
     }
 
+    public Result getResult() {
+        return result;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(result);
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteRequest.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteRequest.java
index af1c3d1..4f42c0d 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteRequest.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteRequest.java
@@ -102,6 +102,30 @@ public class ADSWriteRequest extends ADSAbstractRequest {
         return new ADSWriteRequest(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, indexGroup, indexOffset, data);
     }
 
+    public IndexGroup getIndexGroup() {
+        return indexGroup;
+    }
+
+    public IndexOffset getIndexOffset() {
+        return indexOffset;
+    }
+
+    public Length getLength() {
+        return length;
+    }
+
+    public Data getData() {
+        return data;
+    }
+
+    public LengthSupplier getLengthSupplier() {
+        return lengthSupplier;
+    }
+
+    public boolean isCalculated() {
+        return calculated;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(indexGroup, indexOffset, calculated ? WriteLength.of(lengthSupplier.getCalculatedLength()) : length, data);
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteResponse.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteResponse.java
index 35efdf4..67f5686 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteResponse.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/ADSWriteResponse.java
@@ -58,15 +58,15 @@ public class ADSWriteResponse extends ADSAbstractResponse {
         return new ADSWriteResponse(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, invokeId, result);
     }
 
+    public Result getResult() {
+        return result;
+    }
+
     @Override
     public ADSData getAdsData() {
         return buildADSData(result);
     }
 
-    public Result getResult() {
-        return result;
-    }
-
     @Override
     public String toString() {
         return "ADSWriteResponse{" +
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/UnknownCommand.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/UnknownCommand.java
index 4a363bd..8eb775b 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/UnknownCommand.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/UnknownCommand.java
@@ -57,4 +57,9 @@ public class UnknownCommand extends AMSTCPPacket {
     public static UnknownCommand of(AMSNetId targetAmsNetId, AMSPort targetAmsPort, AMSNetId sourceAmsNetId, AMSPort sourceAmsPort, State stateId, Invoke invokeId, ByteBuf remainingBytes) {
         return new UnknownCommand(targetAmsNetId, targetAmsPort, sourceAmsNetId, sourceAmsPort, stateId, invokeId, remainingBytes);
     }
+
+    @Override
+    public String toString() {
+        return "UnknownCommand";
+    }
 }
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/AdsNotificationSample.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/AdsNotificationSample.java
index 193712f..fd6e00a 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/AdsNotificationSample.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/AdsNotificationSample.java
@@ -76,6 +76,26 @@ public class AdsNotificationSample implements ByteReadable {
         return buildByteBuff(notificationHandle, calculated ? SampleSize.of(lengthSupplier.getCalculatedLength()) : sampleSize, data);
     }
 
+    public NotificationHandle getNotificationHandle() {
+        return notificationHandle;
+    }
+
+    public SampleSize getSampleSize() {
+        return sampleSize;
+    }
+
+    public Data getData() {
+        return data;
+    }
+
+    public LengthSupplier getLengthSupplier() {
+        return lengthSupplier;
+    }
+
+    public boolean isCalculated() {
+        return calculated;
+    }
+
     @Override
     public String toString() {
         return "AdsNotificationSample{" +
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 ab1bfb3..00da995 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
@@ -189,6 +189,26 @@ public enum AdsReturnCode {
         return UNKNOWN;
     }
 
+    public long getHex() {
+        return hex;
+    }
+
+    public long getDec() {
+        return dec;
+    }
+
+    public String getDescription() {
+        return description;
+    }
+
+    public String getPossibleCauses() {
+        return possibleCauses;
+    }
+
+    public String getSolution() {
+        return solution;
+    }
+
     @Override
     public String toString() {
         return "AdsReturnCode{" +
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/AdsStampHeader.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/AdsStampHeader.java
index d66adce..5717575 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/AdsStampHeader.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/commands/types/AdsStampHeader.java
@@ -66,6 +66,18 @@ public class AdsStampHeader implements ByteReadable {
         return buildByteBuff(timeStamp, samples, () -> buildByteBuff(adsNotificationSamples.toArray(new ByteReadable[adsNotificationSamples.size()])));
     }
 
+    public TimeStamp getTimeStamp() {
+        return timeStamp;
+    }
+
+    public Samples getSamples() {
+        return samples;
+    }
+
+    public List<AdsNotificationSample> getAdsNotificationSamples() {
+        return adsNotificationSamples;
+    }
+
     @Override
     public String toString() {
         return "AdsStampHeader{" +
diff --git a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/generic/AMSTCPHeader.java b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/generic/AMSTCPHeader.java
index 2541ea7..1a1d749 100644
--- a/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/generic/AMSTCPHeader.java
+++ b/plc4j/protocols/ads/src/main/java/org/apache/plc4x/java/ads/api/generic/AMSTCPHeader.java
@@ -65,6 +65,18 @@ public class AMSTCPHeader implements ByteReadable {
         return new AMSTCPHeader(lengthSuppliers);
     }
 
+    public Length getLength() {
+        return length;
+    }
+
+    public LengthSupplier[] getLengthSuppliers() {
+        return lengthSuppliers;
+    }
+
+    public boolean isCalculated() {
+        return calculated;
+    }
+
     @Override
     public ByteBuf getByteBuf() {
         return buildByteBuff(reserved, calculated ? Length.of(getCalculatedLength()) : length);
diff --git a/plc4j/protocols/ads/src/test/java/org/apache/plc4x/java/ads/api/commands/CommandFactoryMethodTest.java b/plc4j/protocols/ads/src/test/java/org/apache/plc4x/java/ads/api/commands/CommandFactoryMethodTest.java
index 71649e8..41b6d22 100644
--- a/plc4j/protocols/ads/src/test/java/org/apache/plc4x/java/ads/api/commands/CommandFactoryMethodTest.java
+++ b/plc4j/protocols/ads/src/test/java/org/apache/plc4x/java/ads/api/commands/CommandFactoryMethodTest.java
@@ -18,6 +18,8 @@
  */
 package org.apache.plc4x.java.ads.api.commands;
 
+import org.apache.plc4x.java.ads.api.generic.types.Command;
+import org.apache.plc4x.java.ads.api.util.LengthSupplier;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
@@ -25,9 +27,13 @@ import org.junit.runners.Parameterized;
 import java.lang.reflect.Method;
 import java.util.Arrays;
 import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
+import static org.hamcrest.Matchers.*;
+import static org.junit.Assert.assertThat;
 import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
 import static org.mockito.Mockito.mock;
 
@@ -66,9 +72,34 @@ public class CommandFactoryMethodTest {
 
     @Test
     public void testOf() throws Exception {
+        List<Method> getters = Arrays
+            .stream(clazz.getDeclaredMethods())
+            .filter(method -> method.getName().startsWith("get") && method.getParameterCount() == 0)
+            .collect(Collectors.toList());
         for (Method method : clazz.getDeclaredMethods()) {
-            if (method.getName().equals("of")) {
-                method.invoke(null, Arrays.stream(method.getParameterTypes()).map(aClass -> mock(aClass, RETURNS_DEEP_STUBS)).toArray());
+            if (!method.getName().equals("of")) {
+                continue;
+            }
+            Object invoke = method.invoke(null, Arrays.stream(method.getParameterTypes()).map(aClass -> {
+                    if (aClass == Command.class) {
+                        return Command.INVALID;
+                    } else if (aClass == LengthSupplier[].class) {
+                        return new LengthSupplier[]{() -> 0};
+                    } else if (aClass == long.class) {
+                        return 1L;
+                    } else if (aClass == List.class) {
+                        return Collections.emptyList();
+                    } else {
+                        return mock(aClass, RETURNS_DEEP_STUBS);
+                    }
+                }
+            ).toArray());
+            assertThat(invoke, notNullValue());
+            assertThat(invoke, instanceOf(clazz));
+            assertThat(invoke.toString(), not(isEmptyString()));
+            // Testing getters for the coverage (sonar)
+            for (Method getter : getters) {
+                getter.invoke(invoke);
             }
         }
     }
diff --git a/plc4j/protocols/ads/src/test/java/org/apache/plc4x/java/ads/api/generic/GenericFactoryMethodTest.java b/plc4j/protocols/ads/src/test/java/org/apache/plc4x/java/ads/api/generic/GenericFactoryMethodTest.java
index 85917f9..f73a7c4 100644
--- a/plc4j/protocols/ads/src/test/java/org/apache/plc4x/java/ads/api/generic/GenericFactoryMethodTest.java
+++ b/plc4j/protocols/ads/src/test/java/org/apache/plc4x/java/ads/api/generic/GenericFactoryMethodTest.java
@@ -27,9 +27,12 @@ import org.junit.runners.Parameterized;
 import java.lang.reflect.Method;
 import java.util.Arrays;
 import java.util.Collection;
+import java.util.List;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
+import static org.hamcrest.Matchers.*;
+import static org.junit.Assert.assertThat;
 import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
 import static org.mockito.Mockito.mock;
 
@@ -51,19 +54,31 @@ public class GenericFactoryMethodTest {
 
     @Test
     public void testOf() throws Exception {
+        List<Method> getters = Arrays
+            .stream(clazz.getDeclaredMethods())
+            .filter(method -> method.getName().startsWith("get") && method.getParameterCount() == 0)
+            .collect(Collectors.toList());
         for (Method method : clazz.getDeclaredMethods()) {
-            if (method.getName().equals("of")) {
-                method.invoke(null, Arrays.stream(method.getParameterTypes()).map(aClass -> {
-                    if (aClass == Command.class) {
-                        return Command.UNKNOWN;
-                    } else if (aClass == LengthSupplier[].class) {
-                        return new LengthSupplier[]{() -> 0};
-                    } else if (aClass == long.class) {
-                        return 1L;
-                    } else {
-                        return mock(aClass, RETURNS_DEEP_STUBS);
-                    }
-                }).toArray());
+            if (!method.getName().equals("of")) {
+                continue;
+            }
+            Object invoke = method.invoke(null, Arrays.stream(method.getParameterTypes()).map(aClass -> {
+                if (aClass == Command.class) {
+                    return Command.INVALID;
+                } else if (aClass == LengthSupplier[].class) {
+                    return new LengthSupplier[]{() -> 0};
+                } else if (aClass == long.class) {
+                    return 1L;
+                } else {
+                    return mock(aClass, RETURNS_DEEP_STUBS);
+                }
+            }).toArray());
+            assertThat(invoke, notNullValue());
+            assertThat(invoke, instanceOf(clazz));
+            assertThat(invoke.toString(), not(isEmptyString()));
+            // Testing getters for the coverage (sonar)
+            for (Method getter : getters) {
+                getter.invoke(invoke);
             }
         }
     }

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