#!/bin/sh
#
# Startup script for the LizardTech Network Usage Meter Server
#
# chkconfig: 345 84 16
# description: LizardTech Network Usage Meter Server
# processname: ltumsd
# pidfile: /var/run/ltumsd.pid

prog="ltumsd"
lockdir="/var/lock/subsys"
lockfile="${lockdir}/${prog}"

LT_EXPRESS_CARTRIDGE_MANAGER_HOME="REPLACE_ECM_HOME"
LT_UMDB_PATH="${LT_EXPRESS_CARTRIDGE_MANAGER_HOME}/db"
export LT_EXPRESS_CARTRIDGE_MANAGER_HOME LT_UMDB_PATH

# Source function library
. /etc/rc.d/init.d/functions

start() {
  echo -n "Starting ${prog}: "
  daemon $LT_EXPRESS_CARTRIDGE_MANAGER_HOME/bin/${prog}
  test -w ${lockdir} -a ${?} -eq 0 && touch ${lockfile}
  echo
}

stop() {
  echo -n "Stopping ${prog}: "
  
  pid=`pidofproc ${prog}`

  if test -n "${pid}"
  then
    if ps h ${pid} > /dev/null 2>&1
    then
      kill -TERM ${pid}
      sleep 1
      for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
      do
        if ps h ${pid} > /dev/null 2>&1
        then
          sleep 1
        else
          break
        fi
      done
      if ps h ${pid} > /dev/null 2>&1
      then
        kill -KILL ${pid}
        sleep 1
      fi
    fi
    if ps h ${pid} > /dev/null 2>&1
    then
      failure "${prog} shutdown"
      return 1
    fi
  fi

  success "${prog} shutdown"
  rm -f /var/run/${prog}.pid
  echo
  test -w ${lockfile} && rm -f ${lockfile}
}

case "$1" in
  'start')
    start
  ;;
  'stop')
    stop
  ;;
  'status')
    status ${prog}
  ;;
  'restart')
    stop
    start
  ;;
  *)
    echo "Usage: ${0} {start|stop|status|restart}"
    exit 1
esac

