Guest User

Untitled

a guest
Nov 5th, 2014
223
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.71 KB | None | 0 0
  1. #!/bin/sh
  2. #
  3. # init script for XmlRpcResourceManager
  4. #
  5. # chkconfig: 345 88 22
  6. # description: CAS Resource Manager
  7. #
  8. # Licensed to the Apache Software Foundation (ASF) under one or more
  9. # contributor license agreements. See the NOTICE.txt file distributed with
  10. # this work for additional information regarding copyright ownership. The ASF
  11. # licenses this file to you under the Apache License, Version 2.0 (the
  12. # "License"); you may not use this file except in compliance with the License.
  13. # You may obtain a copy of the License at
  14. #
  15. # http://www.apache.org/licenses/LICENSE-2.0
  16. #
  17. # Unless required by applicable law or agreed to in writing, software
  18. # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  19. # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
  20. # License for the specific language governing permissions and limitations
  21. # under the License.
  22. #
  23. # $Id$
  24.  
  25. # OS specific support. $var _must_ be set to either true or false.
  26. cygwin=false
  27. os400=false
  28. darwin=false
  29. case "`uname`" in
  30. CYGWIN*) cygwin=true;;
  31. OS400*) os400=true;;
  32. Darwin*) darwin=true;;
  33. esac
  34.  
  35. # resolve links - $0 may be a softlink
  36. PRG="$0"
  37.  
  38. while [ -h "$PRG" ]; do
  39. ls=`ls -ld "$PRG"`
  40. link=`expr "$ls" : '.*-> \(.*\)$'`
  41. if expr "$link" : '/.*' > /dev/null; then
  42. PRG="$link"
  43. else
  44. PRG=`dirname "$PRG"`/"$link"
  45. fi
  46. done
  47.  
  48. # Get standard environment variables
  49. PRGDIR=`dirname "$PRG"`
  50.  
  51. # Only set OODT_HOME if not already set
  52. [ -z "$OODT_HOME" ] && OODT_HOME=`cd "$PRGDIR/../.." ; pwd`
  53.  
  54. # Get OODT environment set up
  55. if [ -r "$OODT_HOME"/bin/env.sh ]; then
  56. . "$OODT_HOME"/bin/env.sh
  57. fi
  58.  
  59. # Only set RESMGR_HOME if not already set
  60. if [ -z "$RESMGR_HOME" ]; then
  61. RESMGR_HOME="$OODT_HOME"/resmgr
  62. export RESMGR_HOME
  63. fi
  64.  
  65. if [ -z "$RESMGR_PID" ]; then
  66. RESMGR_PID="$RESMGR_HOME"/run/cas.resmgr.pid
  67. fi
  68.  
  69. # For Cygwin, ensure paths are in UNIX format before anything is touched
  70. if $cygwin; then
  71. [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
  72. [ -n "$JRE_HOME" ] && JRE_HOME=`cygpath --unix "$JRE_HOME"`
  73. [ -n "$OODT_HOME" ] && OODT_HOME=`cygpath --unix "$OODT_HOME"`
  74. [ -n "$RESMGR_HOME" ] && RESMGR_HOME=`cygpath --unix "$RESMGR_HOME"`
  75. [ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
  76. fi
  77.  
  78. if [ "$1" = "start" ]; then
  79. if [ ! -z "$RESMGR_PID" ]; then
  80. if [ -f "$RESMGR_PID" ]; then
  81. echo "PID file ($RESMGR_PID) found. Is Resource Manager still running? Start aborted."
  82. exit 1
  83. fi
  84. fi
  85.  
  86. # In case this script was run from somewhere else cd to this directory
  87. cd "$RESMGR_HOME"/bin
  88.  
  89. "$_RUNJAVA" $JAVA_OPTS $OODT_OPTS \
  90. -Djava.ext.dirs="$RESMGR_HOME"/lib \
  91. -Djava.util.logging.config.file="$RESMGR_HOME"/etc/logging.properties \
  92. -Dorg.apache.oodt.cas.resource.properties="$RESMGR_HOME"/etc/resource.properties \
  93. -Djava.io.tmpdir="$OODT_TMPDIR" \
  94. org.apache.oodt.cas.resource.system.XmlRpcResourceManager \
  95. --portNum "$RESMGR_PORT" 2>&1 &
  96.  
  97. if [ ! -z "$RESMGR_PID" ]; then
  98. echo $! > $RESMGR_PID
  99. fi
  100.  
  101. if [ $have_tty -eq 1 ]; then
  102. echo "Resource Manager started PID file ($RESMGR_PID)."
  103. fi
  104.  
  105. elif [ "$1" = "stop" ]; then
  106.  
  107. shift
  108.  
  109. SLEEP=5
  110. if [ ! -z "$1" ]; then
  111. echo $1 | grep "[^0-9]" > /dev/null 2>&1
  112. if [ $? -eq 1 ]; then
  113. SLEEP=$1
  114. shift
  115. fi
  116. fi
  117.  
  118. FORCE=0
  119. if [ "$1" = "-force" ]; then
  120. shift
  121. FORCE=1
  122. fi
  123.  
  124. if [ ! -z "$RESMGR_PID" ]; then
  125. if [ -f "$RESMGR_PID" ]; then
  126. kill `cat $RESMGR_PID` >/dev/null 2>&1
  127. if [ $? -eq 1 ]; then
  128. echo "PID file ($RESMGR_PID) found but no matching process was found. Stop aborted."
  129. exit 1
  130. fi
  131. else
  132. echo "\$RESMGR_PID was set ($RESMGR_PID) but the specified file does not exist. Is Resource Manager running? Stop aborted."
  133. exit 1
  134. fi
  135. fi
  136.  
  137. if [ ! -z "$RESMGR_PID" ]; then
  138. if [ -f "$RESMGR_PID" ]; then
  139. while [ $SLEEP -ge 0 ]; do
  140. kill -0 `cat $RESMGR_PID` >/dev/null 2>&1
  141. if [ $? -eq 1 ]; then
  142. rm $RESMGR_PID
  143. break
  144. fi
  145. if [ $SLEEP -gt 0 ]; then
  146. sleep 1
  147. fi
  148. if [ $SLEEP -eq 0 ]; then
  149. if [ $FORCE -eq 0 ]; then
  150. echo "Resource Manager did not stop in time. PID file was not removed."
  151. fi
  152. fi
  153. SLEEP=`expr $SLEEP - 1 `
  154. done
  155. fi
  156. fi
  157.  
  158. if [ $FORCE -eq 1 ]; then
  159. if [ -z "$RESMGR_PID" ]; then
  160. echo "Kill failed: \$RESMGR_PID not set"
  161. else
  162. if [ -f "$RESMGR_PID" ]; then
  163. echo "Killing: `cat $RESMGR_PID`"
  164. kill -9 `cat $RESMGR_PID`
  165. rm $RESMGR_PID
  166. fi
  167. fi
  168. fi
  169.  
  170. else
  171. echo "Usage: resmgr {start|stop}"
  172. exit 1
  173. fi
Advertisement
Add Comment
Please, Sign In to add comment