#!/bin/bash
#设置初始参数,最好全部用引号包含,避免出现特殊字符串导致的断片
:<<!
环境变量说明：
ENABLE_APPENV=true     加载本地的setappenv.sh脚本进行应用的配置信息初始化
ENABLE_JVMOPS=true     加载本地的JVM配置参数
ENABLE_JVMGC=true      加载本地的JVM GC配置参数
ENABLE_JMXOPS=true     加载本地的JVM JMX配置参数
ENABLE_JVMDEBUG=true   加载本地的JVM 调试模式配置参数
ENABLE_JETTY=true      加载本地的JETTY配置参数
!
#脚本只要发生错误，就终止执行

#在运行结果之前，先输出执行的那一行命令

echo "MALLOC_ARENA_MAX="$MALLOC_ARENA_MAX
#设置加载的包顺序
export APPLIBS="bos,biz,cus,trd"
#定义map，分别为启用的key与shell脚本名
declare -A opsmap=(["ENABLE_APPENV"]="setappenv.sh" ["ENABLE_JVMOPS"]="setjvm.sh" ["ENABLE_JVMGC"]="setjvmgc.sh" ["ENABLE_JETTY"]="setwebenv.sh")

#遍历map
for key in ${!opsmap[@]}  
do
    #将map的key取环境变量值，如果存在，且为true，则初始化相应的配置脚本
    eval v=\$$key
    echo "k=$key v==="$v
    if [ "$v" = true ] ; then
        source ${opsmap[$key]}
    else
        echo 'not found key' $key
    fi
      
done
