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 2023/06/05 08:02:39 UTC

[plc4x] branch develop updated: feat(plc4j/opcua): Add support of PlcDINT for BigInteger in PlcValueHandler (#962)

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

sruehl pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git


The following commit(s) were added to refs/heads/develop by this push:
     new bd1329579a feat(plc4j/opcua): Add support of PlcDINT for BigInteger in PlcValueHandler (#962)
bd1329579a is described below

commit bd1329579af0b7df5f3cd9104d614bc3ccbffcf9
Author: PatrykGala <pa...@gmail.com>
AuthorDate: Mon Jun 5 10:02:32 2023 +0200

    feat(plc4j/opcua): Add support of PlcDINT for BigInteger in PlcValueHandler (#962)
    
    * Add support of PlcDINT for BigInteger in PlcValueHandler
    Enable OpcuaPlcDriverTest.
    
    * Add support of PlcLINT for BigInteger in PlcValueHandler.
    
    * Update plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaProtocolLogic.java
    
    ---------
    
    Co-authored-by: PatrykGala <pa...@gmail.com>
    Co-authored-by: Sebastian Rühl <se...@pm.me>
---
 .../java/org/apache/plc4x/java/opcua/protocol/OpcuaProtocolLogic.java  | 2 +-
 .../src/test/java/org/apache/plc4x/java/opcua/OpcuaPlcDriverTest.java  | 1 -
 .../main/java/org/apache/plc4x/java/spi/values/PlcValueHandler.java    | 3 +++
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaProtocolLogic.java b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaProtocolLogic.java
index d83c626a10..dd1ea925f9 100644
--- a/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaProtocolLogic.java
+++ b/plc4j/drivers/opcua/src/main/java/org/apache/plc4x/java/opcua/protocol/OpcuaProtocolLogic.java
@@ -195,7 +195,7 @@ public class OpcuaProtocolLogic extends Plc4xProtocolBase<OpcuaAPU> implements H
                         future.complete(new DefaultPlcReadResponse(request, status));
                         return;
                     }
-                } catch (ParseException e) {
+                } catch (ParseException|PlcRuntimeException e) {
                     future.completeExceptionally(new PlcRuntimeException(e));
                 }
             };
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 db2db3585b..c2f9cfcf78 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
@@ -43,7 +43,6 @@ import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.concurrent.ExecutionException;
 
-@Disabled("Currently seems to block")
 public class OpcuaPlcDriverTest {
 
     @BeforeAll
diff --git a/plc4j/spi/src/main/java/org/apache/plc4x/java/spi/values/PlcValueHandler.java b/plc4j/spi/src/main/java/org/apache/plc4x/java/spi/values/PlcValueHandler.java
index d1691f051b..18b903d2d9 100644
--- a/plc4j/spi/src/main/java/org/apache/plc4x/java/spi/values/PlcValueHandler.java
+++ b/plc4j/spi/src/main/java/org/apache/plc4x/java/spi/values/PlcValueHandler.java
@@ -83,6 +83,9 @@ public class PlcValueHandler implements org.apache.plc4x.java.api.value.PlcValue
         if (value instanceof Long) {
             return PlcLINT.of(value);
         }
+        if (value instanceof BigInteger) {
+            return PlcLINT.of(value);
+        }
         if (value instanceof Float) {
             return PlcREAL.of(value);
         }