#!/bin/sh

VAR=/var/mnogosearch
NOVAR=${prefix}/var

if [ x$VAR = x$NOVAR ]
then
VAR=/usr/var
fi


PID=$VAR/cached.pid
SPLITTER=/usr/sbin/splitter

HUP=0
PRESPLIT=0
SPLIT=0

usage()
{
	cat <<EOF
Usage: $0 [OPTIONS]
Options:
	[-k]	[--hup]		Send -HUP signal to cached
	[-s]	[--split]	Split logs
	[-h]	[--help]	Display this page

Configuration:
        Base dir: $VAR
        Pid file: $PID
EOF
	exit $1
}


if test $# -eq 0; then
	usage 1 1>&2
fi

while test $# -gt 0; do

	case $1 in
	-k)
		HUP=1
		;;
	--hup)
		HUP=1
		;;
	-s)
		SPLIT=1
		;;
	--split)
		SPLIT=1
		;;
	*)
		usage 1 1>&2
		;;
	esac
	shift
done

if [ x$HUP = x1 ]
then
	echo "Sending -HUP signal to cached..."
	# Check whether cached is running
	if [ -s $PID ]
	then
		# Send HUP signal to cached process
		PROC=`cat $PID`
		kill -HUP $PROC

		# Check whether kill didn't fail
		if [ x$? = x1 ]
		then
			echo "kill -HUP $PROC failed."
			exit 1
		fi
                # Wait for del-split to appear.
                while [ ! -f $VAR/splitter/del-split.log ]; do
                    echo "Waiting for del-split.log..."
                    sleep 1;
                done
		echo "Done"
	else
		echo "$PID is empty or doesn't exist!"
		echo "Check that cached is running."
		exit 1
	fi
fi



if [ x$SPLIT = x1 ]
then
        # Split logs
        echo "Runnig splitter..."
        $SPLITTER && {
            echo "Deleting logs..."
            cd $VAR/splitter
            rm del-split.log
        }
	echo "Done"
fi
