public static Xpp3Dom getConfig()

in src/main/java/org/apache/sling/feature/maven/ProjectHelper.java [255:274]


    public static Xpp3Dom getConfig(final Plugin plugin, final String name) {
        final Set<Xpp3Dom> values = new HashSet<>();
        final Xpp3Dom config = plugin == null ? null : (Xpp3Dom) plugin.getConfiguration();
        final Xpp3Dom globalNode = (config == null ? null : config.getChild(name));
        if (globalNode != null && globalNode.getChildCount() > 0) {
            values.add(globalNode);
        }
        for (final PluginExecution exec : plugin.getExecutions()) {
            final Xpp3Dom cfg = (Xpp3Dom) exec.getConfiguration();
            final Xpp3Dom pluginNode = (cfg == null ? null : cfg.getChild(name));
            if (pluginNode != null && pluginNode.getChildCount() > 0) {
                values.add(pluginNode);
            }
        }
        if (values.size() > 1) {
            throw new RuntimeException("More than one value configured in plugin (executions) of " + plugin.getKey()
                    + " for " + name + " : " + values);
        }
        return values.isEmpty() ? null : values.iterator().next();
    }