[
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)