lib/rubyfox/server/data/sfs2x-service in rubyfox-server-2.16.3.2 vs lib/rubyfox/server/data/sfs2x-service in rubyfox-server-2.17.3.0

- old
+ new

@@ -1,12 +1,12 @@ #!/bin/sh # chkconfig: 2345 75 15 # description: sfs2x-service ### BEGIN INIT INFO # Provides: sfs2x-service -# Required-Start: $all -# Required-Stop: $all +# Required-Start: $local_fs $network $remote_fs $syslog $time +# Required-Stop: $local_fs $network $remote_fs $syslog $time # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: sfs2x-service ### END INIT INFO @@ -17,24 +17,29 @@ INSTALL4J_JAVA_PREFIX="" GREP_OPTIONS="" +fill_version_numbers() { + if [ "$ver_major" = "" ]; then + ver_major=0 + fi + if [ "$ver_minor" = "" ]; then + ver_minor=0 + fi + if [ "$ver_micro" = "" ]; then + ver_micro=0 + fi + if [ "$ver_patch" = "" ]; then + ver_patch=0 + fi +} + read_db_entry() { if [ -n "$INSTALL4J_NO_DB" ]; then return 1 fi - db_home=$HOME - db_file_suffix= - if [ ! -w "$db_home" ]; then - db_home=/tmp - db_file_suffix=_$USER - fi - db_file=$db_home/.install4j$db_file_suffix - if [ -d "$db_file" ] || ([ -f "$db_file" ] && [ ! -r "$db_file" ]) || ([ -f "$db_file" ] && [ ! -w "$db_file" ]); then - db_file=$db_home/.install4j_jre$db_file_suffix - fi if [ ! -f "$db_file" ]; then return 1 fi if [ ! -x "$java_exc" ]; then return 1 @@ -46,63 +51,99 @@ if [ "$r_dir" = "$test_dir" ]; then ver_major=$r_ver_major ver_minor=$r_ver_minor ver_micro=$r_ver_micro ver_patch=$r_ver_patch + fill_version_numbers fi elif [ "$r_type" = "JRE_INFO" ]; then if [ "$r_dir" = "$test_dir" ]; then is_openjdk=$r_ver_major - found=0 - break + is_64bit=$r_ver_micro + if [ "W$r_ver_minor" = "W$modification_date" ] && [ "W$is_64bit" != "W" ]; then + found=0 + break + fi fi fi + r_ver_micro="" done exec 7<&- return $found } create_db_entry() { tested_jvm=true - echo testing JVM in $test_dir ... version_output=`"$bin_dir/java" $1 -version 2>&1` is_gcj=`expr "$version_output" : '.*gcj'` - is_openjdk=`expr "$version_output" : '.*OpenJDK'` + is_64bit=`expr "$version_output" : '.*64-Bit\|.*amd64'` if [ "$is_gcj" = "0" ]; then java_version=`expr "$version_output" : '.*"\(.*\)".*'` - ver_major=`expr "$java_version" : '\([0-9][0-9]*\)\..*'` - ver_minor=`expr "$java_version" : '[0-9][0-9]*\.\([0-9][0-9]*\)\..*'` + ver_major=`expr "$java_version" : '\([0-9][0-9]*\).*'` + ver_minor=`expr "$java_version" : '[0-9][0-9]*\.\([0-9][0-9]*\).*'` ver_micro=`expr "$java_version" : '[0-9][0-9]*\.[0-9][0-9]*\.\([0-9][0-9]*\).*'` ver_patch=`expr "$java_version" : '[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*[\._]\([0-9][0-9]*\).*'` fi - if [ "$ver_patch" = "" ]; then - ver_patch=0 - fi + fill_version_numbers if [ -n "$INSTALL4J_NO_DB" ]; then return fi db_new_file=${db_file}_new if [ -f "$db_file" ]; then - awk '$1 != "'"$test_dir"'" {print $0}' $db_file > $db_new_file - rm $db_file - mv $db_new_file $db_file + awk '$2 != "'"$test_dir"'" {print $0}' $db_file > $db_new_file + rm "$db_file" + mv "$db_new_file" "$db_file" fi dir_escaped=`echo "$test_dir" | sed -e 's/ /\\\\ /g'` echo "JRE_VERSION $dir_escaped $ver_major $ver_minor $ver_micro $ver_patch" >> $db_file - echo "JRE_INFO $dir_escaped $is_openjdk" >> $db_file + echo "JRE_INFO $dir_escaped $is_openjdk $modification_date $is_64bit" >> $db_file + chmod g+w $db_file } +check_date_output() { + if [ -n "$date_output" -a $date_output -eq $date_output 2> /dev/null ]; then + modification_date=$date_output + fi +} + test_jvm() { tested_jvm=na test_dir=$1 bin_dir=$test_dir/bin java_exc=$bin_dir/java if [ -z "$test_dir" ] || [ ! -d "$bin_dir" ] || [ ! -f "$java_exc" ] || [ ! -x "$java_exc" ]; then return fi + modification_date=0 + date_output=`date -r "$java_exc" "+%s" 2>/dev/null` + if [ $? -eq 0 ]; then + check_date_output + fi + if [ $modification_date -eq 0 ]; then + stat_path=`command -v stat 2> /dev/null` + if [ "$?" -ne "0" ] || [ "W$stat_path" = "W" ]; then + stat_path=`which stat 2> /dev/null` + if [ "$?" -ne "0" ]; then + stat_path="" + fi + fi + if [ -f "$stat_path" ]; then + date_output=`stat -f "%m" "$java_exc" 2>/dev/null` + if [ $? -eq 0 ]; then + check_date_output + fi + if [ $modification_date -eq 0 ]; then + date_output=`stat -c "%Y" "$java_exc" 2>/dev/null` + if [ $? -eq 0 ]; then + check_date_output + fi + fi + fi + fi + tested_jvm=false read_db_entry || create_db_entry $2 if [ "$ver_major" = "" ]; then return; @@ -121,49 +162,15 @@ app_java_home=$test_dir } add_class_path() { if [ -n "$1" ] && [ `expr "$1" : '.*\*'` -eq "0" ]; then - local_classpath="$local_classpath${local_classpath:+:}$1" + local_classpath="$local_classpath${local_classpath:+:}${1}${2}" fi } -compiz_workaround() { - if [ "$is_openjdk" != "0" ]; then - return; - fi - if [ "$ver_major" = "" ]; then - return; - fi - if [ "$ver_major" -gt "1" ]; then - return; - elif [ "$ver_major" -eq "1" ]; then - if [ "$ver_minor" -gt "6" ]; then - return; - elif [ "$ver_minor" -eq "6" ]; then - if [ "$ver_micro" -gt "0" ]; then - return; - elif [ "$ver_micro" -eq "0" ]; then - if [ "$ver_patch" -gt "09" ]; then - return; - fi - fi - fi - fi - - osname=`uname -s` - if [ "$osname" = "Linux" ]; then - compiz=`ps -ef | grep -v grep | grep compiz` - if [ -n "$compiz" ]; then - export AWT_TOOLKIT=MToolkit - fi - fi - -} - - read_vmoptions() { vmoptions_file=`eval echo "$1" 2>/dev/null` if [ ! -r "$vmoptions_file" ]; then vmoptions_file="$prg_dir/$vmoptions_file" fi @@ -174,60 +181,85 @@ if [ "$is_comment" = "0" ]; then vmo_classpath=`expr "W$cur_option" : 'W *-classpath \(.*\)'` vmo_classpath_a=`expr "W$cur_option" : 'W *-classpath/a \(.*\)'` vmo_classpath_p=`expr "W$cur_option" : 'W *-classpath/p \(.*\)'` vmo_include=`expr "W$cur_option" : 'W *-include-options \(.*\)'` + if [ ! "W$vmo_include" = "W" ]; then + if [ "W$vmo_include_1" = "W" ]; then + vmo_include_1="$vmo_include" + elif [ "W$vmo_include_2" = "W" ]; then + vmo_include_2="$vmo_include" + elif [ "W$vmo_include_3" = "W" ]; then + vmo_include_3="$vmo_include" + fi + fi if [ ! "$vmo_classpath" = "" ]; then local_classpath="$i4j_classpath:$vmo_classpath" elif [ ! "$vmo_classpath_a" = "" ]; then local_classpath="${local_classpath}:${vmo_classpath_a}" elif [ ! "$vmo_classpath_p" = "" ]; then local_classpath="${vmo_classpath_p}:${local_classpath}" - elif [ "$vmo_include" = "" ]; then - if [ "W$vmov_1" = "W" ]; then - vmov_1="$cur_option" - elif [ "W$vmov_2" = "W" ]; then - vmov_2="$cur_option" - elif [ "W$vmov_3" = "W" ]; then - vmov_3="$cur_option" - elif [ "W$vmov_4" = "W" ]; then - vmov_4="$cur_option" - elif [ "W$vmov_5" = "W" ]; then - vmov_5="$cur_option" - else + elif [ "W$vmo_include" = "W" ]; then + needs_quotes=`expr "W$cur_option" : 'W.* .*'` + if [ "$needs_quotes" = "0" ]; then vmoptions_val="$vmoptions_val $cur_option" + else + if [ "W$vmov_1" = "W" ]; then + vmov_1="$cur_option" + elif [ "W$vmov_2" = "W" ]; then + vmov_2="$cur_option" + elif [ "W$vmov_3" = "W" ]; then + vmov_3="$cur_option" + elif [ "W$vmov_4" = "W" ]; then + vmov_4="$cur_option" + elif [ "W$vmov_5" = "W" ]; then + vmov_5="$cur_option" + fi fi fi fi done exec 8<&- - if [ ! "$vmo_include" = "" ]; then + if [ ! "W$vmo_include_1" = "W" ]; then + vmo_include="$vmo_include_1" + unset vmo_include_1 read_vmoptions "$vmo_include" fi + if [ ! "W$vmo_include_2" = "W" ]; then + vmo_include="$vmo_include_2" + unset vmo_include_2 + read_vmoptions "$vmo_include" + fi + if [ ! "W$vmo_include_3" = "W" ]; then + vmo_include="$vmo_include_3" + unset vmo_include_3 + read_vmoptions "$vmo_include" + fi fi } unpack_file() { if [ -f "$1" ]; then - jar_file=`echo "$1" | awk '{ print substr($0,1,length-5) }'` - bin/unpack200 -r "$1" "$jar_file" + jar_file=`echo "$1" | awk '{ print substr($0,1,length($0)-5) }'` + bin/unpack200 -r "$1" "$jar_file" > /dev/null 2>&1 if [ $? -ne 0 ]; then echo "Error unpacking jar files. The architecture or bitness (32/64)" echo "of the bundled JVM might not match your machine." echo "You might also need administrative privileges for this operation." -exit 1 + exit 1 + else + chmod a+r "$jar_file" fi fi } run_unpack200() { - if [ -f "$1/lib/rt.jar.pack" ]; then + if [ -d "$1/lib" ]; then old_pwd200=`pwd` cd "$1" - echo "Preparing JRE ..." for pack_file in lib/*.jar.pack do unpack_file $pack_file done for pack_file in lib/ext/*.jar.pack @@ -236,208 +268,311 @@ done cd "$old_pwd200" fi } -old_pwd=`pwd` - -progname=`basename "$0"` -linkdir=`dirname "$0"` - -cd "$linkdir" -prg="$progname" - -while [ -h "$prg" ] ; do - ls=`ls -ld "$prg"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '.*/.*' > /dev/null; then - prg="$link" - else - prg="`dirname $prg`/$link" - fi -done - -prg_dir=`dirname "$prg"` -progname=`basename "$prg"` -cd "$prg_dir" -prg_dir=`pwd` -app_home=../ -cd "$app_home" -app_home=`pwd` -bundled_jre_home="$app_home/jre" - -if [ "__i4j_lang_restart" = "$1" ]; then - cd "$old_pwd" -else -cd "$prg_dir"/. - -fi -if [ ! "__i4j_lang_restart" = "$1" ]; then -run_unpack200 "$bundled_jre_home" -run_unpack200 "$bundled_jre_home/jre" -fi +search_jre() { if [ -z "$app_java_home" ]; then - test_jvm $INSTALL4J_JAVA_HOME_OVERRIDE + test_jvm "$INSTALL4J_JAVA_HOME_OVERRIDE" fi if [ -z "$app_java_home" ]; then if [ -f "$app_home/.install4j/pref_jre.cfg" ]; then read file_jvm_home < "$app_home/.install4j/pref_jre.cfg" test_jvm "$file_jvm_home" if [ -z "$app_java_home" ] && [ $tested_jvm = "false" ]; then - rm $db_file +if [ -f "$db_file" ]; then + rm "$db_file" 2> /dev/null +fi test_jvm "$file_jvm_home" fi fi fi if [ -z "$app_java_home" ]; then test_jvm "$app_home/jre" if [ -z "$app_java_home" ] && [ $tested_jvm = "false" ]; then - rm $db_file +if [ -f "$db_file" ]; then + rm "$db_file" 2> /dev/null +fi test_jvm "$app_home/jre" fi fi if [ -z "$app_java_home" ]; then - path_java=`which java 2> /dev/null` - path_java_home=`expr "$path_java" : '\(.*\)/bin/java$'` - test_jvm $path_java_home + if [ "W$INSTALL4J_NO_PATH" != "Wtrue" ]; then + prg_jvm=`command -v java 2> /dev/null` + if [ "$?" -ne "0" ] || [ "W$prg_jvm" = "W" ]; then + prg_jvm=`which java 2> /dev/null` + if [ "$?" -ne "0" ]; then + prg_jvm="" + fi + fi + if [ ! -z "$prg_jvm" ] && [ -f "$prg_jvm" ]; then + old_pwd_jvm=`pwd` + path_java_bin=`dirname "$prg_jvm"` + cd "$path_java_bin" + prg_jvm=java + + while [ -h "$prg_jvm" ] ; do + ls=`ls -ld "$prg_jvm"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '.*/.*' > /dev/null; then + prg_jvm="$link" + else + prg_jvm="`dirname $prg_jvm`/$link" + fi + done + path_java_bin=`dirname "$prg_jvm"` + cd "$path_java_bin" + cd .. + path_java_home=`pwd` + cd "$old_pwd_jvm" + test_jvm "$path_java_home" + fi + fi fi if [ -z "$app_java_home" ]; then - common_jvm_locations="/opt/i4j_jres/* /usr/local/i4j_jres/* $HOME/.i4j_jres/* /usr/bin/java* /usr/bin/jdk* /usr/bin/jre* /usr/bin/j2*re* /usr/bin/j2sdk* /usr/java* /usr/java*/jre /usr/jdk* /usr/jre* /usr/j2*re* /usr/j2sdk* /usr/java/j2*re* /usr/java/j2sdk* /opt/java* /usr/java/jdk* /usr/java/jre* /usr/lib/java/jre /usr/local/java* /usr/local/jdk* /usr/local/jre* /usr/local/j2*re* /usr/local/j2sdk* /usr/jdk/java* /usr/jdk/jdk* /usr/jdk/jre* /usr/jdk/j2*re* /usr/jdk/j2sdk* /usr/lib/jvm/* /usr/lib/java* /usr/lib/jdk* /usr/lib/jre* /usr/lib/j2*re* /usr/lib/j2sdk* /System/Library/Frameworks/JavaVM.framework/Versions/1.?/Home - /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home /Library/Java/JavaVirtualMachines/*.jdk/Contents/Home/jre" + common_jvm_locations="/opt/i4j_jres/* /usr/local/i4j_jres/* $HOME/.i4j_jres/* /usr/bin/java* /usr/bin/jdk* /usr/bin/jre* /usr/bin/j2*re* /usr/bin/j2sdk* /usr/java* /usr/java*/jre /usr/jdk* /usr/jre* /usr/j2*re* /usr/j2sdk* /usr/java/j2*re* /usr/java/j2sdk* /opt/java* /usr/java/jdk* /usr/java/jre* /usr/lib/java/jre /usr/local/java* /usr/local/jdk* /usr/local/jre* /usr/local/j2*re* /usr/local/j2sdk* /usr/jdk/java* /usr/jdk/jdk* /usr/jdk/jre* /usr/jdk/j2*re* /usr/jdk/j2sdk* /usr/lib/jvm/* /usr/lib/java* /usr/lib/jdk* /usr/lib/jre* /usr/lib/j2*re* /usr/lib/j2sdk* /System/Library/Frameworks/JavaVM.framework/Versions/1.?/Home /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home /Library/Java/JavaVirtualMachines/*.jdk/Contents/Home/jre /Library/Java/JavaVirtualMachines/*.jre/Contents/Home /Library/Java/JavaVirtualMachines/*.jdk/Contents/Home" for current_location in $common_jvm_locations do if [ -z "$app_java_home" ]; then - test_jvm $current_location + test_jvm "$current_location" fi done fi if [ -z "$app_java_home" ]; then - test_jvm $JAVA_HOME + test_jvm "$JAVA_HOME" fi if [ -z "$app_java_home" ]; then - test_jvm $JDK_HOME + test_jvm "$JDK_HOME" fi if [ -z "$app_java_home" ]; then - test_jvm $INSTALL4J_JAVA_HOME + test_jvm "$INSTALL4J_JAVA_HOME" fi if [ -z "$app_java_home" ]; then if [ -f "$app_home/.install4j/inst_jre.cfg" ]; then read file_jvm_home < "$app_home/.install4j/inst_jre.cfg" test_jvm "$file_jvm_home" if [ -z "$app_java_home" ] && [ $tested_jvm = "false" ]; then - rm $db_file +if [ -f "$db_file" ]; then + rm "$db_file" 2> /dev/null +fi test_jvm "$file_jvm_home" fi fi fi +} + +old_pwd=`pwd` + +progname=`basename "$0"` +linkdir=`dirname "$0"` + +cd "$linkdir" +prg="$progname" + +while [ -h "$prg" ] ; do + ls=`ls -ld "$prg"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '.*/.*' > /dev/null; then + prg="$link" + else + prg="`dirname $prg`/$link" + fi +done + +prg_dir=`dirname "$prg"` +progname=`basename "$prg"` +cd "$prg_dir" +prg_dir=`pwd` +app_home=../ +cd "$app_home" +app_home=`pwd` +bundled_jre_home="$app_home/jre" + +if [ "__i4j_lang_restart" = "$1" ]; then + cd "$old_pwd" +else +cd "$prg_dir"/. + +fi +if [ "__i4j_extract_and_exit" = "$1" ]; then + cd "$old_pwd" + exit 0 +fi +db_home=$HOME +db_file_suffix= +if [ ! -w "$db_home" ]; then + db_home=/tmp + db_file_suffix=_$USER +fi +db_file=$db_home/.install4j$db_file_suffix +if [ -d "$db_file" ] || ([ -f "$db_file" ] && [ ! -r "$db_file" ]) || ([ -f "$db_file" ] && [ ! -w "$db_file" ]); then + db_file=$db_home/.install4j_jre$db_file_suffix +fi +if [ ! "__i4j_lang_restart" = "$1" ]; then +run_unpack200 "$bundled_jre_home" +run_unpack200 "$bundled_jre_home/jre" +fi +search_jre if [ -z "$app_java_home" ]; then - echo No suitable Java Virtual Machine could be found on your system. +if [ -f "$db_file" ]; then + rm "$db_file" 2> /dev/null +fi + search_jre +fi +if [ -z "$app_java_home" ]; then + echo "No suitable Java Virtual Machine could be found on your system." echo The version of the JVM must be at least 1.8. echo Please define INSTALL4J_JAVA_HOME to point to a suitable JVM. - echo You can also try to delete the JVM cache file $db_file -exit 83 + exit 83 fi -compiz_workaround -i4j_classpath="$app_home/.install4j/i4jruntime.jar" local_classpath="" +i4j_classpath="$app_home/.install4j/i4jruntime.jar:$app_home/.install4j/launcherb85e9ba4.jar" add_class_path "$i4j_classpath" add_class_path "$app_home/SFS2X" -for i in `ls "$app_home/SFS2X/lib" 2> /dev/null | egrep "\.(jar|zip)$"` -do - add_class_path "$app_home/SFS2X/lib/$i" -done -for i in `ls "$app_home/SFS2X/extensions/__lib__" 2> /dev/null | egrep "\.(jar|zip)$"` -do - add_class_path "$app_home/SFS2X/extensions/__lib__/$i" -done -for i in `ls "$app_home/SFS2X/lib/apache-tomcat/bin" 2> /dev/null | egrep "\.(jar|zip)$"` -do - add_class_path "$app_home/SFS2X/lib/apache-tomcat/bin/$i" -done + add_class_path "$app_home/SFS2X/lib" "/*" + add_class_path "$app_home/SFS2X/extensions/__lib__" "/*" + add_class_path "$app_home/SFS2X/lib/apache-tomcat/bin" "/*" vmoptions_val="" read_vmoptions "$prg_dir/$progname.vmoptions" INSTALL4J_ADD_VM_PARAMS="$INSTALL4J_ADD_VM_PARAMS $vmoptions_val" -INSTALL4J_ADD_VM_PARAMS="$INSTALL4J_ADD_VM_PARAMS -Di4j.vpt=true" for param in $@; do if [ `echo "W$param" | cut -c -3` = "W-J" ]; then INSTALL4J_ADD_VM_PARAMS="$INSTALL4J_ADD_VM_PARAMS `echo "$param" | cut -c 3-`" fi done + +has_space_options=false if [ "W$vmov_1" = "W" ]; then - vmov_1="-Di4j.vmov=true" + vmov_1="-Di4jv=0" +else + has_space_options=true fi if [ "W$vmov_2" = "W" ]; then - vmov_2="-Di4j.vmov=true" + vmov_2="-Di4jv=0" +else + has_space_options=true fi if [ "W$vmov_3" = "W" ]; then - vmov_3="-Di4j.vmov=true" + vmov_3="-Di4jv=0" +else + has_space_options=true fi if [ "W$vmov_4" = "W" ]; then - vmov_4="-Di4j.vmov=true" + vmov_4="-Di4jv=0" +else + has_space_options=true fi if [ "W$vmov_5" = "W" ]; then - vmov_5="-Di4j.vmov=true" + vmov_5="-Di4jv=0" +else + has_space_options=true fi +return_code=0 case "$1" in start) echo "Starting sfs2x-service" -$INSTALL4J_JAVA_PREFIX nohup "$app_java_home/bin/java" -server -Dinstall4j.jvmDir="$app_java_home" -Dexe4j.moduleName="$prg_dir/$progname" "-Dfile.encoding=UTF-8" "-Dinstall4j.launcherId=23" "-Dinstall4j.swt=false" "$vmov_1" "$vmov_2" "$vmov_3" "$vmov_4" "$vmov_5" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" com.install4j.runtime.launcher.Launcher start com.smartfoxserver.v2.Main false false "" "" true true false "sfs-splash.png" true true 0 0 "" 20 20 "Arial" "0,0,0" 8 500 "version 2.14.0" 20 40 "Arial" "0,0,0" 8 500 -1 > /dev/null 2>&1 & +if [ "$has_space_options" = "true" ]; then +$INSTALL4J_JAVA_PREFIX nohup "$app_java_home/bin/java" -server "-Dfile.encoding=UTF-8" "$vmov_1" "$vmov_2" "$vmov_3" "$vmov_4" "$vmov_5" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main start > /dev/null 2>&1 & +return_code=$? +else +$INSTALL4J_JAVA_PREFIX nohup "$app_java_home/bin/java" -server "-Dfile.encoding=UTF-8" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main start > /dev/null 2>&1 & +return_code=$? +fi ;; start-launchd) echo "Starting sfs2x-service" -$INSTALL4J_JAVA_PREFIX "$app_java_home/bin/java" -server -Dinstall4j.jvmDir="$app_java_home" -Dexe4j.moduleName="$prg_dir/$progname" "-Dfile.encoding=UTF-8" "-Dinstall4j.launcherId=23" "-Dinstall4j.swt=false" "$vmov_1" "$vmov_2" "$vmov_3" "$vmov_4" "$vmov_5" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" com.install4j.runtime.launcher.Launcher start com.smartfoxserver.v2.Main false false "" "" true true false "sfs-splash.png" true true 0 0 "" 20 20 "Arial" "0,0,0" 8 500 "version 2.14.0" 20 40 "Arial" "0,0,0" 8 500 -1 +if [ "$has_space_options" = "true" ]; then +$INSTALL4J_JAVA_PREFIX exec "$app_java_home/bin/java" -server "-Dfile.encoding=UTF-8" "$vmov_1" "$vmov_2" "$vmov_3" "$vmov_4" "$vmov_5" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main start +return_code=$? +else +$INSTALL4J_JAVA_PREFIX exec "$app_java_home/bin/java" -server "-Dfile.encoding=UTF-8" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main start +return_code=$? +fi ;; stop) echo "Shutting down sfs2x-service" -$INSTALL4J_JAVA_PREFIX "$app_java_home/bin/java" -server -Dinstall4j.jvmDir="$app_java_home" -Dexe4j.moduleName="$prg_dir/$progname" -classpath "$local_classpath" com.install4j.runtime.launcher.Launcher stop +$INSTALL4J_JAVA_PREFIX exec "$app_java_home/bin/java" -server -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main stop +return_code=$? ;; restart|force-reload) echo "Shutting down sfs2x-service" -$INSTALL4J_JAVA_PREFIX "$app_java_home/bin/java" -server -Dinstall4j.jvmDir="$app_java_home" -Dexe4j.moduleName="$prg_dir/$progname" -classpath "$local_classpath" com.install4j.runtime.launcher.Launcher stop +$INSTALL4J_JAVA_PREFIX "$app_java_home/bin/java" -server -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main stop +return_code=$? echo "Restarting sfs2x-service" -$INSTALL4J_JAVA_PREFIX nohup "$app_java_home/bin/java" -server -Dinstall4j.jvmDir="$app_java_home" -Dexe4j.moduleName="$prg_dir/$progname" "-Dfile.encoding=UTF-8" "-Dinstall4j.launcherId=23" "-Dinstall4j.swt=false" "$vmov_1" "$vmov_2" "$vmov_3" "$vmov_4" "$vmov_5" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" com.install4j.runtime.launcher.Launcher start com.smartfoxserver.v2.Main false false "" "" true true false "sfs-splash.png" true true 0 0 "" 20 20 "Arial" "0,0,0" 8 500 "version 2.14.0" 20 40 "Arial" "0,0,0" 8 500 -1 > /dev/null 2>&1 & +if [ "$has_space_options" = "true" ]; then +$INSTALL4J_JAVA_PREFIX nohup "$app_java_home/bin/java" -server "-Dfile.encoding=UTF-8" "$vmov_1" "$vmov_2" "$vmov_3" "$vmov_4" "$vmov_5" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main start > /dev/null 2>&1 & +return_code=$? +else +$INSTALL4J_JAVA_PREFIX nohup "$app_java_home/bin/java" -server "-Dfile.encoding=UTF-8" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main start > /dev/null 2>&1 & +return_code=$? +fi ;; status) -$INSTALL4J_JAVA_PREFIX "$app_java_home/bin/java" -server -Dinstall4j.jvmDir="$app_java_home" -Dexe4j.moduleName="$prg_dir/$progname" -classpath "$local_classpath" com.install4j.runtime.launcher.Launcher status +$INSTALL4J_JAVA_PREFIX exec "$app_java_home/bin/java" -server -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main status +return_code=$? ;; + run) + +if [ "$has_space_options" = "true" ]; then +$INSTALL4J_JAVA_PREFIX exec "$app_java_home/bin/java" -server "-Dfile.encoding=UTF-8" "$vmov_1" "$vmov_2" "$vmov_3" "$vmov_4" "$vmov_5" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main run +return_code=$? +else +$INSTALL4J_JAVA_PREFIX exec "$app_java_home/bin/java" -server "-Dfile.encoding=UTF-8" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main run +return_code=$? +fi + + + ;; + run-redirect) + +if [ "$has_space_options" = "true" ]; then +$INSTALL4J_JAVA_PREFIX exec "$app_java_home/bin/java" -server "-Dfile.encoding=UTF-8" "$vmov_1" "$vmov_2" "$vmov_3" "$vmov_4" "$vmov_5" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main run-redirect +return_code=$? +else +$INSTALL4J_JAVA_PREFIX exec "$app_java_home/bin/java" -server "-Dfile.encoding=UTF-8" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" install4j.com.smartfoxserver.v2.Main run-redirect +return_code=$? +fi + + + ;; *) - echo "Usage: $0 {start|stop|status|restart|force-reload}" + echo "Usage: $0 {start|stop|run|run-redirect|status|restart|force-reload}" exit 1 ;; esac -exit $? +exit $return_code