aboutsummaryrefslogtreecommitdiff
path: root/databases/dbXML/files/dbxmlctl
diff options
context:
space:
mode:
Diffstat (limited to 'databases/dbXML/files/dbxmlctl')
-rw-r--r--databases/dbXML/files/dbxmlctl180
1 files changed, 180 insertions, 0 deletions
diff --git a/databases/dbXML/files/dbxmlctl b/databases/dbXML/files/dbxmlctl
new file mode 100644
index 000000000000..e45538acd35b
--- /dev/null
+++ b/databases/dbXML/files/dbxmlctl
@@ -0,0 +1,180 @@
+#!/bin/sh
+
+# Set Variables
+NAME=dbXML
+DBXML_HOME=%%DBXML_HOME%%
+LOG=${DBXML_HOME}/logs/${NAME}ctl.log
+JAR_DIR=${DBXML_HOME}/java/lib
+PID_FILE=/var/run/${NAME}.pid
+MYSELF=`basename $0`
+USER_NAME=dbxml
+
+# Check if we're being run as a shell script or as an rc script
+if [ ${MYSELF} = "00dbxml.sh" ]; then
+ AS_RC_SCRIPT=yes
+else
+ AS_RC_SCRIPT=no
+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%%
+ export JAVA_HOME
+fi
+JAVA_CMD=${JAVA_HOME}/bin/java
+
+# Make sure the dbXML directory does exist
+if [ ! -d ${DBXML_HOME} ]; then
+ if [ "${AS_RC_SCRIPT}" = "yes" ]; then
+ echo ""
+ fi
+ echo "${NAME}: ERROR: Unable to find dbXML home directory at ${DBXML_HOME}."
+ exit 1
+fi
+
+# Make sure the Java VM can be found
+if [ ! -x ${JAVA_CMD} ]; then
+ if [ "${AS_RC_SCRIPT}" = "yes" ]; then
+ echo ""
+ fi
+ echo "${NAME}: ERROR: Unable to find Java VM at ${JAVA_HOME}."
+ exit 2
+fi
+
+# Make sure the JAR file Directory exists
+if [ ! -d ${JAR_DIR} ]; then
+ if [ "${AS_RC_SCRIPT}" = "yes" ]; then
+ echo ""
+ fi
+ echo "${NAME}: ERROR: Unable to find JAR Directory at ${JAR_DIR}."
+ exit 3
+fi
+
+server_shutdown() {
+ # Read in instances and kill processes
+ INSTANCES="`cat ${DBXML_HOME}/config/instances.cfg`"
+ for instance in $INSTANCES
+ do
+ /usr/local/bin/dbxmladmin shutdown -c /$instance 1> /dev/null 2> /dev/null
+ done
+
+ # Remove stale pid file
+ rm ${PID_FILE}
+ }
+
+server_start() {
+ # setup dbXML Classpath
+ CLASSPATH=${DBXML_HOME}/classgen:${DBXML_HOME}/config:$CLASSPATH
+ JARS=`ls -1 ${JAR_DIR}/*.jar`
+ for jar in $JARS
+ do
+ CLASSPATH=$jar:$CLASSPATH ;
+ done
+
+ # Read in the extra VM paramters for starting the program
+ VMPROPS=""
+ if [ -f ${DBXML_HOME}/config/vm.cfg ]; then
+ PROPS="`cat ${DBXML_HOME}/config/vm.cfg`"
+ for prop in $PROPS
+ do
+ VMPROPS="$VMPROPS $prop"
+ done
+ fi
+
+ # Setup pid file
+ touch ${PID_FILE}
+ chown ${USER_NAME} ${PID_FILE}
+ chmod 600 ${PID_FILE}
+
+ # Start dbXML
+ su -fm ${USER_NAME} -c "(cd ${DBXML_HOME} && ${JAVA_CMD} -Xms16m -Xmx168m -classpath "$CLASSPATH" -Ddbxml.home="${DBXML_HOME}" org.dbxml.core.server.dbXML & echo \$! > ${PID_FILE}) > ${LOG}"
+ }
+
+ case "$1" in
+ start)
+ # Make sure another instance of dbXML is not running
+ if [ -e ${PID_FILE} ]; then
+ if [ "${AS_RC_SCRIPT}" = "yes" ]; then
+ echo ""
+ fi
+ echo "A dbxml instance is already running with PID" `cat ${PID_FILE}`
+ exit 0
+ fi
+ echo "starting dbXML...."
+ server_start;
+ ;;
+ stop)
+ # Make sure an instance of dbXML is running
+ if [ ! -e ${PID_FILE} ]; then
+ if [ "${AS_RC_SCRIPT}" = "yes" ]; then
+ echo ""
+ fi
+ echo "dbXML is not currently running"
+ exit 0
+ fi
+ echo "stopping dbXML...."
+ server_shutdown;
+ ;;
+ restart)
+ # Make sure an instance of dbXML is running
+ if [ ! -e ${PID_FILE} ]; then
+ server_start;
+ else
+ echo "restarting dbXML...."
+ server_shutdown;
+ server_start;
+ fi
+ ;;
+ *)
+ echo ""
+ echo "Usage: ${MYSELF} { start | restart | stop}"
+ echo ""
+ exit 64
+ ;;
+esacEND-of-dbXML/files/dbxmlctl
+echo x - dbXML/files/patch-ad
+sed 's/^X//' >dbXML/files/patch-ad << 'END-of-dbXML/files/patch-ad'
+--- bin/dbxml.orig Mon Sep 24 21:50:14 2001
++++ bin/dbxml Mon Oct 22 02:08:32 2001
+@@ -1,8 +1,12 @@
+ #!/bin/sh
+
+-if test -z $DBXML_HOME; then
+- echo "\$DBXML_HOME Is Not Set"
++DBXML_HOME=%%PREFIX%%/share/java/dbXML
++
++if test -z $JAVA_HOME; then
++ echo "Warning: JAVA_HOME environment variable is not set."
+ exit
++else
++ PATH=$JAVA_HOME/bin:$PATH
+ fi
+
+ CMD_HOME=`dirname $0`
+END-of-dbXML/files/patch-ad
+echo x - dbXML/pkg-deinstall
+sed 's/^X//' >dbXML/pkg-deinstall << 'END-of-dbXML/pkg-deinstall'
+#!/bin/sh
+# $FreeBSD: /tmp/pcvs/ports/databases/dbXML/files/Attic/dbxmlctl,v 1.1 2002-03-05 00:43:18 znerd Exp $
+#
+
+if [ "$2" != "POST-DEINSTALL" ]; then
+ exit 0
+fi
+
+USER=dbxml
+
+if pw usershow "${USER}" 2>/dev/null 1>&2; then
+ if pw userdel ${USER}; then
+ echo "Delete user/group \"${USER}\"."
+ else
+ echo "Deleting user/group \"${USER}\" failed..."
+ exit 1
+ fi
+fi
+
+exit 0
+END-of-dbXML/pkg-deinstall
+exit
+