sling-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefan Seifert (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (SLING-8272) ConfigurationBuilder: Add method to check for the existence of the config
Date Tue, 12 Feb 2019 14:30:00 GMT

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

Stefan Seifert commented on SLING-8272:
---------------------------------------

yes, this could be a definition.
the decision if configuration override should be "has" or "has not" should be taken when preparing
a PR for this one - what seams easier/more clean. i tend a bit to rate has=true when a configuration
override is present.

> ConfigurationBuilder: Add method to check for the existence of the config
> -------------------------------------------------------------------------
>
>                 Key: SLING-8272
>                 URL: https://issues.apache.org/jira/browse/SLING-8272
>             Project: Sling
>          Issue Type: Improvement
>          Components: Extensions
>    Affects Versions: Context-Aware Configuration API 1.1.2, Context-Aware Configuration
Impl 1.4.14
>            Reporter: Konrad Windszus
>            Assignee: Konrad Windszus
>            Priority: Major
>
> Sometimes it is desirable to check if a Context Aware Configuration is there at all via
the high level API. Both methods {{as}} and {{asCollection}} will never return null, as they
will always consider the default values. All other methods require to set at least a name.
> So to simply check if a CAC content resource is existing for a certain annotation class
(defining a Context Aware Configuration) the following code is necessary:
> {code}
> ConfigurationBuilder builder = contentResource.adaptTo(ConfigurationBuilder.class);
> builder.name(<derive name from annotation type>).valueMap().isEmpty();
> {code}
> As there is no method exported to derive the name from an annotation type this would
require additional custom code.
> I propose to add a simple 
> {code}
> boolean has(@NotNull java.lang.Class<T> clazz)
> {code}
> which is only then supposed to return {{true}} in case there is an underlying CAC content
resource which can be adapted to the given class.
> Compare also with https://www.mail-archive.com/dev@sling.apache.org/msg83617.html.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message