IMHO  it is the other way around: If only few/one bundle are supposed to 
implement the interface rather annotate with ProviderType (compare with 
https://osgi.org/javadoc/osgi.annotation/7.0.0/org/osgi/annotation/versioning/ProviderType.html
 
<https://osgi.org/javadoc/osgi.annotation/7.0.0/org/osgi/annotation/versioning/ProviderType.html>
 and 
https://github.com/apache/sling-org-apache-sling-contentparser-api/blob/master/src/main/java/org/apache/sling/contentparser/api/ParserHelper.java
 
<https://github.com/apache/sling-org-apache-sling-contentparser-api/blob/master/src/main/java/org/apache/sling/contentparser/api/ParserHelper.java>).
But I don't think it does matter for final classes as you anyhow cannot 
extend/implement them!
Konrad

> On 24. Jul 2019, at 18:40, Radu Cotescu <r...@apache.org> wrote:
> 
> Hi Stefan,
> 
>> On 24 Jul 2019, at 18:29, Stefan Seifert <sseif...@pro-vision.de> wrote:
>> 
>> p.s. i think the annotation in [1] should be @ProviderType, not 
>> @ConsumerType - but i think this can be changed in future releases without 
>> breaking anything.
>> [1] 
>> https://github.com/apache/sling-org-apache-sling-contentparser-api/blob/master/src/main/java/org/apache/sling/contentparser/api/ParserHelper.java
>>  
>> <https://github.com/apache/sling-org-apache-sling-contentparser-api/blob/master/src/main/java/org/apache/sling/contentparser/api/ParserHelper.java>
> The class is not supposed to be implemented, so IMO this is a Consumer, 
> right? The ConsumerType is actually the default assumed by most OSGi plugins 
> if I remember correctly, so annotating this final class with ConsumerType was 
> just a pedantic move on my part.
> 
> Cheers,
> Radu

Reply via email to