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