[
https://issues.apache.org/jira/browse/SLING-3909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14133293#comment-14133293
]
Alexander Klimetschek commented on SLING-3909:
----------------------------------------------
I don't disagree with your use case, all I am saying is to move the modifying
part out of the merged resources into a separate utility/API.
It's not "default" since there is no way to easily switch to a different
behaviour for an application. If you want to have a different logic to modify
e.g. the overlay merged resources, you'd have to a) provide a different mount
path (/mnt/differentoverlay) which is not really clean and b) afaics you'd have
to reimplement a complete new merging resource provider (this can't even be
hooked in through the MergedResourcePicker SPI). You could not reuse neither
the reading merging logic nor the write merging logic.
> Merged ResourceProviders should be optionally modifiable
> --------------------------------------------------------
>
> Key: SLING-3909
> URL: https://issues.apache.org/jira/browse/SLING-3909
> Project: Sling
> Issue Type: Improvement
> Components: Extensions
> Reporter: Justin Edelson
> Assignee: Carsten Ziegeler
> Fix For: Resource Merger 1.2.0
>
>
> This is a continuation of the work originally started in SLING-3420.
> Modification are always done on the "most significant" resource (i.e.
> /apps/foo instead of /libs/foo) as determined by the MergedResourcePicker.
> The algorithm for modification is as follows:
> * Create - if the most significant resource doesn't exist, one is created at
> that path; otherwise an exception is thrown.
> * Delete - if the most significat resource doesn't exist, the hide children
> property is set on the most signfiicant resource's parent. if it does exist,
> it is deleted and the hide children property is set.
> * Property Modifications - most significant resource is created as necessary.
> ** Create - created on most significant resource
> ** Modify - created/updated on most significant resource
> ** Delete - deleted if necessary on most significant resource and hidden.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)