#!/bin/bash
#
### BEGIN INIT INFO
# Provides: tao-costrading
# Required-Start: $udevd
# Required-Stop: $udevd
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Description: Enable autoload of tao-costrading on systems using udev
# Short-Description: start and stop tao-costrading
### END INIT INFO
# chkconfig: - 81 14
# description: Starts and stops the TAO Trading Service.
# processname: tao-costrading
# config: /etc/tao/tao-costrading.opt
# config: /etc/tao/tao-costrading.conf
# pidfile: /var/run/tao-costrading.pid

WITHOUT_RC_COMPAT=1
# Source function library.
. /etc/init.d/functions

# Source configuration options
. /etc/tao/tao-costrading.opt

RETVAL=0

prog="tao-costrading"
progpath="/usr/sbin/$prog"
svcconf="/etc/tao/${prog}.conf"
lockpath="/var/lock/subsys/$prog"
pidpath="/var/run/${prog}.pid"

start()
{
    echo -n $"Starting $prog: "
start_daemon --pidfile "$pidpath" --lockfile "$lockpath" --expect-user tao -- $prog $OPTIONS -ORBSvcConf $svcconf --daemon
    RETVAL=$?
    [ "$RETVAL" = 0 ] && touch $lockpath
    echo
}

stop()
{
    echo -n $"Stopping $prog: "
stop_daemon --pidfile "$pidpath" --lockfile "$lockpath" --expect-user tao -- $prog
    RETVAL=$?
    if [ $RETVAL -eq 0 ] ; then
	rm -f $lockpath
	rm -f $pidpath
    fi
    echo
}

# See how we were called.
case "$1" in
    start)
	start
	;;
    stop|condstop)
	stop
	;;
    status)
	status $prog
	RETVAL=$?
        ;;
    restart)
	stop
	start
	RETVAL=$?
	;;
    condrestart)
	if [ -f $lockpath ]; then
	    stop
	    start
	    RETVAL=$?
	fi
	;;
    reload)
        ;;
    *)
	echo $"Usage: $0 {start|stop|status|restart|condrestart|reload}"
	exit 1
	;;
esac
exit $RETVAL
