--- /dev/null
+#!/bin/bash
+> curl_log.txt
+TRACE="--trace-ascii curl_log.txt"
+SERVER=`cat .httpServer`
+ENTITY=`cat .entity 2>/dev/null`
+# If missing following, 1 is assigned (ENTITY_SS_1 is ENTITY_SS - 1)
+ENTITY_SS=`cat .entityServerSessions 2>/dev/null`
+[[ "$ENTITY_SS" = "" ]] && ENTITY_SS=1
+TARGET=$2
+
+use () {
+ echo
+ echo
+ echo "Use: $0 <hide|show|hidden|shown> \"[<address>:<port>]|[socket id]\""
+ echo
+ echo "Hides/shows/query hidden state/query shown state, the socket/s provided."
+ echo "If missing server (first parameter) all applications sockets will be affected by action."
+ echo "If missing socket (second parameter) for specific server, all its sockets will be affected by action."
+ echo
+ exit
+}
+
+states () {
+ echo
+ echo "Select option to switch (0 = quit):"
+ echo
+ option=1
+ for i in `echo $ENTITY | sed 's/,/ /g'`
+ do
+ for j in `seq 0 $ENTITY_SS_1`
+ do
+ TARGET="${i}|${j}"
+ RES=$(curl -m 1 --data "shown|$TARGET" ${SERVER} 2>&1 | tail -1 | grep "true$")
+ res=hidden
+ [[ "$RES" != "" ]] && res=shown
+ echo "${option}. $TARGET ($res)"
+ action=show
+ [[ "$RES" != "" ]] && action=hide
+ echo "curl -m 1 --data \"$action|$TARGET\" ${SERVER}" > .switch_${option}
+ chmod a+x .switch_${option}
+ option=$((option+1))
+ done
+ done
+ echo
+}
+
+if test "$ENTITY" != ""
+then
+ ENTITY_SS_1=$((ENTITY_SS-1))
+ while true
+ do
+ states
+ read option
+ [[ "$option" = "0" ]] && break
+ .switch_${option}
+ done
+ echo
+ echo "Exiting"
+ rm .switch_*
+ exit
+else
+ [[ "$1" = "" ]] && use
+fi
+
+echo
+echo
+operation="$1|$TARGET"
+[[ "$TARGET" = "" ]] && operation="$1"
+curl -m 1 --data "$operation" $TRACE ${SERVER}
+