You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by cd...@apache.org on 2018/10/24 23:30:34 UTC

[incubator-plc4x] branch master updated: - Did some more Sonar issues addressing.

This is an automated email from the ASF dual-hosted git repository.

cdutz 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 c573b58  - Did some more Sonar issues addressing.
c573b58 is described below

commit c573b583a87e421eeead1f49b5d5b91a162fdc78
Author: Christofer Dutz <ch...@c-ware.de>
AuthorDate: Thu Oct 25 00:30:27 2018 +0100

    - Did some more Sonar issues addressing.
---
 .../java/org/apache/plc4x/kafka/Plc4xSinkTask.java |  3 ++-
 .../org/apache/plc4x/kafka/Plc4xSourceTask.java    |  9 ++++---
 .../org/apache/plc4x/nifi/BasePlc4xProcessor.java  | 28 ++++++++++++++++++++--
 .../org/apache/plc4x/java/s7/netty/S7Protocol.java | 13 ++++------
 4 files changed, 38 insertions(+), 15 deletions(-)

diff --git a/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkTask.java b/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkTask.java
index 4c0429a..4a13ee3 100644
--- a/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkTask.java
+++ b/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSinkTask.java
@@ -25,6 +25,7 @@ import org.apache.kafka.connect.sink.SinkTask;
 import org.apache.plc4x.java.PlcDriverManager;
 import org.apache.plc4x.java.api.PlcConnection;
 import org.apache.plc4x.java.api.exceptions.PlcConnectionException;
+import org.apache.plc4x.java.api.exceptions.PlcRuntimeException;
 import org.apache.plc4x.java.api.messages.PlcWriteRequest;
 import org.apache.plc4x.kafka.util.VersionUtil;
 
@@ -99,7 +100,7 @@ public class Plc4xSinkTask extends SinkTask {
             try {
                 plcConnection.close();
             } catch (Exception e) {
-                throw new RuntimeException("Caught exception while closing connection to PLC", e);
+                throw new PlcRuntimeException("Caught exception while closing connection to PLC", e);
             }
         }
     }
diff --git a/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceTask.java b/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceTask.java
index f172a38..7a79f37 100644
--- a/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceTask.java
+++ b/integrations/apache-kafka/src/main/java/org/apache/plc4x/kafka/Plc4xSourceTask.java
@@ -29,6 +29,7 @@ import org.apache.kafka.connect.source.SourceTask;
 import org.apache.plc4x.java.PlcDriverManager;
 import org.apache.plc4x.java.api.PlcConnection;
 import org.apache.plc4x.java.api.exceptions.PlcConnectionException;
+import org.apache.plc4x.java.api.exceptions.PlcRuntimeException;
 import org.apache.plc4x.java.api.messages.PlcReadRequest;
 import org.apache.plc4x.java.api.messages.PlcReadResponse;
 import org.apache.plc4x.java.api.types.PlcResponseCode;
@@ -103,7 +104,7 @@ public class Plc4xSourceTask extends SourceTask {
             throw new ConnectException("Reading not supported on this connection");
         }
 
-        int rate = Integer.valueOf(props.get(RATE_CONFIG));
+        int rate = Integer.parseInt(props.get(RATE_CONFIG));
         scheduler = Executors.newScheduledThreadPool(1);
         scheduler.scheduleAtFixedRate(Plc4xSourceTask.this::scheduleFetch, rate, rate, TimeUnit.MILLISECONDS);
     }
@@ -112,7 +113,9 @@ public class Plc4xSourceTask extends SourceTask {
     public void stop() {
         scheduler.shutdown();
         closeConnection();
-        notify(); // wake up thread waiting in awaitFetch
+        synchronized (this) {
+            notify(); // wake up thread waiting in awaitFetch
+        }
     }
 
     @Override
@@ -134,7 +137,7 @@ public class Plc4xSourceTask extends SourceTask {
             try {
                 plcConnection.close();
             } catch (Exception e) {
-                throw new RuntimeException("Caught exception while closing connection to PLC", e);
+                throw new PlcRuntimeException("Caught exception while closing connection to PLC", e);
             }
         }
     }
diff --git a/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/BasePlc4xProcessor.java b/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/BasePlc4xProcessor.java
index 080354a..c446f7e 100644
--- a/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/BasePlc4xProcessor.java
+++ b/integrations/apache-nifi/nifi-plc4x-processors/src/main/java/org/apache/plc4x/nifi/BasePlc4xProcessor.java
@@ -29,6 +29,7 @@ import org.apache.nifi.processor.util.StandardValidators;
 import org.apache.plc4x.java.PlcDriverManager;
 import org.apache.plc4x.java.api.PlcConnection;
 import org.apache.plc4x.java.api.exceptions.PlcConnectionException;
