]> git.pld-linux.org Git - packages/ApacheJServ.git/blobdiff - ApacheJServ.init
- use $JAVACMD from jpackage-utils
[packages/ApacheJServ.git] / ApacheJServ.init
index 1077d76d6ed6755a8bcc33fba650f1c5e422ba2e..295e8f5c596cf7ca0a958b5d773cbb54cca700f7 100644 (file)
@@ -1,10 +1,10 @@
 #!/bin/sh
 #
-# jserv        jserv short service description
+# jserv        standalone ApacheJServ process daemon
 #
 # chkconfig:   345 80 20
 #
-# description: jserv long service description
+# description: jserv ApacheJServ standalone process
 #
 # $Id$
 
 # 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 jserv
+               msg_network_down ApacheJServ
                exit 1
        fi
 else
        exit 0
 fi
 
+getconfig() {
+       # set JAVACMD from jpackage-utils if available
+       if [ -f /usr/share/java-utils/java-functions ]; then
+               . /usr/share/java-utils/java-functions
+               set_javacmd
+       fi
 
-# See how we were called.
-case "$1" in
-  start)
+       JAVACMD=${JAVACMD:-$(awk -F= '$1 == "wrapper.bin" {print $2}' $JSERV_PROPERTIES)}
+       JAVACMD=${JAVACMD:-/usr/bin/java}
+       CLASSPATH=$(awk -F= -vORS=':' '$1 == "wrapper.classpath" {print $2}' $JSERV_PROPERTIES)
+       ENV=$(awk -F= '$1 == "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 jserv
-               daemon jserv
+               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 $JAVACMD $JSERV_CLASS $JSERV_PROPERTIES
                RETVAL=$?
-               [ $RETVAL -eq 0 ] && touch /var/lock/subsys/jserv
+               if [ $RETVAL -eq 0 ]; then
+                       touch /var/lock/subsys/jserv
+                       ok
+               else
+                       fail
+               fi
        else
-               msg_already_running jserv
+               msg_already_running ApacheJServ
        fi
-       ;;
-  stop)
+}
+
+stop() {
        if [ -f /var/lock/subsys/jserv ]; then
                # Stop daemons.
-               msg_stopping jserv
-               killproc jserv
+               msg_stopping ApacheJServ
+               killproc --pidfile jserv.pid jserv
                rm -f /var/lock/subsys/jserv
        else
-               msg_not_running jserv
+               msg_not_running ApacheJServ
        fi
+}
+
+# See how we were called.
+case "$1" in
+  start)
+       start
        ;;
-  restart)
-       $0 stop
-       $0 start
-       exit $?
-       ;;
-  reload)
-       if [ -f /var/lock/subsys/jserv ]; then
-               # show "Reload %s service" jserv
-               msg_reloading jserv
-               killproc jserv -HUP
-               RETVAL=$?
-       else
-               # show "%s service is not running." jserv
-               msg_not_running jserv >&2
-               RETVAL=7
-       fi
+  stop)
+       stop
        ;;
-  force-reload)
-       # if program allows reloading without stopping
-       $0 reload
-
-       # or if it doesn't
-       $0 restart
-
-       exit $?
+  restart)
+       stop
+       start
        ;;
   status)
-       status jserv
+       status jserv java
        RETVAL=$?
        ;;
   *)
-       msg_usage "$0 {start|stop|restart|reload|force-reload|status}"
+       msg_usage "$0 {start|stop|restart|status}"
        exit 3
 esac
 
 exit $RETVAL
-
-# This must be last line !
-# vi:syntax=sh:tw=78:ts=4:sw=4
This page took 0.08788 seconds and 4 git commands to generate.