#!/bin/sh
#
# Version: 0.1
#
# chkconfig: 345 99 02
# description: pgpool is a connection server program for PostgreSQL.
# processname: /usr/local/bin/pgpool
# config: /usr/local/etc/pgpool.conf

# Source function library.
. /etc/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 1

progname=pgpool
pidfile=/var/run/pgpool.pid
prog=/usr/local/bin/pgpool
conffile=/usr/local/etc/pgpool.conf
RETVAL=0

[ -x $prog ] || exit $?
[ -f $conffile ] || exit $?

start() {
	echo -n $"Starting $progname: "
#	daemon $prog -f $conffile
	$prog -f $conffile -n 2>&1 |logger -t pgpool -p local0.info&
	RETVAL=$?
	[ $RETVAL -eq 0 ] && success $"$base startup" || failure $"$base startup"
	echo
	[ $RETVAL -eq 0 ] && touch $pidfile
	return $RETVAL
}

stop() {
	echo -n $"Stopping $progname: "
#	killproc $prog
	$prog -f $conffile -m fast stop > /dev/null 2>&1
	RETVAL=$?
	    if [ $RETVAL -eq 0 ]
	    then
	            echo_success
	    else
	            echo_failure
	    fi
	    echo
	[ $RETVAL -eq 0 ] && rm -f $pidfile
	return $RETVAL
}

# See how we were called.
case "$1" in
	start)
		start
		;;
	stop)
		stop
		;;
	status)
		status $prog
		RETVAL=$?
		;;
	restart)
		stop
		start
		;;
	condrestart)
		if [ -f $pidfile ]; then
			stop
			start
		fi
		;;
	reload)
		action $"Reloading $progname:" killall -HUP $prog
		;;
	*)
		echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
		exit 1
esac

exit $RETVAL

#EOF
