From: Wolfram Schneider Date: Tue, 24 Mar 2009 22:49:33 +0000 (+0000) Subject: Add tag to support a progress bar. The value is between 0 ... 1 X-Git-Tag: v1.1.0~34^2~2 X-Git-Url: http://git.indexdata.com/?a=commitdiff_plain;ds=sidebyside;h=4dbb25eef6b8fc15f058729ab84c6d492aefb42e;p=pazpar2-moved-to-github.git Add tag to support a progress bar. The value is between 0 ... 1 --- diff --git a/js/pz2.js b/js/pz2.js index b5dbca9..4f089a1 100644 --- a/js/pz2.js +++ b/js/pz2.js @@ -349,6 +349,9 @@ pz2.prototype = .childNodes[0].nodeValue ), "error": Number( data.getElementsByTagName("error")[0] + .childNodes[0].nodeValue ), + "progress": + Number( data.getElementsByTagName("progress")[0] .childNodes[0].nodeValue ) }; diff --git a/src/http_command.c b/src/http_command.c index 610daee..8ec3264 100644 --- a/src/http_command.c +++ b/src/http_command.c @@ -820,12 +820,18 @@ static void cmd_stat(struct http_channel *c) struct statistics stat; int clients; + float progress = 0; + if (!s) return; clients = session_active_clients(s->psession); statistics(s->psession, &stat); + if (stat.num_clients > 0) { + progress = (stat.num_clients - clients) / (float)stat.num_clients; + } + wrbuf_rewind(c->wrbuf); wrbuf_puts(c->wrbuf, ""); wrbuf_printf(c->wrbuf, "%d\n", clients); @@ -838,6 +844,7 @@ static void cmd_stat(struct http_channel *c) wrbuf_printf(c->wrbuf, "%d\n", stat.num_idle); wrbuf_printf(c->wrbuf, "%d\n", stat.num_failed); wrbuf_printf(c->wrbuf, "%d\n", stat.num_error); + wrbuf_printf(c->wrbuf, "%.2f\n", progress); wrbuf_puts(c->wrbuf, ""); rs->payload = nmem_strdup(c->nmem, wrbuf_cstr(c->wrbuf)); http_send_response(c);