#!/bin/bash
#--------------------------------------------------------------------
# nic	 -- Start/stop NSS Image Collecting services.
# 		 -- updated by gjyang, 2015-06-24
#--------------------------------------------------------------------

BIN_PATH="/opt/nss/bin/nicd"
NIC_CONF_FILE="/opt/nss/etc/nic.conf"
NIC_PID_FILE="/var/run/nicd.pid"
# ulimit -s

if [ -f /var/log/hdd_type.conf ]; then
	DEV_HDD=`cat /var/log/hdd_type.conf`
fi


[ -f $BIN_PATH ] || exit 0

RETVAL=0

# See how we were called.
case "$1" in
########################
  start)
########################
	date	
	echo -n "Starting NIC Daemon: "
	$BIN_PATH
	RETVAL=$?
	sleep 3
	if [ $RETVAL -eq 0 ]; then
		echo "[  OK  ]"
	else
		echo "[FAILED]"
	fi
	;;
########################
  stop)
########################
	date
	echo -n "Stopping NIC Daemon: "
	if [ -e $NIC_PID_FILE ]; then
		kill `/bin/cat ${NIC_PID_FILE}`
		# 5 min
		for (( a=0; a<=300; a++))
		do
			sleep 1
			echo -ne "$a sec\033[0K\r"
			if [ ! -e $NIC_PID_FILE ]; then
				break
			fi
		done
		RETVAL=0
		echo "[  OK  ]"
	else
		RETVAL=-1
		echo "[FAILED]"
		echo "${NIC_PID_FILE} doesn't exist"
	fi

  /usr/sbin/led_off 0
  /usr/sbin/led_off 1
	;;
########################
  restart)
########################
	$0 stop
	if [ $RETVAL != 0 ]; then
		echo "nic restart: nic \"stopping\" fail"
	fi
	$0 start
	RETVAL=$?
	;;
########################
  fstart)
########################
	date
	echo -n "Force Starting NIC Daemon: "
# Forced configure "RECODING=run"
	sed -e 's/RECORDING=stop/RECORDING=run/g' < /opt/nss/etc/nic.conf > /tmp/conf.tmp
	cp /tmp/conf.tmp /opt/nss/etc/nic.conf
	rm -f /tmp/conf.tmp
#
	$BIN_PATH
	RETVAL=$?
	sleep 3
	if [ $RETVAL -eq 0 ]; then
		echo "[  OK  ]"
	else
		echo "[FAILED]"
	fi
	;;
########################
  fstop)
########################
	date
	echo -n "Force Stopping NIC Daemon: "
# Forced configure "RECODING=stop"
	sed -e 's/RECORDING=run/RECORDING=stop/g' < /opt/nss/etc/nic.conf > /tmp/conf.tmp
	cp /tmp/conf.tmp /opt/nss/etc/nic.conf
	rm -f /tmp/conf.tmp
#
	if [ -e $NIC_PID_FILE ]; then
		kill `/bin/cat ${NIC_PID_FILE}`
		# 5 min
		for (( a=0; a<=300; a++))
		do
			sleep 1
			echo -ne "$a sec\033[0K\r"
			if [ ! -e $NIC_PID_FILE ]; then
				break
			fi
		done
		RETVAL=0
		echo "[  OK  ]"
	else
		RETVAL=-1
		echo "[FAILED]"
		echo "${NIC_PID_FILE} doesn't exist"
	fi
	/usr/sbin/led_off 0
	/usr/sbin/led_off 1
	;;
########################
  frestart)
########################
  	$0 fstop
  	if [ $RETVAL != 0 ]; then
		echo "nic restart: nic \"stopping\" fail"
	fi
	$0 fstart
	RETVAL=$?
	;;
  *)
	echo "Usage: nic {start|stop|restart|fstart|fstop|frestart}"
	exit 1
esac

exit $RETVAL
