Author: jfrederic.clere(a)jboss.com
Date: 2009-04-23 06:07:06 -0400 (Thu, 23 Apr 2009)
New Revision: 2404
Modified:
trunk/mod_cluster/native/mod_manager/mod_manager.c
Log:
Finish fixing MODCLUSTER-69 (allow to disable/enable all contexts on a node).
Modified: trunk/mod_cluster/native/mod_manager/mod_manager.c
===================================================================
--- trunk/mod_cluster/native/mod_manager/mod_manager.c 2009-04-23 09:09:15 UTC (rev 2403)
+++ trunk/mod_cluster/native/mod_manager/mod_manager.c 2009-04-23 10:07:06 UTC (rev 2404)
@@ -1368,7 +1368,7 @@
/* Create the commands that are possible on the context */
static char*context_string(request_rec *r, contextinfo_t *ou, char *Alias, char
*JVMRoute)
{
- char *raw = apr_pstrcat(r->pool, "JVMRoute=", JVMRoute,
"&Alias=", Alias, "&Context=", ou->context);
+ char *raw = apr_pstrcat(r->pool, "JVMRoute=", JVMRoute,
"&Alias=", Alias, "&Context=", ou->context, NULL);
return raw;
}
static void context_command_string(request_rec *r, contextinfo_t *ou, char *Alias, char
*JVMRoute)
@@ -1380,6 +1380,21 @@
ap_rprintf(r, "<a
href=\"%s?nonce=%s&Cmd=DISABLE-APP&Range=CONTEXT&%s\">Disable</a>",
r->uri, balancer_nonce, context_string(r, ou, Alias, JVMRoute));
}
+/* Create the commands that are possible on the node */
+static char*node_string(request_rec *r, char *JVMRoute)
+{
+ char *raw = apr_pstrcat(r->pool, "JVMRoute=", JVMRoute, NULL);
+ return raw;
+}
+static void node_command_string(request_rec *r, int status, char *JVMRoute)
+{
+ if (status == ENABLED)
+ ap_rprintf(r, "<a
href=\"%s?nonce=%s&Cmd=ENABLE-APP&Range=NODE&%s\">Enable
Contexts</a> ",
+ r->uri, balancer_nonce, node_string(r, JVMRoute));
+ if (status == DISABLED)
+ ap_rprintf(r, "<a
href=\"%s?nonce=%s&Cmd=DISABLE-APP&Range=NODE&%s\">Disable
Contexts</a>",
+ r->uri, balancer_nonce, node_string(r, JVMRoute));
+}
/*
* Process the parameters and display corresponding informations.
@@ -1616,9 +1631,13 @@
char *flushpackets;
if (get_node(nodestatsmem, &ou, id[i]) != APR_SUCCESS)
continue;
- ap_rprintf(r, "<h1> Node %s (%s://%s:%s):</h1>\n",
+ ap_rprintf(r, "<h1> Node %s (%s://%s:%s): ",
ou->mess.JVMRoute, ou->mess.Type, ou->mess.Host,
ou->mess.Port);
+ node_command_string(r, ENABLED, ou->mess.JVMRoute);
+ node_command_string(r, DISABLED, ou->mess.JVMRoute);
+ ap_rprintf(r, "</h1>\n");
+
ap_rprintf(r, "Balancer: %s,Domain: %s", ou->mess.balancer,
ou->mess.Domain);
flushpackets = "Off";