sling-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Konrad Windszus (JIRA)" <j...@apache.org>
Subject [jira] [Created] (SLING-8272) ConfigurationBuilder: Add method to check for the existence of the config
Date Mon, 11 Feb 2019 15:39:00 GMT
Konrad Windszus created SLING-8272:
--------------------------------------

             Summary: 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 Impl 1.4.14, Context-Aware Configuration
API 1.1.2
            Reporter: Konrad Windszus
            Assignee: Konrad Windszus


Sometimes it is desirable to check if a Context Aware Configuration is there at all or not
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(builder);
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