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 2022/08/05 13:08:03 UTC
[plc4x] 03/03: feat(plc-simulator/s7): support a alternate s7 port
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
commit 7adec29306c07da3679677751e3a7d7c7c710825
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Fri Aug 5 15:07:53 2022 +0200
feat(plc-simulator/s7): support a alternate s7 port
---
.../src/main/java/org/apache/plc4x/simulator/PlcSimulator.java | 2 ++
.../main/java/org/apache/plc4x/simulator/PlcSimulatorConfig.java | 6 ++++++
.../java/org/apache/plc4x/simulator/server/s7/S7ServerModule.java | 6 +++++-
3 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/sandbox/plc-simulator/src/main/java/org/apache/plc4x/simulator/PlcSimulator.java b/sandbox/plc-simulator/src/main/java/org/apache/plc4x/simulator/PlcSimulator.java
index 579a3e209..d66d59da6 100644
--- a/sandbox/plc-simulator/src/main/java/org/apache/plc4x/simulator/PlcSimulator.java
+++ b/sandbox/plc-simulator/src/main/java/org/apache/plc4x/simulator/PlcSimulator.java
@@ -147,6 +147,7 @@ public class PlcSimulator {
Options options = new Options();
options.addOption("host", true, "display current time");
+ options.addOption("s7port", true, "changes the s7 port");
// Parse args
CommandLineParser parser = new DefaultParser();
@@ -154,6 +155,7 @@ public class PlcSimulator {
// Map options
config.host = cmd.getOptionValue("host", "localhost");
+ config.s7Port = cmd.getOptionValue("s7port");
return config;
}
diff --git a/sandbox/plc-simulator/src/main/java/org/apache/plc4x/simulator/PlcSimulatorConfig.java b/sandbox/plc-simulator/src/main/java/org/apache/plc4x/simulator/PlcSimulatorConfig.java
index 5a1fcc253..2879d571e 100644
--- a/sandbox/plc-simulator/src/main/java/org/apache/plc4x/simulator/PlcSimulatorConfig.java
+++ b/sandbox/plc-simulator/src/main/java/org/apache/plc4x/simulator/PlcSimulatorConfig.java
@@ -21,7 +21,13 @@ package org.apache.plc4x.simulator;
public class PlcSimulatorConfig {
String host;
+ String s7Port;
+
public String getHost() {
return host;
}
+
+ public String getS7Port() {
+ return s7Port;
+ }
}
diff --git a/sandbox/plc-simulator/src/main/java/org/apache/plc4x/simulator/server/s7/S7ServerModule.java b/sandbox/plc-simulator/src/main/java/org/apache/plc4x/simulator/server/s7/S7ServerModule.java
index c57646521..f3bdacf3f 100644
--- a/sandbox/plc-simulator/src/main/java/org/apache/plc4x/simulator/server/s7/S7ServerModule.java
+++ b/sandbox/plc-simulator/src/main/java/org/apache/plc4x/simulator/server/s7/S7ServerModule.java
@@ -87,7 +87,11 @@ public class S7ServerModule implements ServerModule {
}).option(ChannelOption.SO_BACKLOG, 128)
.childOption(ChannelOption.SO_KEEPALIVE, true);
- bootstrap.bind(config.getHost(),ISO_ON_TCP_PORT).sync();
+ int port = ISO_ON_TCP_PORT;
+ if (config.getS7Port() != null) {
+ port = Integer.parseInt(config.getS7Port());
+ }
+ bootstrap.bind(config.getHost(), port).sync();
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
throw new SimulatorException(e);