#!/bin/sh

PROGRAM=/usr/bin/p4d
RUNLEVEL=3
NEEDS="+network +remote_fs"

. /etc/init.d/smgl_init

start() {
    echo      "Starting perforce server..."
    getpids p4d
    if [ -z "$pidlist" ] ; then
	su - perforce -c ". /etc/p4d.conf && p4d -d -q"
	evaluate_retval
    else
	$SET_WCOL
	print_status warning running
    fi
}

stop() {
    echo      "Stopping perforce server..."
    su - perforce -c ". /etc/p4d.conf && p4 admin stop"
    evaluate_retval
}


rotatelog() {
    echo "Rotating perforce logfile..."
    su - perforce -c '. /etc/p4d.conf && \
		cd $P4ROOT && \
		p4 admin stop && \
		mv $P4LOG $P4LOG.old && \
		p4d -d -q'
    evaluate_retval
}

checkpoint() {
    echo "Checkpointing Perforce server..."
    su - perforce -c '. /etc/p4d.conf && p4d -r $P4ROOT -jc -z'
    evaluate_retval
}

verify() {
    echo "Validating Perforce server content..."
    su - perforce -c '. /etc/p4d.conf && p4 verify -q //...'
    evaluate_retval
    echo "Checksumming new files in Perforce repository..."
    su - perforce -c '. /etc/p4d.conf && p4 verify -qu //...'
    evaluate_retval
}

restart() {
    $0  stop  &&
    $0  start
}
