#!/bin/bash

### BEGIN INIT INFO
# Provides:     MONyogd
# Required-Start:
# Required-Stop:
# Default-Start:    2 3 4 5
# Default-Stop:     0 1 6
# Description:      MONyog startup script
### END INIT INFO
# chkconfig: 5 95 05
# description: This script is to support MONyog as a service

progname="$0"
curdir=`dirname "$progname"`
chars=( "-" "\\" "|" "/" )
pid_path=""

function process_stat()
{
		while [ $((`pgrep MONyog-bin | wc -l`)) -gt 0 ]
			do
			   process=`pgrep MONyog-bin`
			   if [ $((`pgrep MONyog-bin | wc -l`)) -eq 0 ];  then
				echo ""
				echo "MONyog stopped successfully !"
			
				get_pid_file
				rm -f $pid_path
				exit 0
			   fi
			   pos=$(($count % 4))
			   			
			   echo -en "\b${chars[$pos]}"
 			   
			   count=`expr $count + 1`		
			   
		 done
}

function get_pid_file()
{
	pid_path=`grep "Pid_file_path=" $curdir/../MONyog.ini | cut -c 15-`
	pid_file="/MONyog-bin.pid"
	if [ ${#pid_path} -eq 0 ]; then
		pid_path="/var/run"
	fi
	pid_path="${pid_path#"${pid_path%%[![:space:]]*}"}"
	pid_path="${pid_path%"${pid_path##*[![:space:]]}"}"
	pid_path+=$pid_file
}


case "$1" in	
	'start'|'-s')
		
		if [ $((`pgrep MONyog-bin | wc -l`)) -gt 0 ]; then
			echo "MONyog is already running..."
		else
			#Setting LD_LIBRARY_PATH environment variable to be same as internal setting of executable.
			#This is required to preserve the output for "ps aux | grep MONyog". 
			LD_LIBRARY_PATH=${curdir}${LD_LIBRARY_PATH+":$LD_LIBRARY_PATH"}
			export LD_LIBRARY_PATH
			`LD_LIBRARY_PATH=/root/MONyog/out/lib/linux-glibc-2.3.2-95.50/release64/lib:/usr/kerberos/lib64 $curdir/MONyog-bin -s`
			if [ $((`pgrep MONyog-bin | wc -l`)) -gt 0 ]; then
				echo "MONyog started! "
				get_pid_file
				echo `pgrep MONyog-bin` > $pid_path
			else
				echo "Sorry! Unable to start MONyog. "	
				exit 0
			fi
		   
		fi
		;;
		
	'stop')
		
          	count=0
	
		if [ $((`pgrep MONyog-bin | wc -l`)) -gt 0 ];  then	
		  	`pkill -15 -x MONyog-bin`
		   	echo -n "Shutting down: "
		  	process_stat 
			echo " "
			echo "MONyog stopped successfully! "
			get_pid_file
			rm -f $pid_path
		else
			echo "MONyog is not in memory..."
		fi
		;;

	'restart'|'reload')
                $0 stop
                $0 start
                ;;

        'status')

                if [ $((`pgrep MONyog-bin`)) -gt 0 ]; then
                echo -n "MONyog is  running!"
                echo " "
                else
                echo -n "MONyog is NOT running!"
                echo " "
                fi
                ;;
        *)

                echo "Usage: $0 {start|stop|restart|reload|status}"
                exit 1;

esac
