typeset -a chpwd_functions __chromaz_extra_left

SYSTEM_JAVA_HOME=${CS_FORMER_JAVA_HOME:-$JAVA_HOME}

local cs_jvm_id
local cs_java_home

remove-from-path() {
	for elem in $@; do
		path=("${(@)path:#$elem}")
	done
}

cs-set-java-home() {
	local dir=${1:-${PWD:a}}
	if [[ $dir == / ]]; then 
		export JAVA_HOME=${SYSTEM_JAVA_HOME}
		remove-from-path $cs_java_home/bin
		cs_jvm_id=
		return
	fi
	if [[ -e $dir/.jvm ]]; then
		cs_jvm_id=$(<$dir/.jvm)
		#echo "Setting Java version to ${cs_jvm_id}"
		cs_java_home=$(cs java-home --jvm ${cs_jvm_id})
		path=( $cs_java_home/bin $path )
		export JAVA_HOME=${cs_java_home}
	else
		cs-set-java-home ${dir:h}
	fi

	#	
}

cs-current-java() {
	echo ${cs_jvm_id:+JVM: }${cs_jvm_id}
}

chpwd_functions+=cs-set-java-home
__chromaz_extra_left+=cs-current-java
cs-set-java-home