+import org.apache.plc4x.java.api.exceptions.PlcRuntimeException;
 
 import java.util.*;
 
@@ -101,7 +102,7 @@ public abstract class BasePlc4xProcessor extends AbstractProcessor {
             try {
                 connection = new PlcDriverManager().getConnection(property.getValue());
             } catch (PlcConnectionException e) {
-                getLogger().error("Error connecting to " + property.getValue());
+                getLogger().error("Error connecting to " + property.getValue(), e);
             }
         }
 
@@ -110,10 +111,33 @@ public abstract class BasePlc4xProcessor extends AbstractProcessor {
         for (String segment : addresses.getValue().split(";")) {
             String[] parts = segment.split("=");
             if(parts.length != 2) {
-                throw new RuntimeException("Invalid address format");
+                throw new PlcRuntimeException("Invalid address format");
             }
             addressMap.put(parts[0], parts[1]);
         }
     }
 
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (!(o instanceof BasePlc4xProcessor)) {
+            return false;
+        }
+        if (!super.equals(o)) {
+            return false;
+        }
+        BasePlc4xProcessor that = (BasePlc4xProcessor) o;
+        return Objects.equals(descriptors, that.descriptors) &&
+            Objects.equals(getRelationships(), that.getRelationships()) &&
+            Objects.equals(getConnection(), that.getConnection()) &&
+            Objects.equals(addressMap, that.addressMap);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(super.hashCode(), descriptors, getRelationships(), getConnection(), addressMap);
+    }
+
 }
diff --git a/plc4j/protocols/s7/src/main/java/org/apache/plc4x/java/s7/netty/S7Protocol.java b/plc4j/protocols/s7/src/main/java/org/apache/plc4x/java/s7/netty/S7Protocol.java
index 32d1a42..3cf8d48 100644
--- a/plc4j/protocols/s7/src/main/java/org/apache/plc4x/java/s7/netty/S7Protocol.java
+++ b/plc4j/protocols/s7/src/main/java/org/apache/plc4x/java/s7/netty/S7Protocol.java
@@ -350,7 +350,7 @@ public class S7Protocol extends ChannelDuplexHandler {
         buf.writeByte(parameter.getSequenceNumber());
 
         // A response parameter has some more fields.
-        if((parameter instanceof CpuServicesResponseParameter)) {
+        if(parameter instanceof CpuServicesResponseParameter) {
             CpuServicesResponseParameter responseParameter = (CpuServicesResponseParameter) parameter;
             buf.writeByte(responseParameter.getDataUnitReferenceNumber());
             buf.writeByte(responseParameter.isLastDataUnit() ? 0x00 : 0x01);
@@ -567,7 +567,7 @@ public class S7Protocol extends ChannelDuplexHandler {
             // This is a response to a READ_VAR request.
             else if ((readWriteVarParameter.getType() == ParameterType.READ_VAR) && isResponse) {
                 DataTransportSize dataTransportSize = DataTransportSize.valueOf(userData.readByte());
-                short length = (dataTransportSize.isSizeInBits()) ?
+                short length = dataTransportSize.isSizeInBits() ?
                     (short) Math.ceil(userData.readShort() / 8.0) : userData.readShort();
                 byte[] data = new byte[length];
                 userData.readBytes(data);
@@ -692,7 +692,7 @@ public class S7Protocol extends ChannelDuplexHandler {
             return new CpuServicesRequestParameter(functionGroup, subFunctionGroup, sequenceNumber);
         } else {
             byte dataUnitReferenceNumber = in.readByte();
-            boolean lastDataUnit = (in.readByte() == 0x00);
+            boolean lastDataUnit = in.readByte() == 0x00;
             ParameterError error = ParameterError.valueOf(in.readShort());
             return new CpuServicesResponseParameter(functionGroup, subFunctionGroup, sequenceNumber,
                 dataUnitReferenceNumber, lastDataUnit, error);
@@ -739,11 +739,6 @@ public class S7Protocol extends ChannelDuplexHandler {
     ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
 
-    @Override
-    public void flush(ChannelHandlerContext ctx) throws Exception {
-        super.flush(ctx);
-    }
-
     private synchronized void trySendingMessages(ChannelHandlerContext ctx) {
         while(sentButUnacknowledgedTpdus.size() < maxAmqCaller) {
             // Get the TPDU that is up next in the queue.
@@ -784,7 +779,7 @@ public class S7Protocol extends ChannelDuplexHandler {
             return S7ControllerType.S7_ANY;
         }
 
-        String model = articleNumber.substring(articleNumber.indexOf(" ") + 1, articleNumber.indexOf(" ") + 2);
+        String model = articleNumber.substring(articleNumber.indexOf(' ') + 1, articleNumber.indexOf(' ') + 2);
         switch (model) {
             case "2":
                 return S7ControllerType.S7_1200;