-
Type: New Feature
-
Status: Resolved
-
Priority: Minor
-
Resolution: Fixed
-
Affects Version/s: None
-
Component/s: Retention
-
Release Notes Summary:It is now possible to retain other properties than file:content
-
Release Notes Description:
-
Epic Link:
-
Tags:
-
Team:PLATFORM
-
Sprint:nxplatform #75, nxplatform #76, nxplatform #77, nxplatform #78
-
Story Points:8
Today, the core session method to retain a document is AbstractSession#setRetainUntilsetRetainUntil(DocumentRef docRef, Calendar retainUntil, String comment) which only retains the main blob.
We'd like to somehow specify a list of blob properties to be retained instead.
To do so, we will add the ability to tell that a given property is retainable at the schema extension point of the type service e.g.:
<component name="test-retain-files"> <require>org.nuxeo.ecm.core.CoreExtensions</require> <extension target="org.nuxeo.ecm.core.schema.TypeService" point="schema"> <property schema="files" name="files/*/file" retainable="true" /> </extension> </component>
The above contribution will forbid the edition of a document's attachments (files:files property) under retention or legal hold the same way you can't edit the main blob (file:content property) of such document.
In addition, we need to evolve the DefaultBlobDispatcher implementation so that it can also move to the blob store dedicated to the record's blobs, the blob property that will be tagged retainble. (see https://doc.nuxeo.com/nxdoc/file-storage-configuration/ and https://doc.nuxeo.com/nxdoc/nuxeo-retention-installation-compliance/#through-xml-configuration-file)