#! /bin/sh
### BEGIN INIT INFO
# Provides:          scthinagent
# Required-Start:    $network $syslog $time
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: SimpleClicks ThinAgent 2.2.19
### END INIT INFO
VMARGS="-Xms1g"
VMOPENS=""
IP=`hostname -I`
JMXARGS="-Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.rmi.port=9998 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.local.only=false -Djava.rmi.server.hostname=${IP}"
PATH=/sbin:/usr/sbin:/bin:/usr/bin
APPNAME=scthinagent
APPPATH=usr/local/simpleclicks
APPBRAND="SimpleClicks ThinAgent"
JARNAME=simpleclicks.jar
APPVERSION=`grep version.agent= /$APPPATH/lib/version.nfo | cut -d= -f2 | tr -d $\n`
APPBUILD=`grep version.agentbuildno= /$APPPATH/lib/version.nfo | cut -d= -f2 | tr -d $\n`

export LANG="de_DE.UTF-8"
umask 0002
#LANG="de_DE.UTF-8"
[ -r /etc/default/$APPNAME ] && . /etc/default/$APPNAME
. /lib/init/vars.sh
. /lib/lsb/init-functions

start() {
    # Start application
    log_action_msg  "starting $APPBRAND $APPVERSION #$APPBUILD"
    cd /$APPPATH
    if [ -e ./jre8/bin/java ]
    then
       ./jre8/bin/java ${1} $VMARGS ${VMOPENS} -jar /$APPPATH/$JARNAME $2 >/dev/null 2>&1 &
    elif [ -e ./jre/bin/java ]
    then
       ./jre/bin/java ${1} $VMARGS ${VMOPENS} -jar /$APPPATH/$JARNAME $2 >/dev/null 2>&1 &
    else
        java ${1} $VMARGS ${VMOPENS} -jar /$APPPATH/$JARNAME $2 >/dev/null 2>&1 &
    fi
    PID=$!
    echo $PID >  /var/lock/$APPNAME.lck
    }

stop() {
    res=0
    if [ -e "/var/lock/$APPNAME.lck" ] ; then
            log_action_msg  "stopping $APPBRAND $APPVERSION #$APPBUILD"
            PID=`cat /var/lock/$APPNAME.lck`
            res=$(kill $PID)
            if [ ${res:-0} -eq 0 ] ; then
                rm /var/lock/$APPNAME.lck
            fi
    fi

}

case "$1" in
  start|"")
        case "$MODE" in
           "")
           start
           ;;
         compact)
           start "" -compact
           ;;
         jmx)
          start "$JMXARGS"
          ;;
         debug)
          start "-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9998"
          ;;
        esac

        if [ -n $ONCE ]; then
           if [ -r /etc/default/$APPNAME ]; then
             if [ -r /etc/default/$APPNAME.once ]; then
                mv -f /etc/default/$APPNAME.once  /etc/default/$APPNAME
             else
                rm -f /etc/default/$APPNAME
             fi
           fi
        fi
        ;;
 start_compact)
        if [ -r /etc/default/$APPNAME ]; then
           mv -f /etc/default/$APPNAME  /etc/default/$APPNAME.once
        fi
        echo "MODE=compact" >  /etc/default/$APPNAME
        echo "ONCE=true" >>  /etc/default/$APPNAME
        service $APPNAME start
        ;;
 start_jmx)
        if [ -r /etc/default/$APPNAME ]; then
           mv -f /etc/default/$APPNAME  /etc/default/$APPNAME.once
        fi
        echo "MODE=jmx" >  /etc/default/$APPNAME
        echo "ONCE=true" >>  /etc/default/$APPNAME
        service $APPNAME start
        ;;
 start_debug)
        if [ -r /etc/default/$APPNAME ]; then
           mv -f /etc/default/$APPNAME  /etc/default/$APPNAME.once
        fi
        echo "MODE=debug" >  /etc/default/$APPNAME
        echo "ONCE=true" >>  /etc/default/$APPNAME
        service $APPNAME start
        ;;
  restart)
        stop
        sleep 5
        start
        ;;
  stop)
        stop
        sleep 5
        exit ;
        ;;
  *)
        echo "Usage: $APPNAME [start|stop|restart]" >&2
        exit 3
        ;;
esac
