#!/bin/sh
##############################################################################
#
#   Copyright 2001-2004 The Apache Software Foundation.
#
#   Licensed under the Apache License, Version 2.0 (the "License");
#   you may not use this file except in compliance with the License.
#   You may obtain a copy of the License at
#
#       http://www.apache.org/licenses/LICENSE-2.0
#
#   Unless required by applicable law or agreed to in writing, software
#   distributed under the License is distributed on an "AS IS" BASIS,
#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#   See the License for the specific language governing permissions and
#   limitations under the License.
#
##############################################################################

### BEGIN INIT INFO
# Provides:     SREpgService
# Required-Start:   $local_fs $remote_fs $network
# Required-Stop:    $local_fs $remote_fs $network
# Default-Start:    3 5
# Default-Stop:     0 1 2 6
# Short-Description:    VdrAssistant SREpgService
# Description:      Starts the VdrAssistant SREpgService
### END INIT INFO

JavaHome=$JAVA_HOME
DaemonStarter=/usr/bin/jsvc
SRBaseDir=/usr/share/java/VdrAssistant
SRWorkerHome=$SRBaseDir/ext
DaemonLibDir=$SRBaseDir/lib
LogDirectory=/var/log/VdrAssistant
SRWorkerUser=vdrassistant
VdrName=vdr
VdrProxyPort=7936
EpgFile=/var/cache/vdr/epg.data
ChannelFile=/var/cache/vdr/channels.conf
TimerFile=/var/cache/vdr/timers.conf
TMP_DIR=/var/tmp
CLASSPATH=\
$JavaHome/lib/tools.jar:\
$DaemonLibDir/commons-daemon/commons-daemon.jar:\
$DaemonLibDir/commons-logging/commons-logging.jar:\
$DaemonLibDir/acegi/acegi-security-1.0.2.jar:\
$DaemonLibDir/spring/spring.jar:\
$DaemonLibDir/jgoodies/binding/binding.jar:\
$DaemonLibDir/mysql/mysql-connector-java.jar:\
$DaemonLibDir/SRDAlib.jar:\
$DaemonLibDir/SREpgDomLib.jar:\
$DaemonLibDir/SRGuiLib.jar:\
$DaemonLibDir/SRAppBase.jar:\
$SRWorkerHome/SRAppEpgProcessor.jar

. /etc/rc.status
rc_reset
return=$rc_done

case "$1" in
	start)
		#
		# Start SREpgProcessorWorker
		#
		$DaemonStarter \
			-user $SRWorkerUser \
			-home $JavaHome \
			-Dcatalina.home=$SRWorkerHome \
			-Djava.awt.headless=true \
			-Djava.io.tmpdir=$TMP_DIR \
			-outfile $LogDirectory/SRWorker.out \
			-errfile '&1' \
			-cp $CLASSPATH \
			de.schwarzrot.epg.processing.app.SRWorker \
			-host $VdrName \
			-port $VdrProxyPort \
			-epgfile $EpgFile \
			-channelfile $ChannelFile \
			-timerfile $TimerFile

		rc_status -v
		;;

	setup)
		#
		# Start SREpgProcessorWorker in setup mode
		#
		$DaemonStarter \
			-user $SRWorkerUser \
			-home $JavaHome \
			-Dcatalina.home=$SRWorkerHome \
			-Djava.awt.headless=true \
			-Djava.io.tmpdir=$TMP_DIR \
			-outfile $LogDirectory/SRWorker.out \
			-errfile '&1' \
			-cp $CLASSPATH \
			de.schwarzrot.epg.processing.app.SRWorker \
			-host $VdrName \
			-port $VdrProxyPort \
			-epgfile $EpgFile \
			-channelfile $ChannelFile \
			-timerfile $TimerFile \
			-setup

		rc_status -v
		;;

	stop)
		#
		# Stop SRJobProcessorWorker
		#
		PID=`cat /var/run/jsvc.pid`
		kill $PID

		rc_status -v
		;;

	reload|restart)
		$0 stop
		sleep 1
		$0 start
		;;

	status)
		echo -n "Checking for Service "
		if test -e /var/run/jsvc.pid ; then
			echo " seems running"
		else
			echo " not running"
		fi
		;;

	*)
		echo "Usage SREpgService start/stop/setup"
		exit 1
		;;
esac
