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/[email protected]/msg83617.html.



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

Reply via email to