#!/bin/sh
#
# Gadget daemon
#
# chkconfig: 345 26 74
# description: Gadget is an XMPP server component (being) written by 
#              Collabora to scale Jabber server based collaborative 
#              activities via Telepathy Gabble.
#
# processname: hald
#
# pidfile: /var/run/haldaemon.pid
#

# Author: Dafydd Harries <daf@debian.org>
#         Simon Schampijer <simon@schampijer.de>

# Do NOT "set -e"

RETVAL=0

# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="Gadget XMPP component"
NAME=gadget
TAC=/usr/share/gadget/gadget.tac
PIDFILE=/var/run/$NAME.pid
LOGFILE=/var/log/gadget.log
servicename=twistdaemon
processname=twistd
DAEMON_ARGS="--logfile $LOGFILE --pidfile $PIDFILE -oy $TAC"

# Exit if the package is not installed
[ -r "$TAC" ] || exit 0

# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME

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

export PYTHONPATH=/usr/share/gadget/

start()

{
    echo -n $"Starting Gadget daemon: "
    daemon --pidfile $PIDFILE --check $servicename $processname $DAEMON_ARGS
    RETVAL=$?
    echo
    [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$NAME
}

stop()
{
    echo -n $"Stoping Gadget daemon: "
    killproc -p $pidfile $servicename
    RETVAL=$?
    echo
    if [ $RETVAL -eq 0 ]; then
	rm -f /var/lock/subsys/$NAME
	rm -f $pidfile
    fi
}

case "$1" in
    start)
	start
	;;
    stop)
	stop
	;;
    restart|force-reload)
	stop
	sleep 3
	start
	;;
    condrestart)
        if [ -f /var/lock/subsys/$NAME ]; then
            stop
	    sleep 3
            start
        fi
        ;;
    *)
	echo $"Usage: $0 {start|stop|status|restart|condrestart}"
	;;
esac
exit $RETVAL
