You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Carsten Ziegeler (Jira)" <ji...@apache.org> on 2021/09/27 15:50:00 UTC

[jira] [Comment Edited] (SLING-10840) Sling Servlet Helpers implements @ProviderType interfaces

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

Carsten Ziegeler edited comment on SLING-10840 at 9/27/21, 3:49 PM:
--------------------------------------------------------------------

Most of the issues can be fixed by selecting the right base class, for example the response / request wrappers or AbstractResource

Thats actually not correct, as the request/response wrappers require a request / response object...

Now, these mock classes are dangerous to use - and each time Sling's resource API changes, this bundle needs to be adjusted otherwise it will not resolve. That's why implementing provider type is so problematic.



was (Author: cziegeler):
Most of the issues can be fixed by selecting the right base class, for example the response / request wrappers or AbstractResource


> Sling Servlet Helpers implements @ProviderType interfaces
> ---------------------------------------------------------
>
>                 Key: SLING-10840
>                 URL: https://issues.apache.org/jira/browse/SLING-10840
>             Project: Sling
>          Issue Type: Bug
>          Components: General
>    Affects Versions: Servlet Helpers 1.4.2
>            Reporter: David Gonzalez
>            Priority: Major
>
> When using the Sling Servlet Helpers bundle/API, code quality scans detect that implentations in the Sling Servlet Helpers bundle implement @ProviderType interfaces from OTHER Sling bundles, which is not correct. Here are some fo the examples (though probably not exhaustive) I found when attempting to use ths Servlet Helpers library.
>  
> |The product interface org.apache.sling.api.request.RequestParameter annotated with @ProviderType should not be implemented by custom code. Detected in org.apache.sling.servlethelpers.MockRequestParameter contained in /apps/asset-share-commons-vendor-packages/application/install/org.apache.sling.servlet-helpers-1.4.2.jar.|
> |The product interface org.apache.sling.api.request.RequestParameterMap annotated with @ProviderType should not be implemented by custom code. Detected in org.apache.sling.servlethelpers.MockRequestParameterMap contained in /apps/asset-share-commons-vendor-packages/application/install/org.apache.sling.servlet-helpers-1.4.2.jar.|
> |The product interface org.apache.sling.api.request.RequestPathInfo annotated with @ProviderType should not be implemented by custom code. Detected in org.apache.sling.servlethelpers.MockRequestPathInfo contained in /apps/asset-share-commons-vendor-packages/application/install/org.apache.sling.servlet-helpers-1.4.2.jar.|
> |The product interface org.apache.sling.api.request.RequestProgressTracker annotated with @ProviderType should not be implemented by custom code. Detected in org.apache.sling.servlethelpers.MockRequestProgressTracker contained in /apps/asset-share-commons-vendor-packages/application/install/org.apache.sling.servlet-helpers-1.4.2.jar.|
> |The product interface org.apache.sling.api.SlingHttpServletRequest annotated with @ProviderType should not be implemented by custom code. Detected in org.apache.sling.servlethelpers.MockSlingHttpServletRequest contained in /apps/asset-share-commons-vendor-packages/application/install/org.apache.sling.servlet-helpers-1.4.2.jar.|
> |The product interface org.apache.sling.api.SlingHttpServletResponse annotated with @ProviderType should not be implemented by custom code. Detected in org.apache.sling.servlethelpers.MockSlingHttpServletResponse contained in /apps/asset-share-commons-vendor-packages/application/install/org.apache.sling.servlet-helpers-1.4.2.jar.|
> |The product interface org.apache.sling.api.resource.Resource annotated with @ProviderType should not be implemented by custom code. Detected in org.apache.sling.servlethelpers.internalrequests.ServletResolutionResource contained in /apps/asset-share-commons-vendor-packages/application/install/org.apache.sling.servlet-helpers-1.4.2.jar.|
> Perhaps there needs to be Wrappers for all these classes that are @ConsumerTypes?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)