You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Konrad Windszus (JIRA)" <ji...@apache.org> on 2016/11/07 15:57:58 UTC

[jira] [Commented] (SLING-6249) Move ServletResolverConstants to an exported package

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

Konrad Windszus commented on SLING-6249:
----------------------------------------

We have several options here
1) Move the class to the Sling API bundle to {{o.a.s.api.servlets}} and at the same time deprecate {{o.a.s.servlets.resolver.internal.ServletResolverConstants}}.
2) Leave it in the current bundle but move it to a package which is not an impl package and make sure this is exported in the resulting bundle and javadoc is being generated.  At the same time deprecate the same class in {{o.a.s.servlets.resolver.internal.ServletResolverConstants}}.
3) Leave it in the current bundle and in the current package and make sure that javadoc is being generated for the package {{o.a.s.servlets.resolver.internal}}. Still the class would not be exported (as the package is used by some other internal classes) and the javadoc would also contain some really internal classes.

Although option 3) is the quickest solution I personally would prefer the clean option 1). 
Once we have a release of Sling API with that class for some time we should switch to using those in bundle {{o.a.s.servlets.resolver}}.

[~cziegeler] WDYT, since you made did of the commits in that bundle?

> Move ServletResolverConstants to an exported package
> ----------------------------------------------------
>
>                 Key: SLING-6249
>                 URL: https://issues.apache.org/jira/browse/SLING-6249
>             Project: Sling
>          Issue Type: Improvement
>    Affects Versions: Servlets Resolver 2.4.6
>            Reporter: Konrad Windszus
>
> The constants being defined in {{o.a.s.servlets.resolver.internal.ServletResolverConstants}} are not only useful for the servlet resolver bundle itself but basically for every Sling Servlet being defined without the custom Felix SCR annotations. Therefore it would be good to move that to a package which is exported (and therefore part of the public API). Although in reality all constant Strings are inline in Java (which means that there should never be a runtime dependency towards that class) it does not even appear in http://sling.apache.org/apidocs/sling7/ nor in https://sling.apache.org/apidocs/sling7/constant-values.html. Also the constants are not part of the uber-jar being generated for the Sling API as well for AEM (https://docs.adobe.com/docs/en/aem/6-1/develop/dev-tools/ht-projects-maven.html#What%20is%20the%20UberJar?).
> This was first requested in http://www.mail-archive.com/dev@sling.apache.org/msg45467.html and became more important with the advent of OSGi 6 component annotations (see also FELIX-5396).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)