--- mcore-src/trunk/mcore-tools/src/include/daemon.global.class.in 2014/01/10 23:51:35 2228 +++ mcore-src/trunk/mcore-tools/src/include/daemon.global.class.in 2014/01/14 10:50:06 2271 @@ -8,7 +8,7 @@ # client specific for i in $(find ${MCORE_LIBDIR}/include -type f -name \*.client.class) do - source ${i} || eecho "error loading ${i}" + include ${i} || eecho "error loading ${i}" done } @@ -54,31 +54,38 @@ # run_class $method $caller $argv1 $argv2 ... $argvN run_class() { - local method="$1" - local caller="$2" + local method="${GLOBAL_ARGV[0]}" + local caller="${GLOBAL_ARGV[1]}" local class local cmd - local argv + local i + local count if valid_session then class="${caller%.*}" cmd="${caller#*.}" - argv="${@/${caller}/}" # remove caller - argv="${argv/${method}/}" # remove method -# echo "method=${method}" -# echo "caller=${caller}" -# echo "class=${class}" -# echo "cmd=${cmd}" -# echo "argv=${argv}" + # copy GLOBAL_ARGV to CLASS_ARGV array without method and caller.class + unset CLASS_ARGV + count="${#GLOBAL_ARGV[*]}" + for (( i=2; i