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

zehnder pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/streampipes.git


The following commit(s) were added to refs/heads/dev by this push:
     new 527dab68d9 feat(plc4x-s7): support inline // comments in PLC4X S7 
advanced configuration (#4142)
527dab68d9 is described below

commit 527dab68d936dff5c3c255bc7523bcc42981b5e5
Author: alisha-1000 <[email protected]>
AuthorDate: Wed Feb 4 12:47:23 2026 +0530

    feat(plc4x-s7): support inline // comments in PLC4X S7 advanced 
configuration (#4142)
    
    Co-authored-by: Alisha Gupta <[email protected]>
---
 .../plc/adapter/s7/config/ConfigurationParser.java        | 15 +++++++++++----
 .../plc/adapter/s7/config/ConfigurationParserTest.java    | 15 ++++++++++++++-
 2 files changed, 25 insertions(+), 5 deletions(-)

diff --git 
a/streampipes-extensions/streampipes-connectors-plc/src/main/java/org/apache/streampipes/extensions/connectors/plc/adapter/s7/config/ConfigurationParser.java
 
b/streampipes-extensions/streampipes-connectors-plc/src/main/java/org/apache/streampipes/extensions/connectors/plc/adapter/s7/config/ConfigurationParser.java
index 2325714936..7b56d5cba5 100644
--- 
a/streampipes-extensions/streampipes-connectors-plc/src/main/java/org/apache/streampipes/extensions/connectors/plc/adapter/s7/config/ConfigurationParser.java
+++ 
b/streampipes-extensions/streampipes-connectors-plc/src/main/java/org/apache/streampipes/extensions/connectors/plc/adapter/s7/config/ConfigurationParser.java
@@ -49,21 +49,28 @@ public class ConfigurationParser {
       // Remove leading and trailing whitespace
       line = line.trim();
 
-      // Skip comments
-      if (line.startsWith("//")) {
+      // Skip empty lines and full-line comments
+      if (line.isEmpty() || line.startsWith("//")) {
         continue;
       }
 
-      // Check if macher matches and add to results list
+      // Strip inline comments
+      int commentIndex = line.indexOf("//");
+      if (commentIndex >= 0) {
+        line = line.substring(0, commentIndex).trim();
+      }
+
+      // Check if matcher matches and add to results list
       var matcher = pattern.matcher(line);
       if (matcher.find()) {
         result.put(matcher.group(1), matcher.group(2));
       }
     }
-
     return result;
   }
 
+  
+
 
   /**
    * Transforms PLC4X data types to datatypes supported in StreamPipes
diff --git 
a/streampipes-extensions/streampipes-connectors-plc/src/test/java/org/apache/streampipes/extensions/connectors/plc/adapter/s7/config/ConfigurationParserTest.java
 
b/streampipes-extensions/streampipes-connectors-plc/src/test/java/org/apache/streampipes/extensions/connectors/plc/adapter/s7/config/ConfigurationParserTest.java
index 0fe0cc4f12..a7b8a2e6cf 100644
--- 
a/streampipes-extensions/streampipes-connectors-plc/src/test/java/org/apache/streampipes/extensions/connectors/plc/adapter/s7/config/ConfigurationParserTest.java
+++ 
b/streampipes-extensions/streampipes-connectors-plc/src/test/java/org/apache/streampipes/extensions/connectors/plc/adapter/s7/config/ConfigurationParserTest.java
@@ -68,7 +68,7 @@ public class ConfigurationParserTest {
     assertEquals("%I0.2:STRING(10)", result.get("v3"));
     assertEquals("%I0.3:STRING(10)[100]", result.get("v4"));
   }
-
+  
   @Test
   public void getNodeInformationFromCodeProperty_NoEntries() {
     var configBlock = "";
@@ -76,6 +76,19 @@ public class ConfigurationParserTest {
 
     assertEquals(0, result.size());
   }
+  
+  @Test
+  public void getNodeInformationFromCodeProperty_InlineComment() {
+    var configBlock = """
+        temperature=%DB1281:0:REAL // inline comment
+        """;
+
+    var result = new 
ConfigurationParser().getNodeInformationFromCodeProperty(configBlock);
+
+    assertEquals(1, result.size());
+    assertEquals(Set.of("temperature"), result.keySet());
+    assertEquals("%DB1281:0:REAL", result.get("temperature"));
+  }
 
   @Test
   public void getStreamPipesDataType_Array() throws AdapterException {

Reply via email to