Package org.exoplatform.addons.documents.cleanup.service
package org.exoplatform.addons.documents.cleanup.service
-
ClassesClassDescriptionSingle authority over campaign state transitions and their side effects: the allowed-transitions guard, persisting the new state, the WebSocket stateChanged event, and registering/unregistering the JCR freshness observation listener on entry/exit of PUBLISHED.Cleanup campaigns lifecycle: dry-run launch, publication (single active campaign platform-wide), grace-deadline locking, execution trigger, cancellation, user exemptions ('keep'/'un-keep'), candidate freshness refresh, campaign comparison, report retention and CSV archiving.Asynchronous batched purge of a LOCKED campaign, under a JCR system session.Asynchronous dry-run scan of the collaboration workspace, PARALLELISED over scan UNITS: the tree is partitioned once (see
CleanupConstants.SPLIT_SCAN_ROOTS), several reader threads walk their own unit each, and ONE writer thread persists everything they stream through a bounded queue.Cleanup campaign settings: platform defaults overridable via exo.properties and persisted overrides inSettingService(GLOBAL context).