-
Type: New Feature
-
Status: Resolved
-
Priority: Blocker
-
Resolution: Fixed
-
Affects Version/s: None
-
Component/s: Retention
-
Release Notes Summary:Retained properties are stored under ecm:retainedProperties system properties on each document instance at the time it becomes a record
-
Epic Link:
-
Tags:
-
Sprint:nxplatform #76, nxplatform #77, nxplatform #78, nxplatform #79
-
Story Points:3
With the introduction of NXP-31396, we'll need a way to let clients and 3rd parties know that some properties of a document are not editable because under retention.
At the time a retention rule is attached to a document, it becomes a record and the record facet along with the record schema (https://github.com/nuxeo/nuxeo-retention/blob/lts-2021/nuxeo-retention/src/main/resources/schemas/record.xsd) is added to the document. We'll store as a property of this schema the list of the metadata to be retained defined from the core schema contribution allowed by NXP-31396.
This list will be available under
document.properties['record:retained properties']
EDIT
We have an issue with the evolution NXP-31396 merged in https://github.com/nuxeo/nuxeo-lts/commit/7ed49bb2d29bd945a7c1d918b13963b8f349db2a#diff-da848c34bfe8aa263fb1e2ec526af1d10dc1f187e8125e92cca23a2c3ff01aacR895
Considering the retainable property extension can evolve over time, let's consider the following flow:
- a contribution makes files:files/*/file a retainable property
- document A with attachments (files:files content) is put under retention
- the initial contribution evolves and files:files/*/file is no longer a retainable
- a user tries to nullify files:files of document A
- it is possible because we check the current contribution, not the retained properties at the time doc A was put under retention
- KO
We should store the retained properties of a doc at the time it is put under retention in a system property to make sure retained properties remains retained whatever the current contribution.
- causes
-
NXP-31665 Fix retainable simple blob list not properly dispatched to the record blob provider
- Resolved
- clones
-
NXP-31503 Inform when a property to retain is empty or not existing
- Resolved
- depends on
-
NXP-31396 Evolve Retention core api to specify a list of blob property to be retained
- Resolved
- is duplicated by
-
NXP-31506 Store the list of properties to retain when a rule is attached to a document
- Resolved