in src/main/java/org/apache/sling/feature/extension/apiregions/analyser/CheckConfigurationApi.java [43:87]
public void execute(final AnalyserTaskContext context) throws Exception {
final FeatureValidator validator = new FeatureValidator();
validator.setFeatureProvider(context.getFeatureProvider());
final ConfigurationApi api = ConfigurationApi.getConfigurationApi(context.getFeature());
if ( api == null ) {
context.reportExtensionWarning(ConfigurationApi.EXTENSION_NAME, "Configuration api is not specified, unable to validate feature");
} else {
final FeatureValidationResult result = validator.validate(context.getFeature(), api);
for(final Map.Entry<String, PropertyValidationResult> entry : result.getFrameworkPropertyResults().entrySet()) {
for(final String warn : entry.getValue().getWarnings()) {
context.reportWarning("Framework property " + entry.getKey() + " : " + warn);
}
if ( !entry.getValue().isValid() ) {
for(final String err : entry.getValue().getErrors()) {
context.reportError("Framework property " + entry.getKey() + " : " + err);
}
}
}
for(final Map.Entry<String, ConfigurationValidationResult> entry : result.getConfigurationResults().entrySet()) {
for(final String warn : entry.getValue().getWarnings()) {
context.reportConfigurationWarning(context.getFeature().getConfigurations().getConfiguration(entry.getKey()), warn);
}
for(final Map.Entry<String, PropertyValidationResult> propEntry : entry.getValue().getPropertyResults().entrySet()) {
for(final String warn : propEntry.getValue().getWarnings()) {
context.reportConfigurationWarning(context.getFeature().getConfigurations().getConfiguration(entry.getKey()),
"Property ".concat(propEntry.getKey()).concat(" - ").concat(warn));
}
}
if ( !entry.getValue().isValid() ) {
for(final String err : entry.getValue().getErrors()) {
context.reportConfigurationError(context.getFeature().getConfigurations().getConfiguration(entry.getKey()), err);
}
for(final Map.Entry<String, PropertyValidationResult> propEntry : entry.getValue().getPropertyResults().entrySet()) {
if ( !propEntry.getValue().isValid() ) {
for(final String err : propEntry.getValue().getErrors()) {
context.reportConfigurationError(context.getFeature().getConfigurations().getConfiguration(entry.getKey()),
"Property ".concat(propEntry.getKey()).concat(" - ").concat(err));
}
}
}
}
}
}
}