Changes for page UpdateInstalledExtensionCountScheduler
Last modified by Marius Dumitru Florea on 2021/05/25 15:17
edited by Thomas Mortagne
on 2016/10/06 10:25
on 2016/10/06 10:25
edited by Marius Dumitru Florea
on 2021/05/25 15:17
on 2021/05/25 15:17
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. ThomasMortagne1 +XWiki.mflorea - Hidden
-
... ... @@ -1,1 +1,1 @@ 1 - false1 +true
- XWiki.SchedulerJobClass[0]
-
- Job execution context database
-
... ... @@ -1,1 +1,1 @@ 1 - extensions1 +xwiki - Job Script
-
... ... @@ -23,12 +23,23 @@ 23 23 if (result) { 24 24 count = result.getAsJsonObject('aggregations').getAsJsonObject('instanceId_count').getAsJsonPrimitive('value').getAsLong() 25 25 26 - document = xwiki.getDocument(documentName) 26 + // Get XWikiDocument 27 + pxwiki = xwiki.getXWiki() 28 + pxcontext = xcontext 29 + document = pxwiki.getDocument(documentName, pxcontext) 27 27 28 - if (document.getValue('installedCount') != count) { 29 - document.set('installedCount', count) 31 + extensionObject = document.getObject('ExtensionCode.ExtensionClass') 32 + if (extensionObject.getLongValue('installedCount') != count && extensionObject.getIntValue('showInstalledCount') != 0) { 33 + extensionObject.set('installedCount', count, pxcontext) 30 30 31 - document.save('Update install count') 35 + if (document.comment == 'Update install count') { 36 + // Don't increment version (otherwise we could end up with a lot of those) 37 + document.setMetaDataDirty(false) 38 + document.setContentDirty(false) 39 + } 40 + 41 + // Save 42 + pxwiki.saveDocument(document, 'Update install count', true, pxcontext) 32 32 } 33 33 } else if (services.activeinstalls.lastError) { 34 34 throw services.activeinstalls.lastError ... ... @@ -39,7 +39,7 @@ 39 39 40 40 logger.info('Starting updating installed extensions count') 41 41 42 -def extensions = services.query.xwql("select doc.fullName, extension.id from Document doc, doc.object(ExtensionCode.Extension ProxyClass) asproxy, doc.object(ExtensionCode.ExtensionClass) as extension").execute()53 +def extensions = services.query.xwql("select doc.fullName, extension.id from Document doc, doc.object(ExtensionCode.ExtensionClass) as extension").execute() 43 43 for (extension in extensions) 44 44 { 45 45 logger.info('Updating installed extension [{}] count', extension[0])