#!/bin/bash -eu

# Copyright 2019 Imply Data, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

if [ "$#" -gt 2 ] || [ "$#" -eq 0 ]
then
  >&2 echo "usage: $0 <service> [conf-dir]"
  exit 1
fi

PWD="$(pwd)"
WHEREAMI="$(dirname "$0")"
WHATAMI="$1"

if [ "$#" -eq 1 ]
then
  CONFDIR="$WHEREAMI/../conf"
else
  CONFDIR="$2"
fi

CONFDIR="$(cd "$CONFDIR">/dev/null && pwd)/druid"
WHEREAMI="$(cd "$WHEREAMI">/dev/null && pwd)"
MY_CONF="$CONFDIR"/"$WHATAMI"
COMMON_CONF="$CONFDIR"/_common

cd "$WHEREAMI/.."

if [ -f "$COMMON_CONF"/environ ]
then
  source "$COMMON_CONF"/environ
fi

if [ -f "$MY_CONF"/environ ]
then
  source "$MY_CONF"/environ
fi

exec "$WHEREAMI"/run-java `cat "$MY_CONF"/jvm.config | xargs` \
  -cp "$MY_CONF":"$COMMON_CONF":"$WHEREAMI/../dist/resources":"$WHEREAMI/../dist/druid/lib/*":"$CONFDIR/user-classpath":"$CONFDIR/user-classpath/*" \
  `cat "$MY_CONF"/main.config | sed "s/io.druid/org.apache.druid/" | xargs`
