You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hop.apache.org by ha...@apache.org on 2021/10/04 14:15:28 UTC

[incubator-hop] branch master updated: HOP-3349 Cleanup Action AS/400 CL Commands

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

hansva pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-hop.git


The following commit(s) were added to refs/heads/master by this push:
     new 018e7b0  HOP-3349 Cleanup Action AS/400 CL Commands
     new d79c5e8  Merge pull request #1109 from nadment/HOP-3349
018e7b0 is described below

commit 018e7b023150f3d425b45c547c192f981616db93
Author: Nicolas Adment <na...@gmail.com>
AuthorDate: Sun Oct 3 18:39:51 2021 +0200

    HOP-3349 Cleanup Action AS/400 CL Commands
---
 .../actions/as400command/ActionAs400Command.java   | 67 +++++-----------------
 .../as400command/ActionAs400CommandDialog.java     |  8 +--
 .../messages/messages_en_US.properties             |  5 +-
 .../ActionAs400CommandLoadSaveTest.java            | 10 ++--
 4 files changed, 26 insertions(+), 64 deletions(-)

diff --git a/plugins/actions/as400command/src/main/java/org/apache/hop/workflow/actions/as400command/ActionAs400Command.java b/plugins/actions/as400command/src/main/java/org/apache/hop/workflow/actions/as400command/ActionAs400Command.java
index fe4bb3c..c2876da 100644
--- a/plugins/actions/as400command/src/main/java/org/apache/hop/workflow/actions/as400command/ActionAs400Command.java
+++ b/plugins/actions/as400command/src/main/java/org/apache/hop/workflow/actions/as400command/ActionAs400Command.java
@@ -17,19 +17,14 @@
 
 package org.apache.hop.workflow.actions.as400command;
 
-import com.ibm.as400.access.AS400;
-import com.ibm.as400.access.AS400Message;
-import com.ibm.as400.access.CommandCall;
 import org.apache.hop.core.ICheckResult;
 import org.apache.hop.core.Result;
 import org.apache.hop.core.annotations.Action;
-import org.apache.hop.core.encryption.Encr;
 import org.apache.hop.core.exception.HopException;
-import org.apache.hop.core.exception.HopXmlException;
 import org.apache.hop.core.util.Utils;
 import org.apache.hop.core.variables.IVariables;
-import org.apache.hop.core.xml.XmlHandler;
 import org.apache.hop.i18n.BaseMessages;
+import org.apache.hop.metadata.api.HopMetadataProperty;
 import org.apache.hop.metadata.api.IHopMetadataProvider;
 import org.apache.hop.resource.ResourceEntry;
 import org.apache.hop.resource.ResourceEntry.ResourceType;
@@ -39,9 +34,10 @@ import org.apache.hop.workflow.action.ActionBase;
 import org.apache.hop.workflow.action.IAction;
 import org.apache.hop.workflow.action.validator.ActionValidatorUtils;
 import org.apache.hop.workflow.action.validator.AndValidator;
-import org.w3c.dom.Node;
-
 import java.util.List;
