blob: a28cac7623a2b4eeb2fb8f1ca128c37b497c61e8 (
plain) (
tree)
|
|
#!/bin/sh
# Set some variables
APP_HOME=%%APP_HOME%%
STDOUT_LOG=%%STDOUT_LOG%%
STDERR_LOG=%%STDERR_LOG%%
JAR_FILE=${APP_HOME}/lib/webserver.jar
MYSELF=`basename $0`
# Set the CLASSPATH
unset CLASSPATH
for i in ${APP_HOME}/lib/* ; do
if [ "$CLASSPATH" != "" ]; then
CLASSPATH=${CLASSPATH}:$i
else
CLASSPATH=$i
fi
done
if [ -f ${JAVA_HOME}/lib/tools.jar ] ; then
CLASSPATH=${CLASSPATH}:${JAVA_HOME}/lib/tools.jar
fi
# Check if the JAVA_HOME directory is defined, otherwise set it to the
# fallback default
if [ "${JAVA_HOME}a" = "a" ]; then
JAVA_HOME=%%JAVA_HOME%%
fi
JAVA_CMD=${JAVA_HOME}/bin/java
##############################################################################
# Function that shows an error message
#
# This function is called by the 'checks' function
#
# Parameters:
# 1: The message to be displayed.
error() {
echo -n "%%APP_SHORTNAME%%: ERROR: "
echo $1
}
##############################################################################
# Function that performs all checks necessary for starting or stopping the
# application.
#
# This function is called by the 'start' and 'stop' functions
#
# This function expects no parameters
checks() {
# Make sure the application directory does exist
if [ ! -d ${APP_HOME} ]; then
error "Unable to find %%APP_TITLE%% home directory at ${APP_HOME}."
exit 2
fi
# Make sure the application JAR file exists
if [ ! -r ${JAR_FILE} ]; then
error "Unable to find %%APP_TITLE%% JAR file at ${JAR_FILE}."
exit 3
fi
# Make sure the Java VM can be found
if [ ! -x ${JAVA_CMD} ]; then
error "Unable to find Java VM at ${JAVA_HOME}."
exit 4
fi
}
##############################################################################
# Functions that calls the application with the specified parameter
#
# Parameters:
# 1: The argument to pass to the application (optional)
app() {
(cd ${APP_HOME} && ${JAVA_CMD} -cp ${CLASSPATH} -Dtomcat.home=${APP_HOME} org.apache.tomcat.startup.Tomcat $1 &) >> ${STDOUT_LOG} 2>> ${STDERR_LOG}
}
##############################################################################
# Function that starts the application
#
# This function is called from the main function
#
# This function expects no parameters
start() {
# Perform the checks
checks
# Stop the application
app
}
##############################################################################
# Function that stops the application
#
# This function is called from the main function
#
# This function expects no parameters
stop() {
# Perform the checks
checks
# Stop the application
app -stop
}
##############################################################################
# Main function. This function calls the 'start' and 'stop' functions.
#
# Parameters:
# 1: The argument to this shell script
main() {
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "Usage: ${MYSELF} { start | stop | restart }"
exit 64
;;
esac
}
# Call the main function and exit
main $1
exit 0
|