#!/bin/sh

for i in 1 2 3; do if [ "$(eval echo \"\$$i\")" == "-dbg" ]; then
  echo "[+] debug mode enabled"
  JAVA_OPTS="$JAVA_OPTS -agentpath:/opt/yourkit/bin/linux-x86-64/libyjpagent.so"
fi; done

for i in 1 2 3; do if [ "$(eval echo \"\$$i\")" == "-dump" ]; then
  echo "[+] dump mode enabled"
#  JAVA_OPTS="$JAVA_OPTS \
 # -XX:+PrintGC          \
fi; done

for i in 1 2 3; do if [ "$(eval echo \"\$$i\")" == "-gc" ]; then
  echo "[+] verbose gc mode enabled"
  JAVA_OPTS="$JAVA_OPTS \
  -XX:+PrintGC          \
  -XX:+PrintGCDetails   \
  -XX:+PrintGCTimeStamps"
fi; done

java -ea -server $JAVA_OPTS           \
  -XX:+AggressiveOpts                 \
  -XX:+OptimizeStringConcat           \
  -XX:+UseParallelGC                  \
  -XX:SurvivorRatio=3                 \
  -Xms128M                            \
  -Xmx1G                              \
  -Dio.netty.epollBugWorkaround=true  \
  -Dconfig.file=src/main/resources/reference.conf \
  -Dlogback.configurationFile=src/main/resources/logback.production.xml \
  -jar target/netflow-$( cat version ).jar