+import com.ibm.as400.access.AS400;
+import com.ibm.as400.access.AS400Message;
+import com.ibm.as400.access.CommandCall;
 
 /** Action for executing a AS/400 CL Commands. */
 @Action(
@@ -62,20 +58,22 @@ public class ActionAs400Command extends ActionBase implements Cloneable, IAction
 
   private static final String TAG_COMMAND = "command";
 
-  private static final String TAG_PROXY_HOST = "proxyHost";
-
-  private static final String TAG_PROXY_PORT = "proxyPort";
-
+  @HopMetadataProperty(key = TAG_SERVER)
   private String server;
 
+  @HopMetadataProperty(key = TAG_USER)
   private String user;
 
+  @HopMetadataProperty(key = TAG_PASSWORD, password=true)
   private String password;
 
+  @HopMetadataProperty(key = TAG_COMMAND)
   private String command;
 
+  @HopMetadataProperty(key = "proxyHost")
   private String proxyHost;
 
+  @HopMetadataProperty(key = "proxyPort")
   private String proxyPort;
 
   public ActionAs400Command(String name, String description) {
@@ -108,43 +106,8 @@ public class ActionAs400Command extends ActionBase implements Cloneable, IAction
     return new ActionAs400Command(this);
   }
 
-  @Override
-  public String getXml() {
-    StringBuilder xml = new StringBuilder(100);
-
-    xml.append(super.getXml());
-    xml.append(XmlHandler.addTagValue(TAG_SERVER, server));
-    xml.append(XmlHandler.addTagValue(TAG_USER, user));
-    xml.append(
-        XmlHandler.addTagValue(TAG_PASSWORD, Encr.encryptPasswordIfNotUsingVariables(password)));
-    xml.append(XmlHandler.addTagValue(TAG_PROXY_HOST, proxyHost));
-    xml.append(XmlHandler.addTagValue(TAG_PROXY_PORT, proxyPort));
-    xml.append(XmlHandler.addTagValue(TAG_COMMAND, command));
-
-    return xml.toString();
-  }
-
-  @Override
-  public void loadXml(Node node, IHopMetadataProvider metadataProvider, IVariables variables)
-      throws HopXmlException {
-    try {
-      super.loadXml(node);
-
-      server = XmlHandler.getTagValue(node, TAG_SERVER);
-      user = XmlHandler.getTagValue(node, TAG_USER);
-      password =
-          Encr.decryptPasswordOptionallyEncrypted(XmlHandler.getTagValue(node, TAG_PASSWORD));
-      proxyHost = XmlHandler.getTagValue(node, TAG_PROXY_HOST);
-      proxyPort = XmlHandler.getTagValue(node, TAG_PROXY_PORT);
-      command = XmlHandler.getTagValue(node, TAG_COMMAND);
-    } catch (Exception e) {
-      throw new HopXmlException(
-          BaseMessages.getString(PKG, "ActionAS400Command.UnableToLoadFromXml.Label"), e);
-    }
-  }
-
   /** @return Returns the userName. */
-  public String getUserName() {
+  public String getUser() {
     return user;
   }
 
@@ -153,7 +116,7 @@ public class ActionAs400Command extends ActionBase implements Cloneable, IAction
    *
    * @param userName The userName to set.
    */
-  public void setUserName(final String userName) {
+  public void setUser(final String userName) {
     this.user = userName;
   }
 
@@ -172,12 +135,12 @@ public class ActionAs400Command extends ActionBase implements Cloneable, IAction
   }
 
   /** @return Returns the serverName. */
-  public String getServerName() {
+  public String getServer() {
     return server;
   }
 
   /** @param serverName The serverName to set. */
-  public void setServerName(String serverName) {
+  public void setServer(String serverName) {
     this.server = serverName;
   }
 
@@ -378,7 +341,7 @@ public class ActionAs400Command extends ActionBase implements Cloneable, IAction
             this,
             TAG_PASSWORD,
             remarks,
-            AndValidator.putValidators(ActionValidatorUtils.notNullValidator()));
+            AndValidator.putValidators(ActionValidatorUtils.notBlankValidator()));
     ActionValidatorUtils.andValidator()
         .validate(
             this,
diff --git a/plugins/actions/as400command/src/main/java/org/apache/hop/workflow/actions/as400command/ActionAs400CommandDialog.java b/plugins/actions/as400command/src/main/java/org/apache/hop/workflow/actions/as400command/ActionAs400CommandDialog.java
index c5c5ac8..39662b1 100644
--- a/plugins/actions/as400command/src/main/java/org/apache/hop/workflow/actions/as400command/ActionAs400CommandDialog.java
+++ b/plugins/actions/as400command/src/main/java/org/apache/hop/workflow/actions/as400command/ActionAs400CommandDialog.java
@@ -252,8 +252,8 @@ public class ActionAs400CommandDialog extends ActionDialog implements IActionDia
     if (action.getName() != null) {
       wName.setText(action.getName());
     }
-    wServerName.setText(Const.NVL(action.getServerName(), ""));
-    wUserName.setText(Const.NVL(action.getUserName(), ""));
+    wServerName.setText(Const.NVL(action.getServer(), ""));
+    wUserName.setText(Const.NVL(action.getUser(), ""));
     wPassword.setText(Const.NVL(action.getPassword(), ""));
     wCommand.setText(Const.NVL(action.getCommand(), ""));
     wProxyHost.setText(Const.NVL(action.getProxyHost(), ""));
@@ -279,8 +279,8 @@ public class ActionAs400CommandDialog extends ActionDialog implements IActionDia
     }
 
     action.setName(wName.getText());
-    action.setServerName(wServerName.getText());
-    action.setUserName(wUserName.getText());
+    action.setServer(wServerName.getText());
+    action.setUser(wUserName.getText());
     action.setPassword(wPassword.getText());
     action.setCommand(wCommand.getText());
     action.setProxyHost(wProxyHost.getText());
diff --git a/plugins/actions/as400command/src/main/resources/org/apache/hop/workflow/actions/as400command/messages/messages_en_US.properties b/plugins/actions/as400command/src/main/resources/org/apache/hop/workflow/actions/as400command/messages/messages_en_US.properties
index a144358..d8b569d 100644
--- a/plugins/actions/as400command/src/main/resources/org/apache/hop/workflow/actions/as400command/messages/messages_en_US.properties
+++ b/plugins/actions/as400command/src/main/resources/org/apache/hop/workflow/actions/as400command/messages/messages_en_US.properties
@@ -20,12 +20,11 @@ ActionAs400Command.Description=Calling AS/400 CL Commands
 ################################################################################
 # Runtime error messages
 ################################################################################
-ActionAs400Command.Exception.UnableToLoadFromXml=Unable to read action information from XML 
 ActionAs400Command.Log.Started=Started AS/400 Command
-ActionAs400Command.Log.Connecting=Connecting to server {0} with username [{1}] 
+ActionAs400Command.Log.Connecting=Connecting to server {0} with username [{1}]
 ActionAs400Command.Log.Connected=Connected to server {0}
 ActionAs400Command.Log.CommandRun=Executing command:  {0}
-ActionAs400Command.Log.CommandSuccess=Command [{1}] executed successfully on server {0}.
+ActionAs400Command.Log.CommandSuccess=Command [{1}] executed successfully on server {0}
 ActionAs400Command.Log.CommandFailed=We can not execute the command [{1}] on server {0}
 ################################################################################
 # Dialog
diff --git a/plugins/actions/as400command/src/test/java/org/apache/hop/workflow/actions/as400command/ActionAs400CommandLoadSaveTest.java b/plugins/actions/as400command/src/test/java/org/apache/hop/workflow/actions/as400command/ActionAs400CommandLoadSaveTest.java
index aaba41b..682c620 100644
--- a/plugins/actions/as400command/src/test/java/org/apache/hop/workflow/actions/as400command/ActionAs400CommandLoadSaveTest.java
+++ b/plugins/actions/as400command/src/test/java/org/apache/hop/workflow/actions/as400command/ActionAs400CommandLoadSaveTest.java
@@ -36,14 +36,14 @@ public class ActionAs400CommandLoadSaveTest
   @Override
   protected List<String> listCommonAttributes() {
     return Arrays.asList(
-        new String[] {"serverName", "userName", "password", "proxyHost", "proxyPort", "command"});
+        new String[] {"server", "user", "password", "proxyHost", "proxyPort", "command"});
   }
 
   @Override
   protected Map<String, String> createGettersMap() {
     return toMap(
-        "serverName", "getServerName",
-        "userName", "getUserName",
+        "server", "getServer",
+        "user", "getUser",
         "password", "getPassword",
         "proxyHost", "getProxyHost",
         "proxyPort", "getProxyPort",
@@ -53,8 +53,8 @@ public class ActionAs400CommandLoadSaveTest
   @Override
   protected Map<String, String> createSettersMap() {
     return toMap(
-        "serverName", "setServerName",
-        "userName", "setUserName",
+        "server", "setServer",
+        "user", "setUser",
         "password", "setPassword",
         "proxyHost", "setProxyHost",
         "proxyPort", "setProxyPort",