#!/bin/sh
#Source Function Library
#Description: Manages oms and agent processes

PATH=/bin:/usr/bin:/usr/local/bin:$PATH
export PATH
check_errs()
{
  #Function. Parameter 1 is the return code
  #Para. 2 is text to display on failure.
  if [ "${1}" -ne "0" ]; then
    echo "ERROR ${1} : ${2}"
    #as a bonus, make our script exit with the right error code.
    exit ${1}
  fi
}

#su --help > /dev/null 2>&1
#check_errs $? "Exiting: Could not find 'su' at standard locations"

if [ -f /etc/init.d/functions ]
 then
  . /etc/init.d/functions
else
   if  [ -f /etc/rc.d/init.d/functions ]
   then
     .  /etc/rc.d/init.d/functions
   fi
fi

if [ -f /etc/oragchomelist ]
then 
	oratab="/etc/oragchomelist"
else
    oratab="/var/opt/oracle/oragchomelist"
fi
		
if [ -f "$oratab" ]
then
	for i in `cat $oratab | grep -v '^#' | cut -d ":" -f1`; 
	do 
	if [ -f "$i/install/unix/scripts/omsstup" ]; 
	then 
		user=`ls -l $i/install/unix/scripts/omsstup|awk '{print $3}'`; 
		su - $user -c "$i/install/unix/scripts/omsstup $1 &";
	else 
		if [ -f "$i/install/unix/scripts/agentstup" ];
	        then
                user=`ls -l $i/install/unix/scripts/agentstup|awk '{print $3}'`;
		if [ -f "$i/install/oragchomelist" ];
		then
		su - $user -c "$i/install/unix/scripts/agentstup $1 `cat $oratab | grep $i | grep -v '^#' | cut -d ":" -f2` $user &"; 
		fi
		else
			if [ -f "$i/install/unix/scripts/nfsagentstartup" ];
			then
		                user=`ls -l $i/install/unix/scripts/nfsagentstartup|awk '{print $3}'`;
				if [ -f "$i/install/oragchomelist" ];
		                then
                		su - $user -c "$i/install/unix/scripts/nfsagentstartup $1 `cat $i/install/oragchomelist | grep -v '^#' | cut -d ":" -f2` &";
				fi
			fi;

		fi;
	fi; 
	done
fi
