Skip to content

Commit 5bbb26b

Browse files
committed
Add json input/output support
1 parent a16fbfd commit 5bbb26b

File tree

7 files changed

+84
-34
lines changed

7 files changed

+84
-34
lines changed

Dockerfile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ MAINTAINER ProcessMaker Inc.
55
COPY /src /opt/executor
66

77
WORKDIR /opt/executor/spark-sdk-java
8-
RUN ls
9-
RUN mvn package mvn -DmyProperty=3.9.1
10-
RUN cp target/openapi-java-client-1.0.0.jar ../openapi-java-client-1.0.0.jar
8+
9+
RUN mvn package -DmyProperty=3.9.1
10+
11+
WORKDIR /opt/executor

Script.java

Lines changed: 0 additions & 27 deletions
This file was deleted.

build.sh

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,3 @@ pushd src
1212
popd
1313

1414
docker build -t processmaker/spark-docker-executor-java:${TAG} .
15-
16-
docker run -it --rm --name java1 -v "$(pwd)/Script.java":/opt/executor/Script.java -w /opt/executor processmaker/spark-docker-executor-java:${TAG} ls

src/BaseScript.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import org.openapitools.client.api.UsersApi;
2+
import ProcessMaker_Client.ApiClient;
3+
import com.google.gson.Gson;
4+
import java.io.*;
5+
import java.lang.reflect.Type;
6+
import com.google.gson.reflect.TypeToken;
7+
import java.util.Map;
8+
import java.util.HashMap;
9+
10+
public interface BaseScript {
11+
12+
public void execute(Map<String, Object> data, Map<String, Object> config, Map<String, Object> output);
13+
}

src/Main.java

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import org.openapitools.client.api.UsersApi;
2+
import ProcessMaker_Client.ApiClient;
3+
import com.google.gson.Gson;
4+
import java.io.*;
5+
import java.lang.reflect.Type;
6+
import com.google.gson.reflect.TypeToken;
7+
import java.util.Map;
8+
import java.util.HashMap;
9+
10+
public class Main {
11+
12+
public static void main(String args[]) throws FileNotFoundException {
13+
Script script = new Script();
14+
Map<String, Object> data = Spark.data();
15+
Map<String, Object> config = Spark.config();
16+
Map<String, Object> output = new HashMap<String, Object>();
17+
script.execute(data, config, output);
18+
Spark.printOutput(output);
19+
}
20+
}

src/Spark.java

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
import org.openapitools.client.api.UsersApi;
2+
import ProcessMaker_Client.ApiClient;
3+
import com.google.gson.Gson;
4+
import java.io.*;
5+
import java.lang.reflect.Type;
6+
import com.google.gson.reflect.TypeToken;
7+
import java.util.Map;
8+
import java.util.HashMap;
9+
10+
public class Spark {
11+
12+
public static ApiClient api() {
13+
String baseApiUrl = System.getenv("API_HOST");
14+
String v3Token = System.getenv("API_TOKEN");
15+
int connectTimeout = 60000;
16+
int readTimeout = 120000;
17+
18+
ApiClient client = new ApiClient();
19+
20+
client.setBasePath(baseApiUrl);
21+
client.setApiKey("Bearer " + v3Token);
22+
client.setConnectTimeout(connectTimeout);
23+
client.setDebugging(false);
24+
return client;
25+
}
26+
27+
public static Map<String, Object> data() throws FileNotFoundException {
28+
Type typeOfHashMap = new TypeToken<Map<String, Object>>() { }.getType();
29+
BufferedReader bufferedReader = new BufferedReader(new FileReader("data.json"));
30+
Gson gson = new Gson();
31+
return gson.fromJson(bufferedReader, typeOfHashMap);
32+
}
33+
34+
public static Map<String, Object> config() throws FileNotFoundException {
35+
Type typeOfHashMap = new TypeToken<Map<String, Object>>() { }.getType();
36+
BufferedReader bufferedReader = new BufferedReader(new FileReader("config.json"));
37+
Gson gson = new Gson();
38+
return gson.fromJson(bufferedReader, typeOfHashMap);
39+
}
40+
41+
public static void printOutput(Map<String, Object> data) {
42+
String jsonString = new Gson().toJson(data);
43+
System.out.println(jsonString);
44+
}
45+
}

src/run.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
#!/bin/bash
2-
javac -cp spark-sdk-java/target/lib/*:spark-sdk-java/target/openapi-java-client-1.0.0.jar Script.java
3-
java -cp spark-sdk-java/target/lib/*:spark-sdk-java/target/openapi-java-client-1.0.0.jar:. Script
2+
javac -cp spark-sdk-java/target/lib/*:spark-sdk-java/target/openapi-java-client-1.0.0.jar -Xlint:unchecked Script.java Spark.java Main.java BaseScript.java
3+
java -cp spark-sdk-java/target/lib/*:spark-sdk-java/target/openapi-java-client-1.0.0.jar:. Main

0 commit comments

Comments
 (0)