#!/bin/bash
SERVICE_NAME="I-Monitor Server"
PATH_TO_JAR="/tmp2/iMonitorServer-1.0-jar-with-dependencies.jar"
PID_PATH_NAME="/tmp2/iMonitorService-pid"
PID_PS="$(ps ax |grep 'iMonitorServer-' |grep java |awk '{print $1}')"
case $1 in
    start)
        echo "Starting $SERVICE_NAME ..."
        if [ ! -f $PID_PATH_NAME ] || [ -z $PID_PS ]; then
            #nohup java -jar $PATH_TO_JAR > /dev/null 2>&1 & echo $! > $PID_PATH_NAME
            nohup java -jar $PATH_TO_JAR > /dev/null 2>&1 &
            #nohup java -jar $PATH_TO_JAR & > /dev/null 2>&1
	    echo $! > $PID_PATH_NAME;
            echo "$SERVICE_NAME Started ...";
        else
            echo "$SERVICE_NAME is already running! ..."
        fi
    ;;
    stop)
        if [ -n "$PID_PS" ]; then
            #PID=$(cat $PID_PATH_NAME);
            echo "Stopping $SERVICE_NAME ..."
            kill -9 $PID_PS >/dev/null 2>&1;
            echo "$SERVICE_NAME Stopped! ..."
            rm -f $PID_PATH_NAME > /dev/null 2>&1
        else
            echo "$SERVICE_NAME is not running ..."
        fi
    ;;
    status)
        if [ -n "$PID_PS" ]; then
            echo "$SERVICE_NAME is Running ... PID: $PID_PS"
        else
            echo "$SERVICE_NAME is not running ..."
        fi
    ;;
    restart)
        if [ -f $PID_PATH_NAME ] || [ -n $PID_PS ]; then
            #PID=$(cat $PID_PATH_NAME);
            echo "Stopping $SERVICE_NAME ...";
            kill -9 $PID_PS >/dev/null 2>&1;
            echo "$SERVICE_NAME stopped! ...";
            rm -f $PID_PATH_NAME > /dev/null 2>&1
            echo "Starting $SERVICE_NAME ..."
            nohup java -jar $PATH_TO_JAR > /dev/null 2>&1 &
	    echo $! > $PID_PATH_NAME;
            echo "$SERVICE_NAME Started! ..."
        else
            echo "$SERVICE_NAME is not running ..."
        fi
    ;;
esac
