pero 2005/03/12 22:35:57 Modified: jk/native/common jk_status.c Log: add textupdate mode to status worker for simpler handle remote JkStatusAntTasks Revision Changes Path 1.27 +24 -16 jakarta-tomcat-connectors/jk/native/common/jk_status.c Index: jk_status.c =================================================================== RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_status.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- jk_status.c 22 Feb 2005 15:38:12 -0000 1.26 +++ jk_status.c 13 Mar 2005 06:35:57 -0000 1.27 @@ -43,6 +43,8 @@ #define JK_STATUS_HEND "</body>\n</html>\n" +#define JK_STATUS_TEXTUPDATE_RESPONCE "OK - jk status worker updated\n" + typedef struct status_worker status_worker_t; struct status_endpoint @@ -619,6 +621,8 @@ return 1; else if (!strncmp(req, "cmd=update", 10)) return 2; + else if (!strncmp(req, "cmd=textupdate", 14)) + return 3; else return 0; } @@ -638,21 +642,12 @@ *is_recoverable_error = JK_FALSE; s->start_response(s, 200, "OK", headers_names, headers_vals, 3); - s->write(s, JK_STATUS_HEAD, sizeof(JK_STATUS_HEAD) - 1); - - jk_puts(s, "<h1>JK Status Manager for "); - jk_puts(s, s->server_name); - jk_puts(s, "</h1>\n\n"); - jk_putv(s, "<dl><dt>Server Version: ", - s->server_software, "</dt>\n", NULL); - jk_putv(s, "<dt>JK Version: ", - JK_VERSTRING, "\n</dt></dl>\n", NULL); /* Step 1: Process GET params and update configuration */ cmd = status_cmd_type(s->query_string); if (cmd > 0 && (status_cmd("w", s->query_string, buf, sizeof(buf)) != NULL)) worker = strdup(buf); - if (cmd == 2 && worker) { + if (((cmd == 2) || (cmd == 3)) && worker) { /* lock shared memory */ jk_shm_lock(); update_worker(s, p->s_worker, worker, l); @@ -665,11 +660,24 @@ /* unlock the shared memory */ jk_shm_unlock(); } - /* Step 2: Display configuration */ - display_workers(s, p->s_worker, worker, l); - - - s->write(s, JK_STATUS_HEND, sizeof(JK_STATUS_HEND) - 1); + if(cmd == 3) { + s->write(s, JK_STATUS_TEXTUPDATE_RESPONCE, sizeof(JK_STATUS_TEXTUPDATE_RESPONCE) - 1); + } else { + s->write(s, JK_STATUS_HEAD, sizeof(JK_STATUS_HEAD) - 1); + + jk_puts(s, "<h1>JK Status Manager for "); + jk_puts(s, s->server_name); + jk_puts(s, "</h1>\n\n"); + jk_putv(s, "<dl><dt>Server Version: ", + s->server_software, "</dt>\n", NULL); + jk_putv(s, "<dt>JK Version: ", + JK_VERSTRING, "\n</dt></dl>\n", NULL); + /* Step 2: Display configuration */ + display_workers(s, p->s_worker, worker, l); + + + s->write(s, JK_STATUS_HEND, sizeof(JK_STATUS_HEND) - 1); + } if (worker) free(worker); JK_TRACE_EXIT(l);
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]