void addComponentsXml()

in src/main/java/org/apache/maven/plugins/assembly/filter/ComponentsXmlArchiverFileFilter.java [63:88]


    void addComponentsXml(final Reader componentsReader) throws XmlPullParserException, IOException {
        Xpp3Dom newDom = Xpp3DomBuilder.build(componentsReader);

        if (newDom != null) {
            newDom = newDom.getChild("components");
        }

        if (newDom != null) {
            final Xpp3Dom[] children = newDom.getChildren();

            for (final Xpp3Dom component : children) {
                if (components == null) {
                    components = new LinkedHashMap<>();
                }

                final String role = component.getChild("role").getValue();
                final Xpp3Dom child = component.getChild("role-hint");
                final String roleHint = child != null ? child.getValue() : "";

                final String key = role + roleHint;
                if (!components.containsKey(key)) {
                    components.put(key, component);
                }
            }
        }
    }