You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by na...@apache.org on 2020/01/29 12:55:32 UTC

[plc4x] branch revert-merges-old-branches updated: Revert "Merge branches 'PLC4X-157OPC-UADisablediscovery' and 'develop' of https://github.com/apache/plc4x into develop"

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

nalim2 pushed a commit to branch revert-merges-old-branches
in repository https://gitbox.apache.org/repos/asf/plc4x.git


The following commit(s) were added to refs/heads/revert-merges-old-branches by this push:
     new 5486c40  Revert "Merge branches 'PLC4X-157OPC-UADisablediscovery' and 'develop' of https://github.com/apache/plc4x into develop"
5486c40 is described below

commit 5486c4039053adc268532d1602ae43a1ba0395f0
Author: Matthias Strljic <ma...@isw.uni-stuttgart.de>
AuthorDate: Wed Jan 29 13:55:12 2020 +0100

    Revert "Merge branches 'PLC4X-157OPC-UADisablediscovery' and 'develop' of https://github.com/apache/plc4x into develop"
    
    This reverts commit ae46fff55a395637aae04bdb421505438aa730b6, reversing
    changes made to d3ebc9424a615c24b32c4f970e97739e55e46610.
    
    # Conflicts:
    #	plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/OpcuaPlcDriver.java
    #	plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/connection/OpcuaTcpPlcConnection.java
    #	plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaPlcFieldHandler.java
    #	plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/ManualPLC4XOpcua.java
---
 plc4j/drivers/opcua/pom.xml                        |  3 +-
 .../opcua/connection/BaseOpcuaPlcConnection.java   | 15 ++----
 .../opcua/connection/OpcuaConnectionFactory.java   |  5 +-
 .../plc4x/java/opcua/protocol/OpcuaField.java      |  9 ++--
 .../opcua/protocol/OpcuaSubsriptionHandle.java     | 44 +++++++---------
 .../java/opcua/protocol/model/OpcuaDataTypes.java  |  5 +-
 .../opcua/protocol/model/OpcuaIdentifierType.java  | 12 ++---
 .../plc4x/java/opcua/OpcuaPlcDriverTest.java       |  5 +-
 .../org/apache/plc4x/java/opcua/UtilsTest.java     |  5 +-
 .../connection/OpcuaTcpPlcConnectionTest.java      | 59 +---------------------
 .../plc4x/java/opcua/protocol/OpcuaFieldTest.java  |  5 +-
 .../opcua/protocol/OpcuaPlcFieldHandlerTest.java   |  5 +-
 .../protocol/OpcuaSubscriptionHandleTest.java      |  5 +-
 13 files changed, 47 insertions(+), 130 deletions(-)

diff --git a/plc4j/drivers/opcua/pom.xml b/plc4j/drivers/opcua/pom.xml
index 5a691f5..e36412e 100644
--- a/plc4j/drivers/opcua/pom.xml
+++ b/plc4j/drivers/opcua/pom.xml
@@ -17,8 +17,7 @@
   specific language governing permissions and limitations
   under the License.
   -->
-<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 
   <modelVersion>4.0.0</modelVersion>
 
diff --git a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/connection/BaseOpcuaPlcConnection.java b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/connection/BaseOpcuaPlcConnection.java
index b4bafdc..50a5bd0 100644
--- a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/connection/BaseOpcuaPlcConnection.java
+++ b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/connection/BaseOpcuaPlcConnection.java
@@ -30,17 +30,13 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * @author Matthias Milan Strljic
- * Created by Matthias Milan Strljic on 10.05.2019
+ * @author Matthias Milan Stlrljic
+ * Created by Matthias Milan Stlrljic on 10.05.2019
  */
 public abstract class BaseOpcuaPlcConnection extends AbstractPlcConnection implements PlcReader, PlcWriter, PlcSubscriber {
 
     private static final Logger logger = LoggerFactory.getLogger(BaseOpcuaPlcConnection.class);
-    protected boolean skipDiscovery = false;
 
-    /**
-     * @param params
-     */
     BaseOpcuaPlcConnection(String params) {
 
         if (!StringUtils.isEmpty(params)) {
@@ -50,9 +46,6 @@ public abstract class BaseOpcuaPlcConnection extends AbstractPlcConnection imple
                 if (paramElements.length == 2) {
                     String paramValue = paramElements[1];
                     switch (paramName) {
-                        case "nDiscovery":
-                            skipDiscovery = Boolean.valueOf(paramValue);
-                            break;
                         default:
                             logger.debug("Unknown parameter {} with value {}", paramName, paramValue);
                     }
@@ -98,7 +91,5 @@ public abstract class BaseOpcuaPlcConnection extends AbstractPlcConnection imple
         return new DefaultPlcUnsubscriptionRequest.Builder(this);
     }
 
-    public boolean isSkipDiscovery() {
-        return skipDiscovery;
-    }
+
 }
diff --git a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/connection/OpcuaConnectionFactory.java b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/connection/OpcuaConnectionFactory.java
index 67f3ef4..5c399f3 100644
--- a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/connection/OpcuaConnectionFactory.java
+++ b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/connection/OpcuaConnectionFactory.java
@@ -20,10 +20,9 @@ package org.apache.plc4x.java.opcua.connection;
 
 import java.net.InetAddress;
 import java.util.Objects;
-
 /**
- * @author Matthias Milan Strljic
- * Created by Matthias Milan Strljic on 10.05.2019
+ * @author Matthias Milan Stlrljic
+ * Created by Matthias Milan Stlrljic on 10.05.2019
  */
 public class OpcuaConnectionFactory {
 
diff --git a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaField.java b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaField.java
index 2d4ae38..fcc2bf5 100644
--- a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaField.java
+++ b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaField.java
@@ -25,14 +25,13 @@ import org.apache.plc4x.java.opcua.protocol.model.OpcuaIdentifierType;
 import java.util.Objects;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
-
 /**
- * @author Matthias Milan Strljic
- * Created by Matthias Milan Strljic on 10.05.2019
+ * @author Matthias Milan Stlrljic
+ * Created by Matthias Milan Stlrljic on 10.05.2019
  */
 public class OpcuaField implements PlcField {
-
-    public static final Pattern ADDRESS_PATTERN = Pattern.compile("^ns=(?<namespace>\\d+);(?<identifierType>[isgb])=((?<identifier>[\\w(.)-=]+))?");
+    //TODO: Add a correct regex definition of all the different sub-types of the identifiers --> requires perhaps individual type definitions
+    public static final Pattern ADDRESS_PATTERN = Pattern.compile("^ns=(?<namespace>\\d+);((?<identifierType>[isgb])=((?<identifier>[\\w.\\-/=%_]+))?)");
 
     private final OpcuaIdentifierType identifierType;
 
diff --git a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaSubsriptionHandle.java b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaSubsriptionHandle.java
index bc42049..9975a90 100644
--- a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaSubsriptionHandle.java
+++ b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaSubsriptionHandle.java
@@ -38,40 +38,36 @@ import java.util.HashSet;
 import java.util.Map;
 import java.util.Set;
 import java.util.function.Consumer;
-
 /**
- * @author Matthias Milan Strljic
- * Created by Matthias Milan Strljic on 10.05.2019
+ * @author Matthias Milan Stlrljic
+ * Created by Matthias Milan Stlrljic on 10.05.2019
  */
 public class OpcuaSubsriptionHandle implements PlcSubscriptionHandle {
-    private Set<Consumer<PlcSubscriptionEvent>> consumers = new HashSet<>();
-    private String fieldName;
-    private UInteger clientHandle;
+    Set< Consumer<PlcSubscriptionEvent>> consumers = new HashSet<>();
+    String fieldName;
+    public UInteger getClientHandle() {
+        return clientHandle;
+    }
 
-    /**
-     * @param fieldName    corresponding map key in the PLC4X request/reply map
-     * @param clientHandle
-     */
-    public OpcuaSubsriptionHandle(String fieldName, UInteger clientHandle) {
-        this.fieldName = fieldName;
+    UInteger clientHandle;
+
+    public  OpcuaSubsriptionHandle(String fieldName, UInteger clientHandle){
         this.clientHandle = clientHandle;
+        this.fieldName = fieldName;
     }
-
-    public UInteger getClientHandle() {
-        return clientHandle;
+    @Override
+    public PlcConsumerRegistration register(Consumer<PlcSubscriptionEvent> consumer) {
+        consumers.add(consumer);
+        return () -> {consumers.remove(consumer);};
     }
 
-    /**
-     * @param item
-     * @param value
-     */
     public void onSubscriptionValue(UaMonitoredItem item, DataValue value) {
         consumers.forEach(plcSubscriptionEventConsumer -> {
             PlcResponseCode resultCode = PlcResponseCode.OK;
             BaseDefaultFieldItem stringItem = null;
-            if (value.getStatusCode() != StatusCode.GOOD) {
+            if(value.getStatusCode() != StatusCode.GOOD){
                 resultCode = PlcResponseCode.NOT_FOUND;
-            } else {
+            }else{
                 stringItem = OpcuaTcpPlcConnection.encodeFieldItem(value);
 
             }
@@ -83,10 +79,4 @@ public class OpcuaSubsriptionHandle implements PlcSubscriptionHandle {
         });
     }
 
-    @Override
-    public PlcConsumerRegistration register(Consumer<PlcSubscriptionEvent> consumer) {
-        consumers.add(consumer);
-        return () -> consumers.remove(consumer);
-    }
-
 }
diff --git a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/model/OpcuaDataTypes.java b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/model/OpcuaDataTypes.java
index 43aedbf..af95137 100644
--- a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/model/OpcuaDataTypes.java
+++ b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/model/OpcuaDataTypes.java
@@ -17,10 +17,9 @@
  under the License.
 */
 package org.apache.plc4x.java.opcua.protocol.model;
-
 /**
- * @author Matthias Milan Strljic
- * Created by Matthias Milan Strljic on 10.05.2019
+ * @author Matthias Milan Stlrljic
+ * Created by Matthias Milan Stlrljic on 10.05.2019
  */
 public enum OpcuaDataTypes {
     BOOL,
diff --git a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/model/OpcuaIdentifierType.java b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/model/OpcuaIdentifierType.java
index 5df04b3..3122deb 100644
--- a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/model/OpcuaIdentifierType.java
+++ b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/model/OpcuaIdentifierType.java
@@ -19,8 +19,8 @@
 package org.apache.plc4x.java.opcua.protocol.model;
 
 /**
- * @author Matthias Milan Strljic
- * Created by Matthias Milan Strljic on 10.05.2019
+ * @author Matthias Milan Stlrljic
+ * Created by Matthias Milan Stlrljic on 10.05.2019
  */
 public enum OpcuaIdentifierType {
     STRING_IDENTIFIER("s"),
@@ -34,6 +34,10 @@ public enum OpcuaIdentifierType {
         this.text = text;
     }
 
+    public String getText() {
+        return this.text;
+    }
+
     public static OpcuaIdentifierType fromString(String text) {
         for (OpcuaIdentifierType type : OpcuaIdentifierType.values()) {
             if (type.text.equalsIgnoreCase(text)) {
@@ -42,8 +46,4 @@ public enum OpcuaIdentifierType {
         }
         throw new IllegalArgumentException("No constant with text " + text + " found");
     }
-
-    public String getText() {
-        return this.text;
-    }
 }
diff --git a/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/OpcuaPlcDriverTest.java b/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/OpcuaPlcDriverTest.java
index 9a6af30..4edb6dd 100644
--- a/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/OpcuaPlcDriverTest.java
+++ b/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/OpcuaPlcDriverTest.java
@@ -32,10 +32,9 @@ import org.junit.jupiter.api.Test;
 import static org.apache.plc4x.java.opcua.OpcuaPlcDriver.INET_ADDRESS_PATTERN;
 import static org.apache.plc4x.java.opcua.OpcuaPlcDriver.OPCUA_URI_PATTERN;
 import static org.apache.plc4x.java.opcua.UtilsTest.assertMatching;
-
 /**
- * @author Matthias Milan Strljic
- * Created by Matthias Milan Strljic on 10.05.2019
+ * @author Matthias Milan Stlrljic
+ * Created by Matthias Milan Stlrljic on 10.05.2019
  */
 public class OpcuaPlcDriverTest {
     // Read only variables of milo example server of version 3.6
diff --git a/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/UtilsTest.java b/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/UtilsTest.java
index 579118c..2e84a0b 100644
--- a/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/UtilsTest.java
+++ b/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/UtilsTest.java
@@ -21,10 +21,9 @@ package org.apache.plc4x.java.opcua;
 import java.util.regex.Pattern;
 
 import static org.junit.Assert.fail;
-
 /**
- * @author Matthias Milan Strljic
- * Created by Matthias Milan Strljic on 10.05.2019
+ * @author Matthias Milan Stlrljic
+ * Created by Matthias Milan Stlrljic on 10.05.2019
  */
 public class UtilsTest {
     public static void assertMatching(Pattern pattern, String match) {
diff --git a/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/connection/OpcuaTcpPlcConnectionTest.java b/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/connection/OpcuaTcpPlcConnectionTest.java
index d81d9ed..5a42c5e 100644
--- a/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/connection/OpcuaTcpPlcConnectionTest.java
+++ b/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/connection/OpcuaTcpPlcConnectionTest.java
@@ -18,38 +18,13 @@
 */
 package org.apache.plc4x.java.opcua.connection;
 
-import org.junit.Test;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
-
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
 /**
- * @author Matthias Milan Strljic
- * Created by Matthias Milan Strljic on 10.05.2019
+ * @author Matthias Milan Stlrljic
+ * Created by Matthias Milan Stlrljic on 10.05.2019
  */
 public class OpcuaTcpPlcConnectionTest {
-
-    private final String[] validTCPOPC = {
-        "localhost",
-        "www.google.de",
-        "127.0.0.1",
-        "254.254.254.254"
-    };
-    private final int[] validPorts = {
-        1337,
-        42,
-        1,
-        24152
-    };
-    private final String[] nDiscoveryParams = {
-        "nDiscovery=true"
-    };
-
     @BeforeEach
     public void before() {
     }
@@ -58,34 +33,4 @@ public class OpcuaTcpPlcConnectionTest {
     public void after() {
 
     }
-
-    @Test
-    public void discoveryParamTest() {
-        for (String address :
-            validTCPOPC) {
-            for (int port :
-                validPorts) {
-                for (String discoveryParam :
-                    nDiscoveryParams) {
-                    String param = "";
-                    if (!param.isEmpty()) {
-                        param += "&";
-                    }
-                    param += discoveryParam;
-
-                    OpcuaConnectionFactory opcuaConnectionFactory = new OpcuaConnectionFactory();
-
-                    try {
-                        OpcuaTcpPlcConnection tcpPlcConnection = opcuaConnectionFactory.opcuaTcpPlcConnectionOf(InetAddress.getByName(address), port, param, 5000);
-                        assertTrue(tcpPlcConnection.isSkipDiscovery());
-                    } catch (UnknownHostException e) {
-                        fail("Testadress is no valid InetAddress: " + e);
-                    }
-                }
-            }
-
-
-        }
-
-    }
 }
diff --git a/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaFieldTest.java b/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaFieldTest.java
index 8f8ba49..828a0e6 100644
--- a/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaFieldTest.java
+++ b/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaFieldTest.java
@@ -24,10 +24,9 @@ import org.junit.jupiter.api.Test;
 
 import static org.apache.plc4x.java.opcua.UtilsTest.assertMatching;
 import static org.apache.plc4x.java.opcua.protocol.OpcuaField.ADDRESS_PATTERN;
-
 /**
- * @author Matthias Milan Strljic
- * Created by Matthias Milan Strljic on 10.05.2019
+ * @author Matthias Milan Stlrljic
+ * Created by Matthias Milan Stlrljic on 10.05.2019
  */
 public class OpcuaFieldTest {
 
diff --git a/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaPlcFieldHandlerTest.java b/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaPlcFieldHandlerTest.java
index 53af2cf..044de34 100644
--- a/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaPlcFieldHandlerTest.java
+++ b/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaPlcFieldHandlerTest.java
@@ -20,10 +20,9 @@ package org.apache.plc4x.java.opcua.protocol;
 
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
-
 /**
- * @author Matthias Milan Strljic
- * Created by Matthias Milan Strljic on 10.05.2019
+ * @author Matthias Milan Stlrljic
+ * Created by Matthias Milan Stlrljic on 10.05.2019
  */
 public class OpcuaPlcFieldHandlerTest {
     @BeforeEach
diff --git a/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaSubscriptionHandleTest.java b/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaSubscriptionHandleTest.java
index 8b159c9..153d4ca 100644
--- a/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaSubscriptionHandleTest.java
+++ b/plc4j/drivers/opcua/src/test/java/org/apache/plc4x/java/opcua/protocol/OpcuaSubscriptionHandleTest.java
@@ -20,10 +20,9 @@ package org.apache.plc4x.java.opcua.protocol;
 
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
-
 /**
- * @author Matthias Milan Strljic
- * Created by Matthias Milan Strljic on 10.05.2019
+ * @author Matthias Milan Stlrljic
+ * Created by Matthias Milan Stlrljic on 10.05.2019
  */
 public class OpcuaSubscriptionHandleTest {
     @BeforeEach