[
https://issues.apache.org/jira/browse/SLING-6655?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15928634#comment-15928634
]
Justin Edelson commented on SLING-6655:
---------------------------------------
These methods exist for loosely typed scripting languages where you don't know
the target class or interface, but just want the related model.
> Remove untyped getModelFrom* methods from ModelFactory
> ------------------------------------------------------
>
> Key: SLING-6655
> URL: https://issues.apache.org/jira/browse/SLING-6655
> Project: Sling
> Issue Type: Wish
> Affects Versions: Sling Models Impl 1.3.0
> Reporter: Dirk Rudolph
>
> As far as I understood the the whole story behind Sling Models API is/was
> that it can be used to adapt ordinary objects to typed objects. With adding
> {{Object getModelFromResource(...)}} and {{getModelFromRequest(...)}} this
> paradigm has been broken. Just looking at the API, what is the purpose of
> that methods? I agree that it makes much sense to have a binding between the
> resourceType of {{Resource}} and maybe even {{SlingHttpServletRequest}} and a
> model, but this resulting into an ordinary object from API perspective makes
> it kind of pointless.
> I propose:
> * mark them as deprecated as already done in SLING-6652
> * let them throw {{UnsupportedOperationException}} to prevent them being used
> * remove them in the next major API release
> * move the logic of "finding the nearest implementation by resourceType* to
> {{ResourceTypeBasedResourcePicker}}
> and for the exporter:
> * if a {{@Model}} has an {{@Exporter}} implicitly registered it with the
> {{implType}} as {{adapterType}}, if not already done
> * use the {{implType}} in the {{ExporterServlet}} to adapt from request or
> {{Resource}} to the model object
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)