You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2019/12/30 12:28:42 UTC

[qpid-broker-j] branch master updated: QPID-8394: [Broker-J][WMC] Fix message table

This is an automated email from the ASF dual-hosted git repository.

orudyy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/qpid-broker-j.git


The following commit(s) were added to refs/heads/master by this push:
     new 948e26c  QPID-8394: [Broker-J][WMC] Fix message table
948e26c is described below

commit 948e26c77e1bcf4ecaea70645107b9ce5275105f
Author: Alex Rudyy <or...@apache.org>
AuthorDate: Mon Dec 30 12:28:19 2019 +0000

    QPID-8394: [Broker-J][WMC] Fix message table
---
 .../resources/js/qpid/management/MessageStore.js   |  2 +-
 .../js/qpid/management/query/StoreUpdater.js       | 39 ++++++++++++++++------
 2 files changed, 29 insertions(+), 12 deletions(-)

diff --git a/broker-plugins/management-http/src/main/java/resources/js/qpid/management/MessageStore.js b/broker-plugins/management-http/src/main/java/resources/js/qpid/management/MessageStore.js
index 166ac15..fbb9860 100644
--- a/broker-plugins/management-http/src/main/java/resources/js/qpid/management/MessageStore.js
+++ b/broker-plugins/management-http/src/main/java/resources/js/qpid/management/MessageStore.js
@@ -56,7 +56,7 @@ define([
             }
             if (kwArgs && kwArgs.hasOwnProperty("end"))
             {
-                query.last = kwArgs.end;
+                query.last = kwArgs.end - 1;
             }
             var headers = lang.mixin({Accept: "application/javascript, application/json"}, kwArgs.headers);
             var messages = this.management.invoke(modelObj, query, {headers: headers}, true);
diff --git a/broker-plugins/management-http/src/main/java/resources/js/qpid/management/query/StoreUpdater.js b/broker-plugins/management-http/src/main/java/resources/js/qpid/management/query/StoreUpdater.js
index c313dcb..33a09af 100644
--- a/broker-plugins/management-http/src/main/java/resources/js/qpid/management/query/StoreUpdater.js
+++ b/broker-plugins/management-http/src/main/java/resources/js/qpid/management/query/StoreUpdater.js
@@ -60,16 +60,26 @@ define(["dojo/_base/declare",
                 _currentResultsIdToIndexMap: null,
                 _updating: false,
                 _fetchRangeCapturedArguments: null,
+                _inProgressfetchRange: null,
+                _inProgressfetch: null,
 
                 fetch: function ()
                 {
-                    var queryResults = this.inherited(arguments);
+                    if (this._inProgressfetch === null || this._inProgressfetch === undefined)
+                    {
+                        this._inProgressfetch = this.inherited(arguments);
+                    }
                     this._captureResults(queryResults, "fetch");
                     return queryResults;
                 },
                 fetchRange: function (args)
                 {
-                    var queryResults = this.inherited(arguments);
+                    if (this._inProgressfetchRange === null || this._inProgressfetchRange === undefined)
+                    {
+                        this._inProgressfetchRange = this.inherited(arguments);
+                    }
+                    var queryResults = this._inProgressfetchRange;
+
                     this._captureResults(queryResults, "fetchRange", args);
                     return queryResults;
                 },
@@ -94,7 +104,14 @@ define(["dojo/_base/declare",
                 {
                     var handler = lang.hitch(this, function (data)
                     {
-                        this._processResults(data, methodName, args);
+                        try
+                        {
+                            this._processResults(data, methodName, args);
+                        }
+                        finally
+                        {
+                            this["_inProgress" + methodName ] = null;
+                        }
                         if (!data.hasOwnProperty("results"))
                         {
                             this.emit("unexpected", data);
@@ -143,8 +160,8 @@ define(["dojo/_base/declare",
                             for (var i = currentResults.length - 1; i >= 0; i--)
                             {
                                 var currentResult = currentResults[i];
-                                var id = currentResult[idProperty];
-                                var newResultIndex = newResultsIdToIndexMap[id];
+                                var currentId = currentResult[idProperty];
+                                var newResultIndex = newResultsIdToIndexMap[currentId];
                                 if (newResultIndex === undefined)
                                 {
                                     this._pushChange("delete", currentResult, offset + i, offset + i, total);
@@ -153,7 +170,7 @@ define(["dojo/_base/declare",
                                         idProperty,
                                         this._currentResultsIdToIndexMap,
                                         i);
-                                    delete this._currentResultsIdToIndexMap[id];
+                                    delete this._currentResultsIdToIndexMap[currentId];
                                 }
                             }
 
@@ -174,11 +191,11 @@ define(["dojo/_base/declare",
                                 }
                                 else
                                 {
-                                    var currentResult = currentResults[previousIndex];
+                                    var current = currentResults[previousIndex];
                                     if (previousIndex === j)
                                     {
                                         currentResults[j] = newResult;
-                                        if (!util.equals(newResult, currentResult))
+                                        if (!util.equals(newResult, current))
                                         {
                                             this._pushChange("update", newResult, offset + j, previousIndex + offset, total);
                                         }
@@ -187,7 +204,7 @@ define(["dojo/_base/declare",
                                     {
                                         this._pushChange("update", newResult, offset + j, previousIndex + offset, total);
                                         currentResults.splice(previousIndex, 1);
-                                        currentResults.splice(j, 0, currentResult);
+                                        currentResults.splice(j, 0, current);
                                         updateIdToIndexMap(currentResults,
                                             idProperty,
                                             this._currentResultsIdToIndexMap,
@@ -198,9 +215,9 @@ define(["dojo/_base/declare",
                         }
                         else
                         {
-                            for (var j = 0; j < newResults.length; j++)
+                            for (var k = 0; k < newResults.length; k++)
                             {
-                                this._pushChange("add", newResults[j], offset + j, -1,  total);
+                                this._pushChange("add", newResults[k], offset + k, -1,  total);
                             }
                         }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org