[ 
https://issues.apache.org/jira/browse/SLING-8655?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16916506#comment-16916506
 ] 

Vlad Bailescu commented on SLING-8655:
--------------------------------------

Since externalization is mostly related to the view part (of the MVC), I would 
rather we don't introduce this injector. The raw path can then be used, as 
usual, to get a hold of the resource it points to, while externalization is 
done when rendering the model:

* for HTML, using HTL: something like {code}${model.pagePath @ externalized} 
{code}
* for JSON, using a dedicated serializer: {code}@JsonSerialize(using = 
ExternalizedSerializer.class){code}

> Add an Annotation to Sling Model to mark a property to be Externalized
> ----------------------------------------------------------------------
>
>                 Key: SLING-8655
>                 URL: https://issues.apache.org/jira/browse/SLING-8655
>             Project: Sling
>          Issue Type: New Feature
>          Components: Sling Models
>    Affects Versions: Sling Models API 1.3.8
>            Reporter: Andreas Schaefer
>            Assignee: Andreas Schaefer
>            Priority: Major
>             Fix For: Sling Models API 1.3.10
>
>          Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> For Peregrine CMS we use Sling Models to obtain data in JSon format to be 
> rendered on the client side. This means that the returned content is not 
> externalized aka paths are not mapped to the external view.
> Sling Model should have an Annotation (@ExternalizedPath) that marks a 
> property to be externalized when loaded.
> In order to be flexible the Externalized Path Injector should be pluggable so 
> that customers can add their custom Externalized Path Providers if they 
> choose to do so. By default there is a provider that uses the Resource 
> Resolver's map() function.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Reply via email to