#!/usr/local/bin/cbsd
#v11.0.10
CBSDMODULE="jail"
MYARG=""
MYOPTARG="jname"
MYDESC="jail jstop jstart sequence"
ADDHELP="jname1 [jname2 ..]\n"

. ${subr}
. ${strings}
. ${tools}

[ -z "${cbsd_queue_name}" ] && cbsd_queue_name="/clonos/jailscontainers/"

if [ -z "$1" ]; then
	select_jail_by_list -s "List of online jail" -a "On" -r ${sqlreplica}
	jname="${jname}"
else
	jname="$*"
fi
init $*

[ -z "${jname}" ] && return 0

emulator="jail"		# for jname_is_multiple
jname_is_multiple

if [ -z "${jail_list}" ]; then
	jail_list="${jname}"
fi

for jname in ${jail_list}; do
	. ${jrcconf}

	if [ $? -eq 1 ]; then
		$ECHO "${MAGENTA}No such jail: ${GREEN}${jname}${NORMAL}"
		continue
	fi

	# CBSD QUEUE
	if [ -x "${moduledir}/cbsd_queue.d/cbsd_queue" ]; then
		[ "${cbsd_queue_name}" != "none" ] && cbsd_queue cbsd_queue_name=${cbsd_queue_name} id=${jname} cmd=jrestart status=1
	fi

	cbsdlogger NOTICE ${CBSD_APP}: restarting ${jname}

	jstop ${jname}
	jstart ${jname}

	myjid=$( cbsdsql local SELECT jid FROM jails WHERE jname=\"${jname}\" 2>/dev/null )

	[ -z "${myjid}" ] && myjid=0

	if [ ${myjid} -eq 0 ]; then
		data_status=0
	else
		data_status=1
	fi

	if [ -x "${moduledir}/cbsd_queue.d/cbsd_queue" ]; then
		[ "${cbsd_queue_name}" != "none" ] && cbsd_queue cbsd_queue_name=${cbsd_queue_name} id="${jname}" cmd=jrestart status=2 data_status=${data_status}
	fi

done
