]> git.proxmox.com Git - pve-manager.git/commitdiff
use UpdateStore from widget toolkit
authorDominik Csapak <d.csapak@proxmox.com>
Mon, 15 Jan 2018 14:18:00 +0000 (15:18 +0100)
committerDominik Csapak <d.csapak@proxmox.com>
Thu, 25 Jan 2018 12:36:37 +0000 (13:36 +0100)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 files changed:
www/manager6/Makefile
www/manager6/ceph/Monitor.js
www/manager6/ceph/Pool.js
www/manager6/ceph/Status.js
www/manager6/data/ObjectStore.js
www/manager6/data/ResourceStore.js
www/manager6/data/UpdateQueue.js [deleted file]
www/manager6/data/UpdateStore.js [deleted file]
www/manager6/dc/Health.js
www/manager6/dc/Log.js
www/manager6/dc/Summary.js
www/manager6/dc/Tasks.js
www/manager6/grid/Replication.js
www/manager6/node/ServiceView.js

index 37d8144d55501d0595991ffe93f6016d63a2ec7a..c81cbcae0156f0988249a3c603463a37b3a3b7e9 100644 (file)
@@ -19,8 +19,6 @@ JSSRC=                                                        \
        VNCConsole.js                                   \
        data/TimezoneStore.js                           \
        data/PVEProxy.js                                \
-       data/UpdateQueue.js                             \
-       data/UpdateStore.js                             \
        data/DiffStore.js                               \
        data/ObjectStore.js                             \
        data/ResourceStore.js                           \
