blob: a238e939430146cca3e61cadd0f14612b6b418fe (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
#!/bin/sh
# Set some more variables
NAME=%%PORTNAME%%
VERSION=%%PORTVERSION%%
ORION_HOME=%%ORION_HOME%%
LOG=${ORION_HOME}/log/${NAME}.log
PID_FILE=/var/run/${NAME}.pid
JAR_FILE=${ORION_HOME}/${NAME}.jar
MYSELF=`basename $0`
# Check if we're being run as a shell script or as an rc script
if [ ${MYSELF} = "%%RC_SCRIPT_NAME%%" ]; 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%%
fi
JAVA_CMD=${JAVA_HOME}/bin/java
case "$1" in
start)
# Make sure Orion is not started previously
if [ -e ${PID_FILE} ]; then
if [ "${AS_RC_SCRIPT}" = "yes" ]; then
echo ""
fi
echo "${NAME}: ERROR: Found Orion PID file at ${PID_FILE}. Orion is probably already running."
exit 1
fi
# Make sure the Orion directory does exist
if [ ! -d ${ORION_HOME} ]; then
if [ "${AS_RC_SCRIPT}" = "yes" ]; then
echo ""
fi
echo "${NAME}: ERROR: Unable to find Orion home directory at ${ORION_HOME}."
exit 2
fi
# Make sure the Orion JAR file exists
if [ ! -r ${JAR_FILE} ]; then
if [ "${AS_RC_SCRIPT}" = "yes" ]; then
echo ""
fi
echo "${NAME}: ERROR: Unable to find Orion JAR file at ${JAR_FILE}."
exit 3
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 4
fi
# Create the process ID file
rm -f ${PID_FILE}
touch ${PID_FILE}
chown root:wheel ${PID_FILE}
chmod 600 ${PID_FILE}
if [ "${AS_RC_SCRIPT}" = "yes" ]; then
echo -n " ${NAME}"
fi
( cd ${ORION_HOME} && ${JAVA_CMD} -jar orion.jar & echo $! > ${PID_FILE} ) > ${LOG} 2>&1
;;
stop)
if [ ! -e ${PID_FILE} ]; then
# If run as an rc script, die silently...
if [ "${AS_RC_SCRIPT}" = "yes" ]; then
exit 0
# ...otherwise complain
else
echo "${NAME}: ERROR: Unable to find Orion PID file at ${PID_FILE}. Orion is probably not running."
exit 16
fi
else
if [ "${AS_RC_SCRIPT}" = "yes" ]; then
echo -n " ${NAME}"
fi
/bin/kill `cat ${PID_FILE}`
rm -f ${PID_FILE}
fi
;;
*)
echo ""
echo "Usage: ${MYSELF} { start | stop }"
echo ""
exit 64
;;
esac
|