#!/bin/sh
#
#  The contents of this file are subject to the Initial
#  Developer's Public License Version 1.0 (the "License");
#  you may not use this file except in compliance with the
#  License. You may obtain a copy of the License at
#  http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_idpl.
#
#  Software distributed under the License is distributed AS IS,
#  WITHOUT WARRANTY OF ANY KIND, either express or implied.
#  See the License for the specific language governing rights
#  and limitations under the License.
#
#  The Original Code was created by Alex Peshkoff
#  for the Firebird Open Source RDBMS project.
#
#  Copyright (c) 2008 Alex Peshkoff <peshkoff@mail.ru>
#  and all contributors signed below.
#
#  All Rights Reserved.
#  Contributor(s): ______________________________________.
#

#= Main ====================================================================

cat <<EOF
For classic server there are two ways to support multiple connections:
multiprocess (traditional for FB classic server) and multithread (new for FB 2.5).

multiprocess mode is specially reliable cause error in one process does not affect others.
multithread minimizes OS load and should provide better scalability under high loads.

EOF

AskQuestion "Which option would you like to choose: multi-(process|thread) [process] " "process"
multiAnswer=$Answer

case $multiAnswer in
process) 
	;;
thread) 
	;;
*)
	echo "Unknown option $multiAnswer chosen"
	exit 1
	;;
esac

echo "Stopping currently running engine..."
checkIfServerRunning
removeInetdServiceEntry
removeServiceAutostart

echo "Starting firebird in multi$multiAnswer mode..."
if [ $multiAnswer = process ]; then
	updateInetdServiceEntry
	resetInetdServer
else
	installInitdScript super
	startService super
fi

echo "Done."
