#!/bin/bash
runHooks()
{
    if [[ -n "${SESSION_HOOKS_PATH}" ]]; then
        scriptDirectory="$SESSION_HOOKS_PATH"
        if [[ $1 = "start" ]]; then
            hooks="$SESSION_HOOKS_START"
        elif [[ $1 = "stop" ]]; then
            hooks="$SESSION_HOOKS_STOP"
        fi

        if [[ -n "$hooks" ]]; then
            emitDiagnostic "---- running $1 hooks"
            origIFS=$IFS
            IFS=':'; read -ra hooksList <<< $hooks
            for hook in "${hooksList[@]}"
            do
                emitDiagnostic "---- sourcing $scriptDirectory/$hook"
                . $scriptDirectory/$hook $1
                if [ $? -ne 0 ]; then 
                    emitDiagnostic "---- error running $scriptDirectory/$hook"
                    exit 1 
                else
                    emitDiagnostic "---- sourced $scriptDirectory/$hook"
                fi
            done
            IFS=$origIFS
        fi
    fi
}
