when rstore is not instanciated but only a config, auto-create it with its type
this allows us to configure an diff/rstore combination completely declaratively like this: store: { type: 'diff', autoDestroy: true, autoDestroyRstore: true, rstore: { type: 'update', model: 'some-model', autoStart: true, interval: 5000, }, }, the only thing we have to be careful about is to either do a manual 'stopUpdate' somewhere, or use the 'autoDestroyRstore' flag Signed-off-by: Dominik Csapak <d.csa...@proxmox.com> --- we might want to set the 'autoDestroyRstore' automatically when we define 'autoDestroy' and autocreated it? in that case the chance that someone manually extracts an instance of the rstore and uses it somewhere else is probably very low data/DiffStore.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/data/DiffStore.js b/data/DiffStore.js index 6f335f0..2fc08be 100644 --- a/data/DiffStore.js +++ b/data/DiffStore.js @@ -51,7 +51,14 @@ Ext.define('Proxmox.data.DiffStore', { throw "no rstore model specified"; } - var rstore = config.rstore; + let rstore; + if (config.rstore.isInstance) { + rstore = config.rstore; + } else if (config.rstore.type) { + rstore = Ext.create(`store.${config.rstore.type}`, config.rstore); + } else { + throw 'rstore is not an instance, and cannot autocreate without "type"'; + } Ext.apply(config, { model: rstore.model, -- 2.20.1 _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel