]> git.evergreen-ils.org Git - working/Hatch.git/blob - hatch.sh
LP1860187: Set .properties Permissions Appropriately
[working/Hatch.git] / hatch.sh
1 #!/bin/bash
2 #
3 # Linux/Mac Hatch Execution Script
4
5 # Reference local JDK/JFX bundles.
6 JAVA_HOME="./java-jdk-linux"
7 JAVAFX_HOME="./javafx-sdk-linux"
8
9 # Are we running on a mac?
10 if [ $(uname) == 'Darwin' ]; then
11     JAVA_HOME="./java-jdk-mac/Contents/Home"
12     JAVAFX_HOME="./javafx-sdk-mac"
13 fi;
14
15 JAFAFX_MODS="--module-path $JAVAFX_HOME/lib --add-modules=javafx.base,javafx.graphics,javafx.web"
16
17 JAVA=$JAVA_HOME/bin/java
18 JAVAC=$JAVA_HOME/bin/javac
19 JAR=$JAVA_HOME/bin/jar
20 LOGS=-Djava.util.logging.config.file=logging.properties
21
22 COMMAND="$1"
23
24 if [ "$COMMAND" == "compile" ]; then
25
26     $JAVAC -Xdiags:verbose -Xlint:unchecked \
27         -cp lib/\* -d lib $JAFAFX_MODS src/org/evergreen_ils/hatch/*.java
28
29     # Create a JAR file from the compiled class files them remove them.
30     $JAR cf lib/hatch.jar -C lib org
31     rm -r lib/org
32
33 elif [ "$COMMAND" == "test" ]; then
34
35     # 1. Run TestHatch in (default) send mode, which emits JSON requests
36     # 2. Run Hatch and process messages emitted from #1.
37     # 3. Run TestHatch in receive mode to log the responses.
38
39     $JAVA "$LOGS" -cp lib/\* $JAFAFX_MODS org.evergreen_ils.hatch.TestHatch \
40         | $JAVA "$LOGS" -cp lib/\* $JAFAFX_MODS org.evergreen_ils.hatch.Hatch \
41         | $JAVA "$LOGS" -cp lib/\* $JAFAFX_MODS org.evergreen_ils.hatch.TestHatch receive
42
43 else
44
45     # run Hatch
46     $JAVA "$LOGS" -cp lib/\* $JAFAFX_MODS org.evergreen_ils.hatch.Hatch
47 fi;