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/06/07 14:57:23 UTC

[incubator-plc4x] branch master updated: added toString(), equals(), hashCode() for some basic api objects.

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 8a874ed  added toString(), equals(), hashCode() for some basic api objects.
8a874ed is described below

commit 8a874edaaa285da60b06ba89aaa0dbadc5bcf8d8
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Thu Jun 7 16:57:14 2018 +0200

    added toString(), equals(), hashCode() for some basic api objects.
---
 .../apache/plc4x/java/api/messages/PlcRequest.java | 29 ++++++++++++++++++--
 .../plc4x/java/api/messages/PlcResponse.java       | 32 ++++++++++++++++++++--
 .../plc4x/java/api/messages/items/RequestItem.java | 26 ++++++++++++++++++
 .../java/api/messages/items/ResponseItem.java      | 27 ++++++++++++++++++
 4 files changed, 109 insertions(+), 5 deletions(-)

diff --git a/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/PlcRequest.java b/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/PlcRequest.java
index d41453a..3ad5fc1 100644
--- a/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/PlcRequest.java
+++ b/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/PlcRequest.java
@@ -18,13 +18,13 @@ under the License.
 */
 package org.apache.plc4x.java.api.messages;
 
+import org.apache.plc4x.java.api.messages.items.RequestItem;
+
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Objects;
 import java.util.Optional;
 
-import org.apache.plc4x.java.api.messages.items.RequestItem;
-
 /**
  * Base type for all messages sent from the plc4x system to a connected plc.
  * @param <REQUEST_ITEM> 
@@ -97,4 +97,29 @@ public abstract class PlcRequest<REQUEST_ITEM extends RequestItem> implements Pl
             }
         }
     }
+
+    @Override
+    public String toString() {
+        return "PlcRequest{" +
+            "requestItems=" + requestItems +
+            '}';
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (!(o instanceof PlcRequest)) {
+            return false;
+        }
+        PlcRequest<?> that = (PlcRequest<?>) o;
+        return Objects.equals(requestItems, that.requestItems);
+    }
+
+    @Override
+    public int hashCode() {
+
+        return Objects.hash(requestItems);
+    }
 }
diff --git a/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/PlcResponse.java b/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/PlcResponse.java
index 8f054cc..575ca7b 100644
--- a/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/PlcResponse.java
+++ b/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/PlcResponse.java
@@ -18,13 +18,13 @@ under the License.
 */
 package org.apache.plc4x.java.api.messages;
 
+import org.apache.plc4x.java.api.messages.items.RequestItem;
+import org.apache.plc4x.java.api.messages.items.ResponseItem;
+
 import java.util.List;
 import java.util.Objects;
 import java.util.Optional;
 
-import org.apache.plc4x.java.api.messages.items.RequestItem;
-import org.apache.plc4x.java.api.messages.items.ResponseItem;
-
 /**
  * Base type for all response messages sent as response for a prior request
  * from a plc to the plc4x system.
@@ -82,4 +82,30 @@ public abstract class PlcResponse<REQUEST extends PlcRequest, RESPONSE_ITEM exte
             .findAny();
     }
 
+    @Override
+    public String toString() {
+        return "PlcResponse{" +
+            "request=" + request +
+            ", responseItems=" + responseItems +
+            '}';
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (!(o instanceof PlcResponse)) {
+            return false;
+        }
+        PlcResponse<?, ?, ?> that = (PlcResponse<?, ?, ?>) o;
+        return Objects.equals(request, that.request) &&
+            Objects.equals(responseItems, that.responseItems);
+    }
+
+    @Override
+    public int hashCode() {
+
+        return Objects.hash(request, responseItems);
+    }
 }
diff --git a/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/items/RequestItem.java b/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/items/RequestItem.java
index 1d4893f..4df0e4e 100644
--- a/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/items/RequestItem.java
+++ b/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/items/RequestItem.java
@@ -43,4 +43,30 @@ public abstract class RequestItem<DATA_TYPE> {
         return address;
     }
 
+    @Override
+    public String toString() {
+        return "RequestItem{" +
+            "datatype=" + datatype +
+            ", address=" + address +
+            '}';
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (!(o instanceof RequestItem)) {
+            return false;
+        }
+        RequestItem<?> that = (RequestItem<?>) o;
+        return Objects.equals(datatype, that.datatype) &&
+            Objects.equals(address, that.address);
+    }
+
+    @Override
+    public int hashCode() {
+
+        return Objects.hash(datatype, address);
+    }
 }
diff --git a/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/items/ResponseItem.java b/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/items/ResponseItem.java
index ad13071..34f61b1 100644
--- a/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/items/ResponseItem.java
+++ b/plc4j/api/src/main/java/org/apache/plc4x/java/api/messages/items/ResponseItem.java
@@ -42,4 +42,31 @@ public abstract class ResponseItem<REQUEST_ITEM extends RequestItem> {
     public ResponseCode getResponseCode() {
         return responseCode;
     }
+
+    @Override
+    public String toString() {
+        return "ResponseItem{" +
+            "requestItem=" + requestItem +
+            ", responseCode=" + responseCode +
+            '}';
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (!(o instanceof ResponseItem)) {
+            return false;
+        }
+        ResponseItem<?> that = (ResponseItem<?>) o;
+        return Objects.equals(requestItem, that.requestItem) &&
+            responseCode == that.responseCode;
+    }
+
+    @Override
+    public int hashCode() {
+
+        return Objects.hash(requestItem, responseCode);
+    }
 }

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