#!/bin/sh
#
# start/stop session expiration daemon.
#
### BEGIN INIT INFO
# Provides:          expire-sessions
# Required-Start:    $syslog $time
# Required-Stop:     $syslog $time
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Runs the session expiration daemon.
# Description:       Starts/stops the session expiration daemon.
#                     
### END INIT INFO

if ! [ -x /usr/lib/hubzero/bin/expire-sessions.py ]; then
	exit 0
fi

chkrunning() {
  pid=""
  if [[ -f /var/run/expire-sessions.pid ]]
  then
    pid=$(cat /var/run/expire-sessions.pid)
  fi
  if [[ "x${pid}x" != "xx" ]]
  then
    list=$(pidof python)
    for x in $list
    do
      if [[ $pid == $x ]]
      then
        echo "ERROR: expire-sessions appears to be running already."
        exit 1
      fi
    done
  fi
}

case "$1" in
    start)
        chkrunning
	echo -n "Starting session expiration daemon:"
	HOME=/var/www
	LOGNAME=www-data
	USER=www-data
	export HOME LOGNAME USER
	echo -n " expire-sessions" ; start-stop-daemon --start --quiet --pidfile /var/run/expire-sessions.pid --exec /usr/lib/hubzero/bin/expire-sessions.py
	echo "."
	;;
    stop)
	echo -n "Stopping session expiration daemon:"
	echo -n " expire-sessions" ; start-stop-daemon --stop --quiet --oknodo --signal INT --pidfile /var/run/expire-sessions.pid
	echo "."
	;;
    restart)
	echo -n "Restarting session expiration daemon:"
	echo -n " expire-sessions"
	start-stop-daemon --stop --quiet --oknodo --signal INT --pidfile /var/run/expire-sessions.pid
	start-stop-daemon --start --quiet --pidfile /var/run/expire-sessions.pid --exec /usr/lib/hubzero/bin/expire-sessions.py
	echo "."
	;;
    *)
	echo "Usage: /etc/init.d/expire-sessions {start|stop|restart}"
	exit 1
	;;
esac

exit 0

