Uploaded image for project: 'Sling'
  1. Sling
  2. SLING-9662

Introduce an URI Mapping SPI

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Resolved
    • Major
    • Resolution: Won't Fix
    • None
    • None
    • API
    • None

    Description

      an earlier version used the terms ResourceUri/ResourceToUriMapper (updated this description during the discussion) 

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

      Prerequisite SlingUri: (SLING-9745 to be completed first)

      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.

      SlingUriMapper:

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

      PathToUriMappingService: 

      The new OSGi service to provide path to URI resolution and path to URI mapping. The methods rr.resolve() and rr.map() and should delegate to this service.

       

      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

      Attachments

        Issue Links

          Activity

            People

              henzlerg Georg Henzler
              henzlerg Georg Henzler
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 3h 20m
                  3h 20m