public void execute()

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));
                            }
                        }
                    }
                }
            }
        }
	}