#!/bin/sh
# chkconfig: - 98 02
#
# description: Starts the stomp_server daemon
# processname: stompserver
# config: /etc/stompserver.conf

### BEGIN INIT INFO
# Provides: stompserver
# Required-Start: $local_fs $network $syslog
# Should-Start: $named
# Required-Stop: $network
# Should-Stop: $named
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Starts the stomp server daemon
# Description: Stompserver is a messaging server using the stomp protocol
### END INIT INFO

# Local variables
DAEMON_NAME=stompserver
DAEMON_PROCESS=$DAEMON_NAME
DAEMON_BINARY=/usr/bin/$DAEMON_PROCESS
LOCKFILE=/var/lock/subsys/$DAEMON_PROCESS
PIDFILE=/var/run/$DAEMON_PROCESS/$DAEMON_PROCESS.pid

RETVAL=0

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

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

start() {
    # Check if it is already running
    if [ ! -f $LOCKFILE ]; then
        gprintf "Starting %s daemon: " "$DAEMON_NAME"
        daemon $DAEMON_BINARY -C /etc/stompserver.conf
	RETVAL=$?
	[ $RETVAL -eq 0 ] && touch $LOCKFILE
	echo
    fi
    return $RETVAL
}

stop() {
    gprintf "Stopping %s daemon: " "$DAEMON_NAME"
    killproc -p $PIDFILE
    RETVAL=$?
    [ $RETVAL -eq 0 ] && rm -f $LOCKFILE
    echo
    return $RETVAL
}

restart() {
    stop
    start
}

        
case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        restart
        ;;
    condrestart)
        if [ -f $LOCKFILE ]; then
	        restart
        fi
        ;;
    status)
        status $DAEMON_PROCESS
        RETVAL=$?
	    ;;
    *)
       	gprintf "Usage: %s {start|stop|restart|condrestart|status}\n" "$0"
        RETVAL=1
	    ;;
esac

exit $RETVAL
