#!/bin/sh # # jserv standalone ApacheJServ process daemon # # chkconfig: 345 80 20 # # description: jserv ApacheJServ standalone process # # $Id$ # Source function library . /etc/rc.d/init.d/functions # Get network config . /etc/sysconfig/network JSERV_PROPERTIES=/etc/jserv/jserv.properties JSERV_CLASS=org.apache.jserv.JServ # Get service config - may override defaults [ -f /etc/sysconfig/jserv ] && . /etc/sysconfig/jserv # Check that networking is up. if is_yes "${NETWORKING}"; then if [ ! -f /var/lock/subsys/network ]; then msg_network_down ApacheJServ exit 1 fi else exit 0 fi getconfig() { JRE=$(awk -F= '/^wrapper.bin=/{print $2}' $JSERV_PROPERTIES) || JRE=/usr/bin/java CLASSPATH=$(awk -F= '/^wrapper\.classpath/{print $2}' $JSERV_PROPERTIES | tr '\n' ':') ENV=$(awk -F= '/^wrapper.env=/{printf("%s=%s\n", $2, $3)}' $JSERV_PROPERTIES) } start() { # Check if the service is already running? if [ ! -f /var/lock/subsys/jserv ]; then msg_starting ApacheJServ getconfig || exit 1 /usr/bin/setsid start-stop-daemon --start \ --exec /usr/bin/env \ --pidfile /var/run/jserv.pid \ --make-pidfile \ --chuid jserv \ --background \ -- \ -i $ENV PATH="$PATH" CLASSPATH="$CLASSPATH" LOGFILE=/var/log/jserv/stdout.log /usr/sbin/runjserv $JRE $JSERV_CLASS $JSERV_PROPERTIES RETVAL=$? if [ $RETVAL -eq 0 ]; then touch /var/lock/subsys/jserv ok else fail fi else msg_already_running ApacheJServ fi } stop() { if [ -f /var/lock/subsys/jserv ]; then # Stop daemons. msg_stopping ApacheJServ killproc --pidfile jserv.pid jserv rm -f /var/lock/subsys/jserv else msg_not_running ApacheJServ fi } # See how we were called. case "$1" in start) start ;; stop) stop ;; restart) stop start ;; status) status jserv java RETVAL=$? ;; *) msg_usage "$0 {start|stop|restart|status}" exit 3 esac exit $RETVAL