#/bin/bash

start_running_process(){
processes=("lps" "ndc" "tomcat" "api_gateway" "IntegratedNodeServer" "alert_manager" "postgresql.conf" "app.js" "nfdb" "nsi_check_db_manager" "cmon")

# Start services
for process in "${processes[@]}"; do
    case "$process" in
        "api_gateway")
            service_name="apiGateway"
            ;;
        "nfdb")
            service_name="nfdb.service"
            ;;
        "app.js")
            service_name="NFLogmon.service"
            ;;
        "nsi_check_db_manager")
            service_name="configdb_manager"
            ;;
        "postgresql.conf")
            service_name="postgresql.service"
            ;;
        "IntegratedNodeServer")
            service_name="node"
            ;;
        *)
            service_name="$process"
            ;;
    esac

    if ps aux | grep "$process" | grep -v grep > /dev/null; then
        echo "$service_name is already running. Skipping..."
        echo "#####################################################################"
    else
        echo "Starting service: $service_name"
        if [ "$process" == "nfdb" ] || [ "$process" == "app.js" ] || [ "$process" == "postgresql.conf" ]; then
                echo "cavisson" | sudo -S systemctl start $service_name
		if [ $? == 0 ];then
	        	echo "$service_name started Successfully..."
		else
			echo "$service_name not started"
		fi
        else
                /etc/init.d/$service_name start
		if [ $? == 0 ];then
	        	echo "$service_name started Successfully..."
		else
			echo "$service_name not started"
		fi
        fi
        echo "#####################################################################"
    fi
    sleep 2
done
}
start_running_process
