From bd1329579af0b7df5f3cd9104d614bc3ccbffcf9 Mon Sep 17 00:00:00 2001 From: PatrykGala Date: Mon, 5 Jun 2023 10:02:32 +0200 Subject: [PATCH] feat(plc4j/opcua): Add support of PlcDINT for BigInteger in PlcValueHandler (#962) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 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 Co-authored-by: Sebastian Rühl --- .../apache/plc4x/java/opcua/protocol/OpcuaProtocolLogic.java | 2 +- .../java/org/apache/plc4x/java/opcua/OpcuaPlcDriverTest.java | 1 - .../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 d83c626a10e..dd1ea925f9f 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 CompletableFuture read(PlcReadRequest readRequest) { 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 db2db3585b6..c2f9cfcf788 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.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 d1691f051bf..18b903d2d9b 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 static PlcValue of(Object[] values) { if (value instanceof Long) { return PlcLINT.of(value); } + if (value instanceof BigInteger) { + return PlcLINT.of(value); + } if (value instanceof Float) { return PlcREAL.of(value); }