# Only set supported environment variables if not already set
[ -z "$AQUARIUM_HOME" ] && AQUARIUM_HOME=`cd "$PRGDIR/.." >/dev/null; pwd`
-[ -z "$AQUARIUM_PROP" ] && AQUARIUM_PROP="-Dlog4j.debug=true"
+[ -z "$AQUARIUM_PROP" ] && AQUARIUM_PROP=""
[ -z "$AQUARIUM_OPTS" ] && AQUARIUM_OPTS=""
[ -z "$JAVA_OPTS" ] && JAVA_OPTS="-Xms1024M -Xmx4096M"
-JAVA_OPTS="$JAVA_OPTS -DAQUARIUM_HOME=$AQUARIUM_HOME"
-
export AQUARIUM_HOME
-PID=$AQUARIUM_HOME/bin/aquarium.pid
+PID_FILE=$AQUARIUM_HOME/bin/aquarium.pid
AQUARIUM_LIB=$AQUARIUM_HOME/lib
AQUARIUM_CONF=$AQUARIUM_HOME/conf
# Check the application status
check_status() {
- if [ -f $PID ]
+ if [ -f $PID_FILE ]
then
- aqrunning=`ps -ef|grep java|grep aquarium`
+ aqrunning=`ps -ef|grep java|grep $AQUARIUM_MAIN_CLASS`
if [ -z "$aqrunning" ]
then
return 0
echo "Starting Aquarium"
- # CLASSPATH=$AQUARIUM_CONF:$JBOOT_JAR
CLASSPATH=$JBOOT_JAR
- echo "Using initial CLASSPATH $CLASSPATH"
- echo "Using AQUARIUM_HOME $AQUARIUM_HOME"
- echo "Using MAIN $AQUARIUM_MAIN_CLASS"
- echo "Using AQUARIUM_PROP $AQUARIUM_PROP"
- echo "Using JAVA_OPTS $JAVA_OPTS"
- echo "nohup java $JAVA_OPTS -cp $CLASSPATH $AQUARIUM_PROP $JBOOT_MAIN_CLASS -debug -lib $AQUARIUM_LIB $AQUARIUM_MAIN_CLASS > $AQUARIUM_LOGFILE"
+ echo "Using CLASSPATH=$CLASSPATH"
+ echo "Using AQUARIUM_HOME=$AQUARIUM_HOME"
+ echo "Using AQUARIUM_MAIN_CLASS=$AQUARIUM_MAIN_CLASS"
+ echo "Using AQUARIUM_PROP=$AQUARIUM_PROP"
+ echo "Using JAVA_OPTS=$JAVA_OPTS"
+ echo "nohup java $JAVA_OPTS -cp $CLASSPATH $AQUARIUM_PROP $JBOOT_MAIN_CLASS -lib $AQUARIUM_LIB $AQUARIUM_MAIN_CLASS > $AQUARIUM_LOGFILE"
- nohup java $JAVA_OPTS -cp $CLASSPATH $AQUARIUM_PROP $JBOOT_MAIN_CLASS -debug -lib $AQUARIUM_LIB $AQUARIUM_MAIN_CLASS > $AQUARIUM_LOGFILE 2>&1 &
- echo $! > $PID
- echo "OK [pid = "`cat $PID`"]"
+ nohup java $JAVA_OPTS -cp $CLASSPATH $AQUARIUM_PROP $JBOOT_MAIN_CLASS -lib $AQUARIUM_LIB $AQUARIUM_MAIN_CLASS > $AQUARIUM_LOGFILE 2>&1 &
+ echo $! > $PID_FILE
+ echo "PID="`cat $PID_FILE`
}
# Stops the application
# Kills the application process
echo -n "Stopping Aquarium: "
- kill `cat $PID`
- rm $PID
+ kill `cat $PID_FILE`
+ rm $PID_FILE
echo "OK"
}
check_status
if [ $? -ne 0 ]
then
- echo "Aquarium is running (pid=$pid)"
+ echo "Aquarium is running (pid="`cat $PID_FILE`")"
else
echo "Aquarium is stopped"
fi
}
+ps_aquarium() {
+ ps -ef | grep java | grep gr.grnet.aquarium.Main
+}
+
+forcekill() {
+ local PIDS=`ps_aquarium | awk '{print $2}'`
+ for pid in $PIDS; do
+ echo Killing $pid
+ kill -9 $pid
+ done
+}
+
# Main logic, a simple case to call functions
case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- status)
- status
- ;;
- restart)
- stop
- start
- ;;
- *)
- echo "Usage: $0 {start|stop|restart|status}"
- exit 1
-esac
-
+ start)
+ start
+ ;;
+ stop)
+ stop
+ ;;
+ status)
+ status
+ ;;
+ restart)
+ stop
+ start
+ ;;
+ ps)
+ ps_aquarium
+ ;;
+ forcekill)
+ forcekill
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|restart|status|ps|forcekill}"
+ exit 1
+ esac
exit 0
# vim: set sta sts=4 shiftwidth=4 sw=4 et ai :