#! /usr/bin/ksh
# 
# ident "@(#)oracle_server_manage.ksh 1.9     01/09/14 SMI"
#
# Copyright (c) 1999-2001 by Sun Microsystems, Inc.
# All rights reserved.
#
# Oracle STARTUP/ SHUTDOWN
# 
#
#
#############################################################
set -mufp
unset PATH
export PATH="/bin:/usr/cluster/bin"

: USER_ENV=${USER_ENV:-""}

#############################################################
# set_user_env
#############################################################
set_user_env()
{
        typeset param
        typeset val
        typeset aa_line
        while read aa_line
        do
                [ -z ${aa_line:-""} ] && continue

                if [[ "$aa_line" == \#* ]]; then
                  continue
                fi

                val="${aa_line##*=}"
                param="${aa_line%%=*}"
                eval ${param}=\"${val}\"
                export $param
        done
}


#############################################################
export_env()
{
	LD_LIBRARY_PATH=${ORACLE_HOME}/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
	export ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH
}
		
#############################################################
#
#############################################################
startup_oracle()
{
	if [ -n "${USER_ENV:-""}" ]; then
		if [ -a "$USER_ENV" ]; then
			set_user_env < $USER_ENV
		fi
	fi

	[ ! -x $ORACLE_HOME/bin/sqlplus ] && return 1 
 
	#echo "Starting Oracle : $ORACLE_SID : $ORACLE_HOME"
		
	export LD_LIBRARY_PATH=${ORACLE_HOME}/lib
	#-------------- Start/stop server ------------
	$ORACLE_HOME/bin/sqlplus "/ as sysdba" << SQLPLUS_EOF
        	startup PFILE=$PARAMETER_FILE 	
SQLPLUS_EOF
		
}
#############################################################
#
#############################################################
shutdown_oracle()
{
	if [ -n "${USER_ENV:-""}" ]; then
		if [ -a "$USER_ENV" ]; then
			set_user_env < $USER_ENV
		fi
	fi

	[ ! -x $ORACLE_HOME/bin/sqlplus ] && return 1 

	#echo "Stopping Oracle : $ORACLE_SID : $ORACLE_HOME"
		
	export LD_LIBRARY_PATH=${ORACLE_HOME}/lib
	#-------------- Start/stop server ------------

	if [ -x $ORACLE_HOME/bin/svrmgrl ]; then
		$ORACLE_HOME/bin/svrmgrl << SVRMGRL_EOF
		connect internal
		$@
SVRMGRL_EOF
	else
		$ORACLE_HOME/bin/sqlplus "/ as sysdba" << SQLPLUS_EOF
		$@
SQLPLUS_EOF
	fi
}
#############################################################
#
#############################################################
main()
{

	typeset rc=0;
	case "$1" in
		startup)  startup_oracle $@; rc=$? 
			;;
		shutdown) shutdown_oracle $@; rc=$?
			;;	
		*) rc=1
			;; 
	esac		
	exit $rc 
 	
}

main "${@:-}"


