#!/bin/ksh
#
# This script creates OrbixWeb configurations files.
#
# There is an optional argument which may be used to specify the path to
# the java interpreter.  The java interpreter must reside in the bin directory
# of a standard Java Development Kit installation.
#
# If the system is Solaris 2.5.1 or 2.6 on a sparc machine, then the 
# Java Runtime Environment bundled with the DOC is used for the Java
# interpreter.
#
# Otherwise, /usr/local/jdk1.1/bin/java is used. 
#
# If /usr/local/jdk1.1/bin/java cannot be found, then the java interpreter
# command is searched in your path.  To work properly, the java interpreter
# must be in the bin directory of a standard Java Development Kit installation.
#
# This script must reside in the configuration sub-directory of the DOC 
# directory tree. 

unset CLASSPATH
unset JAVA_HOME
 
export CLASSPATH
export JAVA_HOME
export LD_LIBRARY_PATH
export THREADS_TYPE

script_path=`whence $0` >/dev/null 2>&1
script_home=`dirname $script_path`

# Get java interpreter path and Services bin directory
#

services_bin_dir=""
if [ $# -lt 1 ]; then
   echo "Usage: <services bin directory> [<java interpreter>]"
   exit 1
fi

services_bin_dir=$1
$script_home/make_set_doc_envs.sh $services_bin_dir

. $script_home/../set_doc_envs.sh

java_interpreter=""
if [ $# -ge 2 ]; then
  java_interpreter=$2
fi
echo $java_interpreter
if [ -n "$java_interpreter" ]; then
   if [ -x $java_interpreter ] ; then
      echo Java interpreter set to $java_interpreter set from command line.
      JAVA_HOME=`dirname $java_interpreter`/..
      CLASSPATH=$DOC_CLASSES:$JAVA_HOME/lib/classes.zip
      $java_interpreter set_doc_java_config $java_interpreter $DOC_BIN
      chmod +x $DOC_BIN/doc_java

   else java_interpreter=""
   fi
fi

# Get java interpreter from DOC jre
#

#  local_threads_type=green_threads
   local_threads_type=native_threads
if [ -z "$java_interpreter" -a \
     -a "$DOC_JRE_HOME/bin/`uname -p`/$local_threads_type/jre" -a \
     \( "`uname -spr`" = "SunOS 5.5.1 sparc" -o \
        "`uname -spr`" = "SunOS 5.6 sparc" \) ]; then

   java_interpreter="$DOC_JRE_HOME/bin/`uname -p`/$local_threads_type/jre"
   if [ -x "$java_interpreter" ]; then
      echo Java interpreter set to $java_interpreter bundled with the DOC.
      THREADS_TYPE=$local_threads_type
      JAVA_HOME="$DOC_JRE_HOME"
      LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$JAVA_HOME/lib/`uname -p`/$THREADS_TYPE"
      CLASSPATH=$DOC_CLASSES:$JAVA_HOME/lib/classes.jar:$JAVA_HOME/lib/rt.jar:$JAVA_HOME/lib/i18n.jar

      $java_interpreter set_doc_java_config JRE $DOC_BIN
      chmod +x $DOC_BIN/doc_java

   else
      java_interpreter=""
   fi
fi

# Get java interpreter from /usr/local/jdk1.1
#
if [ -z "$java_interpreter" -a -x "/usr/local/jdk1.1/bin/java" ]; then
    java_interpreter=/usr/local/jdk1.1/bin/java
    if [ -x "$java_interpreter" ]; then
       echo Java interpreter set to $java_interpreter explicitly.
       JAVA_HOME=/usr/local/jdk1.1
       CLASSPATH=$DOC_CLASSES:$JAVA_HOME/lib/classes.zip

       $java_interpreter set_doc_java_config $java_interpreter $DOC_BIN
       chmod +x $DOC_BIN/doc_java

    else
       java_interpreter=""
    fi
fi

# Get java interpreter from 'which java'
#
if [ -z "$java_interpreter" ]; then
   which_java=`which java`
   if [ "$?" = "0" ]; then
      java_interpreter=$which_java
      if [ -x $java_interpreter ]; then
         echo Java interpreter set to $java_interpreter from first \"java\" found.
         JAVA_HOME=`dirname $java_interpreter`/..
         CLASSPATH=$DOC_CLASSES:$JAVA_HOME/lib/classes.zip

	 $java_interpreter set_doc_java_config $java_interpreter $DOC_BIN
         chmod +x $DOC_BIN/doc_java

      else
         java_interpreter=""
      fi
   fi
fi

# Could not find java
#
if [ -z "$java_interpreter" ]; then
   echo Could not find java
   exit 1
fi

$java_interpreter \
   set_doc_orbixweb_config $java_interpreter $DOC_ORBIXWEB $DOC_DIR/java_class
 
exit 0
