You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Georg Henzler (Jira)" <ji...@apache.org> on 2020/08/14 05:31:00 UTC

[jira] [Created] (SLING-9662) Introduce a Resource Mapping SPI

Georg Henzler created SLING-9662:
------------------------------------

             Summary: Introduce a Resource Mapping SPI
                 Key: SLING-9662
                 URL: https://issues.apache.org/jira/browse/SLING-9662
             Project: Sling
          Issue Type: New Feature
          Components: API
            Reporter: Georg Henzler
            Assignee: Georg Henzler


Introduce a simple SPI that allows to contribute to the resource resolver's map() and resolve() methods: 

*ResourceUri:*

General purpose class to represent a ResourceUri (like e.g. a link in an html <a> tag). Immutable itself but adjustable using the builder pattern. Part of the Sling API and can be used anywhere to simplify handling/modification of Sling ResourceUri. Implements RequestPathInfo. ResourceUri can be created easily from a String, a Request, a Resource, a URI or a RequestPathInfo.

*ResourceToUriMapper:*

SPI interface to be implemented as OSGi Service. All registered services build a conceptual chain sorted by service ranking. All registered services build a conceptual chain sorted by service ranking. The resource link is passed through the chain while any ResourceToUriMapper chain member may or may not make adjustments to the resource link.
rr.resolve() passes through the chain starting at the ResourceToUriMapper with the <strong>highest</strong> service ranking and rr.map() passes through the chain starting at the ResourceToUriMapper with the <strong>lowest</strong> service ranking

_Mailing List References:_
https://www.mail-archive.com/dev@sling.apache.org/msg93537.html 
https://www.mail-archive.com/dev@sling.apache.org/msg87736.html



--
This message was sent by Atlassian Jira
(v8.3.4#803005)