[
https://issues.apache.org/jira/browse/SLING-1778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12910117#action_12910117
]
Julian Sedding commented on SLING-1778:
---------------------------------------
@Carsten
I didn't look into the ResourceDecorator mechanism, so I don't know if the same
use-case could be implemented that way. But if you have input I'm certainly
very interested.
@Bertrand
The example you gave is precisely what I had in mind and what the patch
achieves.
Additionally, extending your example, assume
/a/foo/4 has property text="four"
Then if /a/foo has property sling:overlayable=true (in addition to
sling:symlinkTarget = /b/bar)
/a/foo/text is "one"
/a/foo/4/text is "four"
/a/foo/4/2/text is "three"
> Symlinks
> --------
>
> Key: SLING-1778
> URL: https://issues.apache.org/jira/browse/SLING-1778
> Project: Sling
> Issue Type: New Feature
> Components: JCR
> Reporter: Julian Sedding
> Attachments: symlinks.patch
>
>
> I have implemented a ResourceProvider, which allows to create symlink nodes
> in the JCR repository. A symlink node has a sling:symlinkTarget property,
> which should contain a valid JCR path. JCR content from the
> sling:symlinkTarget path is then exposed below the symlink node.
> There is a mixin node type, sling:Symlink with a mandatory property
> sling:symlinkTarget and an optional property sling:overlayable. Additionally,
> there is a convenience node type, sling:SymlinkResource, which extends from
> sling:symlinkTarget and nt:unstructured.
> ResourceProvider instances are registered for existing symlinks when the
> bundle is started. Modifications are taken care of via JCR observation.
> To get started:
> * apply the attached patch to a trunk checkout
> * build and install the bundle
> * create a symlink node, pointing to some existing content
> * access the symlink node e.g. via a browser
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.