#!/bin/bash
#
# accumulo script
# JPackage Project <http://www.jpackage.org/>

# Source functions library
_prefer_jre="true"
. /usr/share/java-utils/java-functions

# Source system prefs
if [ -f /etc/java/accumulo.conf ] ; then
  . /etc/java/accumulo.conf "$1"
fi

# Source user prefs
if [ -f $HOME/.accumulorc ] ; then
  . $HOME/.accumulorc "$1"
fi

# Configuration
MAIN_CLASS=org.apache.accumulo.start.Main
BASE_FLAGS=""
BASE_OPTIONS=""
BASE_JARS="accumulo accumulo/accumulo-tserver jetty servlet avro/avro apache-commons-io apache-commons-cli apache-commons-codec apache-commons-collections apache-commons-configuration apache-commons-lang apache-commons-logging apache-commons-math apache-commons-vfs beust-jcommander google-gson guava hadoop/hadoop-auth hadoop/hadoop-common hadoop/hadoop-hdfs jansi/jansi jline/jline libthrift log4j-1.2.17 slf4j/slf4j-api slf4j/slf4j-log4j12 zookeeper/zookeeper protobuf-java"

# Set parameters
set_jvm
set_classpath $BASE_JARS

# Let's start
CLASSPATH="/etc/accumulo:/usr/share/accumulo/lib/:${CLASSPATH}"
set_javacmd

if [ -n "${VERBOSE}" ]; then
  echo "Java virtual machine used: ${JAVACMD}"
  echo "classpath used: ${CLASSPATH}"
  echo "main class used: ${MAIN_CLASS}"
  echo "flags used: ${FLAGS[*]}"
  echo "options used: ${ACCUMULO_OPTS[*]}"
  echo "arguments used: ${*}"
fi

if [[ ${@} == "classpath" ]]; then
  echo "${CLASSPATH}"
  exit 0
fi

export CLASSPATH
exec "${JAVACMD}" "${FLAGS[@]}" "${ACCUMULO_OPTS[@]}" "${MAIN_CLASS}" "${@}"
