kwin commented on a change in pull request #2: [SLING-8272] Check if Caconfig Node Exists in JCR URL: https://github.com/apache/sling-org-apache-sling-caconfig-api/pull/2#discussion_r277742731
########## File path: src/main/java/org/apache/sling/caconfig/ConfigurationBuilder.java ########## @@ -86,4 +86,15 @@ */ @NotNull <T> Collection<T> asAdaptableCollection(@NotNull Class<T> clazz); + /** + * Check if the configuration node is existing in the JCR. This method checks for the configuration existence based on {@code configName} defined in the + * configuration definition. It checks if the configuration is available for the context path in the current resource hierarchy and if not found, also + * checks in the global fall-back paths configured via {@link org.apache.sling.caconfig.resource.impl.def.DefaultConfigurationResourceResolvingStrategy} + * which by default are {@code /conf/global}, {@code /apps/config} and {@code /libs/config}.This method does not consider the default values provided in + * the configuration definition. + * @param clazz Class that can be adapted from a {@link org.apache.sling.api.resource.Resource} + * @param <T> Annotation class type + * @return True/False based on configuration resource node existence in JCR. + */ + @NotNull <T> boolean has(@NotNull Class<T> clazz); Review comment: The problem is that you cannot easily get the configName from the annotation (as the method for extracting it is not public API), so I would strongly suggest to have two different `has` methods (one taking a string configName and the other one taking the annotation class). ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services