#!/bin/ksh
# Copyright 2004 Sun Microsystems, Inc. All Rights Reserved.
#
# @(#)restartportal.sh	1.9 05/10/13
#
# This software is the confidential and proprietary information of Sun
# Microsystems, Inc. ("Confidential Information"). You shall not
# disclose such Confidential Information and shall use it only in
# accordance with the terms of the license agreement you entered into
# with Sun.
#
# SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF
# THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
# TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
# PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
# ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
# DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
#
BASENAME=/usr/bin/basename
EXPR=/usr/bin/expr

usage() {
    echo 
    echo "usage: $PROGNAME -h"
    echo "       $PROGNAME"
    echo 
    echo "Options:"
    echo "none: Restarts the StorEdge Management Portal"
    echo "-h  : prints this message"
    echo
    exit 1
}

get_opts() {
    while getopts :h gopt
    do 
	    case $gopt in
	    h) usage
	        ;;
	    *) usage
	        ;;
	    esac
    done
    shift `$EXPR $OPTIND - 1`
}

PROGNAME=`$BASENAME $0`
get_opts $*

set `/usr/bin/id`
if [ $1 != "uid=0(root)" ]; then
         $ECHO "You must be root to run this command"
         exit 1
fi

exitStatus=0

echo "Stopping Cacao.."
/opt/SUNWcacao/bin/cacaoadm stop >/dev/null 2>&1
exitStatus=$?
if [ $exitStatus = 0 ]; then
    echo "Cacao Stopped.."
else
    echo "Cacao Stop FAILED.."
fi

echo "Stopping Portal database.."
/etc/init.d/init.esmdb stop >/dev/null 2>&1
exitStatus=$?
if [ $exitStatus = 0 ]; then
    echo "Portal databse Stopped.."
else
    echo "Portal databse Stop FAILED.."
fi

echo "Stopping Portal server.."
/opt/SUNWesmportal/bin/stopservers
exitStatus=$?
if [ $exitStatus = 0 ]; then
    echo "Portal servers Stopped.."
else
    echo "Portal servers Stop already Stopped.."
fi

echo "Starting Portal database.."
/etc/init.d/init.esmdb start >/dev/null 2>&1
exitStatus=$?
if [ $exitStatus = 0 ]; then
    echo "Portal database Started.."
else
    echo "Portal database Start FAILED.."
fi

echo "Starting Portal server.."
/opt/SUNWesmportal/bin/startservers
exitStatus=$?
if [ $exitStatus = 0 ]; then
    echo "Portal servers Started.."
else
    echo "Portal servers Start already Started.."
fi

echo "Starting Cacao.."
/opt/SUNWcacao/bin/cacaoadm start >/dev/null 2>&1
exitStatus=$?
if [ $exitStatus = 0 ]; then
    echo "Cacao Started.."
else
    echo "Cacao Start FAILED.."
fi

exit $exitStatus
