#!/bin/sh
#
# Copyright (c) 2000 by Sun Microsystems, Inc. All Rights Reserved
#
# @(#)ctmgx	1.9    00/12/08 SMI
#


PS="/usr/bin/ps"
RM="/usr/bin/rm"
AWK="/usr/bin/awk"
CAT="/usr/bin/cat"
GREP="/usr/bin/grep"
KILL="/usr/bin/kill"
SED='/usr/bin/sed'
ECHO='/usr/bin/echo'

#
# JAW_HOME ... path to Sun JDMK installation directory
#
if [ -z "${JAW_HOME}" ]; then
    JDMK_HOME=/opt/SUNWjdmk/jdmk4.1/1.2
fi

#
# JAVA_HOME ... path to JDK installation directory
#
if [ -z "${JAVA_HOME}" ]; then
    JAVA_HOME=/usr/java1.2
fi
#
# CLASSPATH initialization
#
JDMK_CLASSPATH=${JDMK_HOME}/lib/jdmkrt.jar:/opt/SUNWnetract/mgmt/bin/sparcv9/mc_common.jar:/opt/SUNWnetract/mgmt/bin/sparcv9/mc_snmp.jar:/opt/SUNWnetract/mgmt/bin/sparcv9/mc_moh.jar
CLASSPATH=${JDMK_CLASSPATH}:${CLASSPATH}

#
# LD_LIBRARY_PATH initialization
#
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/opt/SUNWnetract/mgmt/lib:/opt/SUNWssmu/lib

#
# export variables.
#
export LD_LIBRARY_PATH JAW_HOME CLASSPATH

#
# Parse arguments
#
case $1 in
'start')
    $ECHO "starting ctmgx ...\c"
    if [ -r /tmp/.ctmgxPID ]; then
	$PS -e | $AWK '{print $1;}' | $GREP -w `$CAT /tmp/.ctmgxPID` 1> \
	    /dev/null 2>&1
	if [ "$?" -eq 0 ] ; then
	    $ECHO "\nError: ctmgx is already running.\nStop it first using" \
			" the command: ctmgx stop"
	    	exit 1
	fi
    fi
    shift

    # Load all the drivers so that we can find out whats in the
    # system.
    devfsadm

    #${JAVA_HOME}/bin/java com.sun.ctmgx.Agent > /dev/null 2>&1 &
    ${JAVA_HOME}/bin/java $* com.sun.ctmgx.Agent > /dev/null  &
    $ECHO $! > /tmp/.ctmgxPID
    ;;

'stop')
    $ECHO "stopping ctmgx"
    if [ -r /tmp/.ctmgxPID ] ; then
	    pid=`$CAT /tmp/.ctmgxPID`
	    err=`$KILL -TERM $pid  2>&1`
	if [ $? -ne 0 ]; then
	    $ECHO "\nError: $err."
	fi
	$RM -f /tmp/.ctmgxPID
    else
	PROC=`$PS -ef | $GREP com.sun.ctmgx.Agent | $GREP -v grep \
	    | $AWK '{print $2}'`
	if [ -n "$PROC" ] ; then
    	    err=`$KILL -TERM $PROC 2>&1`
    	if [ $? -ne 0 ]; then
	    $ECHO "\nError: $err."
    	fi
	else
    	    $ECHO "\nError: ctmgx is not running."
	fi
    fi
    ;;
*)
    $ECHO "\nUsage: $0 { start [-Dsnmp.port=<port_num>]" \
                  	      "[-Drmi.port=<port_num>]"  \
		      "| stop }\n"
    ;;
esac
