From c6cc349ca4e4e6dba4348d5196fd362e49fd42ce Mon Sep 17 00:00:00 2001 From: Manuel Krombholz <manuel_krofficial@online.de> Date: Mon, 30 Aug 2021 17:10:23 +0200 Subject: [PATCH] Corrected ExternalHost behavior --- eraser-base/src/main/jastadd/ExternalHost.jrag | 11 +++++++++++ eraser-base/src/main/jastadd/Util.jrag | 12 +++--------- eraser-base/src/main/jastadd/eraser.parser | 2 +- 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/eraser-base/src/main/jastadd/ExternalHost.jrag b/eraser-base/src/main/jastadd/ExternalHost.jrag index 892a7dfb..2b8e5a0d 100644 --- a/eraser-base/src/main/jastadd/ExternalHost.jrag +++ b/eraser-base/src/main/jastadd/ExternalHost.jrag @@ -9,4 +9,15 @@ aspect ExternalHost { } return this; } + public ExternalHost ExternalHost.setHostFromAddress(String line) { + String host = line; + if (line.contains(":")) { + String[] parts = line.split(":"); + host = parts[0]; + this.setPort(Integer.parseInt(parts[1])); + } + setHostName(host); + + return this; + } } \ No newline at end of file diff --git a/eraser-base/src/main/jastadd/Util.jrag b/eraser-base/src/main/jastadd/Util.jrag index 5dec6c93..b0d5bf09 100644 --- a/eraser-base/src/main/jastadd/Util.jrag +++ b/eraser-base/src/main/jastadd/Util.jrag @@ -11,16 +11,10 @@ aspect Util { public static ExternalHost ExternalHost.of(String hostName, int defaultPort, String username, String password) { - String host = hostName; - int port = defaultPort; - if (hostName.contains(":")) { - String[] parts = hostName.split(":"); - host = parts[0]; - port = Integer.parseInt(parts[1]); - } ExternalHost eh = new ExternalHost(); - eh.setHostName(host); - eh.setPort(port); + eh.setPort(defaultPort); + eh.setHostFromAddress(hostName); + if (username!=null) eh.setUserName(username); if (password!=null) diff --git a/eraser-base/src/main/jastadd/eraser.parser b/eraser-base/src/main/jastadd/eraser.parser index 456027b1..e4b4eedc 100644 --- a/eraser-base/src/main/jastadd/eraser.parser +++ b/eraser-base/src/main/jastadd/eraser.parser @@ -326,7 +326,7 @@ MqttRoot mqtt_root = MqttRoot mqtt_root_body = INCOMING EQUALS TEXT.n mqtt_root_body.mrb {: mrb.setIncomingPrefix(ensureTrailingSlash(n)); return mrb; :} | OUTGOING EQUALS TEXT.n mqtt_root_body.mrb {: mrb.setOutgoingPrefix(ensureTrailingSlash(n)); return mrb; :} - | HOST EQUALS TEXT.n mqtt_root_body.mrb {: mrb.getHost().setHostName(n); return mrb; :} + | HOST EQUALS TEXT.n mqtt_root_body.mrb {: mrb.getHost().setHostFromAddress(n); return mrb; :} | USER EQUALS TEXT.n mqtt_root_body.mrb {: mrb.getHost().setUserName(n); return mrb; :} | PASSWORD EQUALS TEXT.n mqtt_root_body.mrb {: mrb.getHost().setPassword(n); return mrb; :} | {: return new MqttRoot(); :} -- GitLab