Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2272 - (hide annotations) (download)
Tue Jan 14 13:20:35 2014 UTC (10 years, 4 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 niro 2272 #!/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