#!/bin/bash
#
# perfcap:     Start perfcap  rc0.d -halt  rc6.d reboot	  rc5.d startup
#
# for redhat:
#
# chkconfig: 5 95 05
# description: starts perfcap products
# processname:
# config:
#
# for suse:
#
### BEGIN INIT INFO
# Provides:	       perfcap
# Required-Start:      $local_fs $remote_fs $syslog
# Required-Stop:       $remote_fs $syslog
# Default-Start:       2 3 5
# Default-Stop:	       0 1 6
# Short-Description:   PerfCap Startup
# Description:	       Start ecap_monitor, pawzagent and pawzrta
#
### END INIT INFO

PERFCAP_ROOT="/usr/local/perfcap"
export PERFCAP_ROOT

#PATH="$PATH:$PERFCAP_ROOT/bin:."
#export PATH

if [ ! -d $PERFCAP_ROOT ]
then
   echo "$PERFCAP_ROOT not found!"
   return 1
fi

case "$1" in
  start)
	echo -n "Start perfcap..."
	#
	#  ecap monitor
	#
	if [ -f $PERFCAP_ROOT/bin/ecap_monitor ]
	then
	    LOCK="$PERFCAP_ROOT/tmp/`hostname --short`_monitor.lock"
	    if [ -f $LOCK ]
	    then
	       $PERFCAP_ROOT/bin/ecap_monitor -stop > /dev/null 2>&1
	    fi
	    $PERFCAP_ROOT/bin/ecap_monitor > /dev/null 2>&1
	fi

	#
	# pawzagent ( if lock file found, run stop and start)
	#   this will remove lock file, which causes problems
	#

	if [ -f $PERFCAP_ROOT/bin/pawzagent ]
	then
	    LOCK="$PERFCAP_ROOT/tmp/`hostname --short`_pawz.lock"
	    if [ -f $LOCK ]
	    then
	       $PERFCAP_ROOT/bin/pawzagent -stop > /dev/null 2>&1
	    fi
	    $PERFCAP_ROOT/bin/pawzagent > /dev/null 2>&1
	fi

	#
	# pawz realtime agent
	#

	if [ -f $PERFCAP_ROOT/bin/pawzrta ]
	then
	    LOCK="$PERFCAP_ROOT/tmp/`hostname --short`_rtdc.lock"
	    if [ -f $LOCK ]
	    then
	       $PERFCAP_ROOT/bin/pawzrta -stop > /dev/null 2>&1
	    fi
	    $PERFCAP_ROOT/bin/pawzrta > /dev/null 2>&1
	fi
	touch /var/lock/subsys/perfcap
	;;
  stop)
	echo -n "Stop perfcap..."
	if [ -f $PERFCAP_ROOT/bin/ecap_monitor ]
	then
	   $PERFCAP_ROOT/bin/ecap_monitor -stop > /dev/null 2>&1
	fi

	if [ -f $PERFCAP_ROOT/bin/pawzagent ]
	then
	    $PERFCAP_ROOT/bin/pawzagent -stop > /dev/null 2>&1
	fi
	if [ -f $PERFCAP_ROOT/bin/pawzrta ]
	then
	  $PERFCAP_ROOT/bin/pawzrta -stop > /dev/null 2>&1
	fi
	rm -f /var/lock/subsys/perfcap
	;;
  restart)
	$0 stop
	$0 start
	;;
   *)
esac
exit $?
