##@cooked comments # -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8 ## Pilotage de wotaskd ##@cooked nocomments ##@require base ##@require sysinfos ##@require webobjects uprovide wotaskd urequire base sysinfos webobjects WOT_DEFAULT_HOST=localhost WOT_DEFAULT_PORT="${WOTASKD_PORT:-1085}" function __get_woturl() { # $1 est un nom d'hôte de la forme host[:port] # Le transfomer en url pour attaquer le wotaskd: # http://host:port/cgi-bin/WebObjects/wotaskd.woa/$2[&$3...] # $2 est l'url relative à attaquer. Si $3 est spécifié, c'est le mot de # passe pour l'accès au moniteur. Si $4...* sont spécifiés, ce sont d'autres # paramètres. local host port paramsep="?" splitpair "$1" host port; shift [ -n "$host" ] || host="$WOT_DEFAULT_HOST" [ -n "$port" ] || port="$WOT_DEFAULT_PORT" local woturl="http://$host:$port/cgi-bin/WebObjects/wotaskd.woa" if [ -n "$1" ]; then [ "${1#/}" == "$1" ] && woturl="$woturl/" woturl="$woturl$1" fi; shift if [ -n "$1" ]; then woturl="$woturl${paramsep}pw=$1" paramsep="&" fi; shift while [ -n "$1" ]; do woturl="$woturl${paramsep}$1"; shift paramsep="&" done echo "$woturl" } function wot_config() { # Afficher la configuration de wotaskd local clean status=1 if [ -z "$WORAURL_DATA" ]; then local WORAURL_DATA ac_set_tmpfile WORAURL_DATA clean=1 fi if wogeturl "$(__get_woturl "$1" wa/woconfig)"; then cat "$WORAURL_DATA" status=0 else status=1 fi [ -n "$clean" ] && rm -f "$WORAURL_DATA" return $status }