#################################################################### # Reads a property file using the java properties object and returns a sorted list. #################################################################### proc hashMapList { propertiesFile } { set procName [ lindex [ info level 0 ] 0 ] putsLog "## proc - $procName" foreach i [ info args $procName ] { upvar 0 $i ilocal set propertiesArray($i) $ilocal } putsLog "procedure arguments are................." foreach { a b } [ array get propertiesArray ] { putsLog [ format "%-35s %s" "$a" "$b" ] } if { [ file exists $propertiesFile ] == 1 } { putsLog "File location confirmed for: $propertiesFile" } else { putsLog "ERROR: file $propertiesFile does not exist." return -code error } java::import java.util.Properties java::import java.util.Hashtable java::import java.util.Map java::import java.io.FileInputStream set FileInputStreamI [ java::new FileInputStream $propertiesFile ] set PropertiesI [ java::new Properties ] $PropertiesI load $FileInputStreamI java::for {Map.Entry e} [ $PropertiesI entrySet ] { set key [ [ $e getKey ] toString ] set value [ [ $e getValue ] toString ] lappend hashTableList [ list $key $value ] } #set iteratorI [ [ $PropertiesI values ] iterator ] #while { [ $iteratorI hasNext ] } { lappend hashTableList [ [ $iteratorI next ] toString ] } # return $hashTableList return [ lsort $hashTableList ] }