You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@openwhisk.apache.org by GitBox <gi...@apache.org> on 2022/07/25 07:45:37 UTC

[GitHub] [openwhisk-runtime-java] ningyougang commented on pull request #140: Support array result include sequence action

ningyougang commented on PR #140:
URL: https://github.com/apache/openwhisk-runtime-java/pull/140#issuecomment-1193703280

   Test `make java runtime to support array result for sequence action (support array as input param)`'s steps as below
   * Write Split.java and Sort.java
   ```java
   [root@nccddev130026 ~]# cat ~/Split.java 
   import com.google.gson.JsonArray;
   import com.google.gson.JsonObject;
   
   public class Split {
       public static JsonArray main(JsonObject args) {
           String separator = "\n";
           if (args.has("separator")) {
               separator = args.getAsJsonPrimitive("separator").getAsString();
           }
           String payLoad = "aaaa\nbbbb\ncccc";
           if (args.has("payload")) {
               payLoad = args.getAsJsonPrimitive("payload").getAsString();
           }
           JsonArray jsonArray = new JsonArray();
           String[] stringArray = payLoad.split(separator);
           for(String element: stringArray) {
               jsonArray.add(element);
           }
           return jsonArray;
       }
   }
   
   [root@nccddev130026 ~]# cat ~/Sort.java 
   import com.google.gson.JsonArray;
   
   public class Sort {
       public static JsonArray main(JsonArray args) {
           JsonArray newJsonArray = new JsonArray();
           for(int i=args.size()-1;i>=0;i--) {
               newJsonArray.add(args.get(i).getAsString());
           }
           return newJsonArray;
       }
   }
   ```
   * Create java sequence action & invoke it
   ```shell
   javac -classpath "/root/gson-2.9.0.jar" Split.java
   jar cvf split.jar Split.class
   wsk -i action create /whisk.system/utils/split-java split.jar --main Split --kind java:8
   
   javac -classpath "/root/gson-2.9.0.jar" Sort.java
   jar cvf sort.jar Sort.class
   
   wsk -i action create /whisk.system/utils/sort-java sort.jar --main Sort --kind java:8
   wsk -i action create mySequence-java --sequence /whisk.system/utils/split-java,/whisk.system/utils/sort-java
   wsk -i action invoke --result mySequence-java --param payload "aaaa\nbbbb\ncccc" -r -v
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@openwhisk.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org