index 7e7554257641b6baef0d57af9159d9e25fbbce77..c27b5d2711d968dc0910faf9e6d5289cc4e45bf7 100644 (file)
@@ -67,7 +67,7 @@ Ext.define('PVE.node.CephMonList', {
 
        var sm = Ext.create('Ext.selection.RowModel', {});
 
-       var rstore = Ext.create('PVE.data.UpdateStore', {
+       var rstore = Ext.create('Proxmox.data.UpdateStore', {
            interval: 3000,
            storeid: 'ceph-mon-list' + nodename,
            model: 'ceph-mon-list',
index 33726f9abe894cbbdf86aa246dd4b486c2ea8421..100e6777d77c621dfe1a7badd17a17ae1978bdfa 100644 (file)
@@ -152,7 +152,7 @@ Ext.define('PVE.node.CephPoolList', {
 
        var sm = Ext.create('Ext.selection.RowModel', {});
 
-       var rstore = Ext.create('PVE.data.UpdateStore', {
+       var rstore = Ext.create('Proxmox.data.UpdateStore', {
            interval: 3000,
            storeid: 'ceph-pool-list' + nodename,
            model: 'ceph-pool-list',
index cda978676290070c908168753f636a36ee4cf7df..88e64bdeb7887224e12b653a842b18508150e7f7 100644 (file)
@@ -268,7 +268,7 @@ Ext.define('PVE.node.CephStatus', {
        }
 
        me.callParent();
-       me.store = Ext.create('PVE.data.UpdateStore', {
+       me.store = Ext.create('Proxmox.data.UpdateStore', {
            storeid: 'ceph-status-' + nodename,
            interval: 5000,
            proxy: {
index 6db1e6cefc35599a26ccf7744f8358d7a895d63e..f18c7a49b05d3454db1abb3e9373f187d3ec0d7e 100644 (file)
@@ -4,7 +4,7 @@
 * Designed to work with the KeyValue model and the JsonObject data reader
 */
 Ext.define('PVE.data.ObjectStore',  {
-    extend: 'PVE.data.UpdateStore',
+    extend: 'Proxmox.data.UpdateStore',
 
     constructor: function(config) {
        var me = this;
index ccf085e3bae276ea39422bf603375f8a7d72a28a..03e546c5fee6e475637abe580099ca133b297daa 100644 (file)
@@ -1,5 +1,5 @@
 Ext.define('PVE.data.ResourceStore', {
-    extend: 'PVE.data.UpdateStore',
+    extend: 'Proxmox.data.UpdateStore',
     singleton: true,
 
     findVMID: function(vmid) {
diff --git a/www/manager6/data/UpdateQueue.js b/www/manager6/data/UpdateQueue.js
deleted file mode 100644 (file)
index d8c2798..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-// Serialize load (avoid too many parallel connections)
-Ext.define('PVE.data.UpdateQueue', {
-    singleton: true,
-
-    constructor : function(){
-        var me = this;
-
-       var queue = [];
-       var queue_idx = {};
-
-       var idle = true;
-
-       var start_update = function() {
-           if (!idle) {
-               return;
-           }
-
-           var storeid = queue.shift();
-           if (!storeid) {
-               return;
-           }
-           var info = queue_idx[storeid];
-           queue_idx[storeid] = null;
-
-           info.updatestart = new Date();
-
-           idle = false;
-           info.store.load({
-               callback: function(records, operation, success) {
-                   idle = true;
-                   if (info.callback) {
-                       var runtime = (new Date()).getTime() - info.updatestart.getTime();
-                       info.callback(runtime, success);
-                   }
-                   start_update();
-               }
-           });
-       };
-
-       Ext.apply(me, {
-           queue: function(store, cb) {
-               var storeid = store.storeid;
-               if (!storeid) {
-                   throw "unable to queue store without storeid";
-               }
-               if (!queue_idx[storeid]) {
-                   queue_idx[storeid] = {
-                       store: store,
-                       callback: cb
-                   };
-                   queue.push(storeid);
-               }
-               start_update();
-           },
-           unqueue: function(store) {
-               var storeid = store.storeid;
-               if (!storeid) {
-                   throw "unabel to unqueue store without storeid";
-               }
-               if (queue_idx[storeid]) {
-                   Ext.Array.remove(queue,storeid);
-                   queue_idx[storeid] = null;
-               }
-           }
-       });
-    }
-});
diff --git a/www/manager6/data/UpdateStore.js b/www/manager6/data/UpdateStore.js
deleted file mode 100644 (file)
index a8bc9ef..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-/* Extends the Ext.data.Store type
- * with  startUpdate() and stopUpdate() methods
- * to refresh the store data in the background
- * Components using this store directly will flicker
- * due to the redisplay of the element ater 'config.interval' ms
- *
- * Note that you have to call yourself startUpdate() for the background load
- * to begin
- */
-Ext.define('PVE.data.UpdateStore', {
-    extend: 'Ext.data.Store',
-
-    isStopped: true,
-
-    destroy: function() {
-       var me = this;
-       me.load_task.cancel();
-       PVE.data.UpdateQueue.unqueue(me);
-       me.callParent();
-    },
-
-    constructor: function(config) {
-       var me = this;
-
-       config = config || {};
-
-       if (!config.interval) {
-           config.interval = 3000;
-       }
-
-       if (!config.storeid) {
-           throw "no storeid specified";
-       }
-
-       var load_task = new Ext.util.DelayedTask();
-
-       var run_load_task = function() {
-           if (me.isStopped) {
-               return;
-           }
-
-           if (PVE.Utils.authOK()) {
-               PVE.data.UpdateQueue.queue(me, function(runtime, success) {
-                   var interval = config.interval + runtime*2;
-                   load_task.delay(interval, run_load_task);
-               });
-           } else {
-               load_task.delay(200, run_load_task);
-           }
-       };
-
-       Ext.apply(config, {
-           startUpdate: function() {
-               me.isStopped = false;
-               run_load_task();
-           },
-           stopUpdate: function() {
-               me.isStopped = true;
-               load_task.cancel();
-               PVE.data.UpdateQueue.unqueue(me);
-           }
-       });
-
-       me.callParent([config]);
-
-       me.load_task = load_task;
-    }
-});
index 3e336a1b2beb87f61399eda4ebd934863376c5b6..cca31e080912fee8d3c03823bcd215770db2d3a5 100644 (file)
@@ -167,7 +167,7 @@ Ext.define('PVE.dc.Health', {
     initComponent: function() {
        var me = this;
 
-       me.cephstore = Ext.create('PVE.data.UpdateStore', {
+       me.cephstore = Ext.create('Proxmox.data.UpdateStore', {
            interval: 3000,
            storeid: 'pve-cluster-ceph',
            proxy: {
index 62370eca498f411cdd2126261ac7aeddc463e688..72aa3e6a8fe4f747f0f8b655e5cde58273dc7e7d 100644 (file)
@@ -10,7 +10,7 @@ Ext.define('PVE.dc.Log', {
     initComponent : function() {
        var me = this;
 
-       var logstore = new PVE.data.UpdateStore({
+       var logstore = Ext.create('Proxmox.data.UpdateStore', {
            storeid: 'pve-cluster-log',
            model: 'pve-cluster-log',
            proxy: {
index f93cc9500b3dc3151a1df56a6d2f9a383f21df1a..d593f0ba3c46f72347a19c594195df823b7b0911 100644 (file)
@@ -57,7 +57,7 @@ Ext.define('PVE.dc.Summary', {
     initComponent: function() {
         var me = this;
 
-       var rstore = Ext.create('PVE.data.UpdateStore', {
+       var rstore = Ext.create('Proxmox.data.UpdateStore', {
            interval: 3000,
            storeid: 'pve-cluster-status',
            model: 'pve-dc-nodes',
index 5d65bd2ef6d90d6af0037ba70bb05076d6d19c44..707987277cbcee6052fe19674ec6e0f3a8b1b21a 100644 (file)
@@ -10,7 +10,7 @@ Ext.define('PVE.dc.Tasks', {
     initComponent : function() {
        var me = this;
 
-       var taskstore = new PVE.data.UpdateStore({
+       var taskstore = Ext.create('Proxmox.data.UpdateStore', {
            storeid: 'pve-cluster-tasks',
            model: 'pve-tasks',
            proxy: {
index 654a8368bb521d14d9234a84513a8b8f78b73e69..035cba2d414ec026e541890bbbce5c2d4ca2370e 100644 (file)
@@ -448,7 +448,7 @@ Ext.define('PVE.grid.ReplicaView', {
            }
        );
 
-       me.rstore = Ext.create('PVE.data.UpdateStore', {
+       me.rstore = Ext.create('Proxmox.data.UpdateStore', {
            storeid: 'pve-replica-' + me.nodename + me.vmid,
            model: (mode === 'dc')? 'pve-replication' : 'pve-replication-state',
            interval: 3000,
index a676280a3060e37d161a251acb86504633a72253..b78d17663b4a6478687c7d62347351e99b797a2a 100644 (file)
@@ -13,7 +13,7 @@ Ext.define('PVE.node.ServiceView', {
            throw "no node name specified";
        }
 
-       var rstore = Ext.create('PVE.data.UpdateStore', {
+       var rstore = Ext.create('Proxmox.data.UpdateStore', {
            interval: 1000,
            storeid: 'pve-services' + nodename,
            model: 'pve-services',