#!/bin/sh

JRE_HOME=/usr/java/jre_8_64; export JRE_HOME
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You 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.

# -----------------------------------------------------------------------------
# Start Script for the CATALINA Server
# -----------------------------------------------------------------------------

# Better OS/400 detection: see Bugzilla 31132
os400=false
case "`uname`" in
OS400*) os400=true;;
esac

JAVA_OPTS="$JAVA_OPTS -Xms6144m"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -Xmx6144m"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -XX:MaxMetaspaceSize=512m"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -XX:MetaspaceSize=384m"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -XX:+UseCompressedOops"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -XX:+DisableExplicitGC"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -XX:+UseConcMarkSweepGC"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -XX:+UseParNewGC"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -XX:NewRatio=2"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -XX:ErrorFile=/remedy/ar/tomcat7.0/logs/hs_err_pid%p.log"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -XX:HeapDumpPath=/remedy/ar/tomcat7.0/logs"; export JAVA_OPTS
JAVA_OPTS="$JAVA_OPTS -Djava.library.path=/remedy/ar/tomcat7.0/lib:/usr/java/jre_8_64/lib/amd64"; export JAVA_OPTS

JAVA_HOME=/usr/java/jre_8_64 ; export JAVA_HOME
CATALINA_HOME=/remedy/ar/tomcat7.0 ; export CATALINA_HOME
LD_LIBRARY_PATH=/remedy/ar/midtier/WEB-INF/lib ; export LD_LIBRARY_PATH

# resolve links - $0 may be a softlink
PRG="$0"

while [ -h "$PRG" ] ; do
  ls=`ls -ld "$PRG"`
  link=`expr "$ls" : '.*-> \(.*\)$'`
  if expr "$link" : '/.*' > /dev/null; then
    PRG="$link"
  else
    PRG=`dirname "$PRG"`/"$link"
  fi
done

PRGDIR=`dirname "$PRG"`
EXECUTABLE=catalina.sh

# Check that target executable exists
if $os400; then
  # -x will Only work on the os400 if the files are:
  # 1. owned by the user
  # 2. owned by the PRIMARY group of the user
  # this will not work if the user belongs in secondary groups
  eval
else
  if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then
    echo "Cannot find $PRGDIR/$EXECUTABLE"
    echo "The file is absent or does not have execute permission"
    echo "This file is needed to run this program"
    exit 1
  fi
fi

exec "$PRGDIR"/"$EXECUTABLE" start "$@"
