Magellan Linux

Contents of /mcore-src/trunk/mcore-tools/src/modules/citrix/citrix-serverlist.in

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2272 - (show annotations) (download)
Tue Jan 14 13:20:35 2014 UTC (10 years, 3 months ago) by niro
File size: 1541 byte(s)
-split citrix.client.class.in to single programs named citrix-serverlist, citrix-session and query-citrix-browser to make things more modular and simpler
1 #!/bin/bash
2
3 MCORE_LIBDIR="@@MCORE_LIBDIR@@"
4 source @@SYSCONFDIR@@/mcore/mcore.conf
5 source @@SYSCONFDIR@@/mcore/citrix.conf
6 source ${MCORE_LIBDIR}/include/common.global.class
7
8 SERVERLISTDIR="${MCORE_CONFIG_PATH}/citrix/serverlist"
9
10 die() { echo "ERROR: $@"; exit 1; }
11
12 # very basic getops
13 for argv in $*
14 do
15 case $1 in
16 --add|--del|--print|--query|--auto) method="${1//--}" ;;
17 --server) shift; server="$1" ;;
18 esac
19 shift
20 done
21
22 [[ -n ${method} ]] || die "No method given"
23
24 case "${method}" in
25 add)
26 [[ -n ${server} ]] || die "No server given"
27 CONFIG="${MROOT}/${SERVERLISTDIR}/${server}"
28 clearconfig
29 addconfig "${server}"
30 ;;
31
32 del)
33 [[ -n ${server} ]] || die "No server given"
34 if [ ! -d ${MROOT}/${SERVERLISTDIR} ]
35 then
36 eecho "'${MROOT}/${SERVERLISTDIR}' directory not found."
37 elif [ -f ${MROOT}/${SERVERLISTDIR}/${server} ]
38 then
39 rm ${MROOT}/${SERVERLISTDIR}/"${server}"
40 else
41 eecho "No configured server named '${server}' exists."
42 fi
43 ;;
44
45 auto)
46 eval serverlist=( $(${MCORE_LIBDIR}/query-citrix-browser --server) )
47 servercount="${#serverlist[*]}"
48 for (( i=0; i<servercount; i++))
49 do
50 server="${serverlist[${i}]}"
51 CONFIG="${MROOT}/${SERVERLISTDIR}/${server}"
52 clearconfig
53 addconfig "${server}"
54 done
55 ;;
56
57 print)
58 list_files_in_directory ${MROOT}/${SERVERLISTDIR}
59 ;;
60
61 query)
62 eval serverlist=( $(${MCORE_LIBDIR}/query-citrix-browser --server) )
63 servercount="${#serverlist[*]}"
64 for (( i=0; i<servercount; i++))
65 do
66 rvecho -n "${serverlist[${i}]};"
67 done
68 rvecho
69 ;;
70 esac