void write()

in src/main/java/org/apache/maven/plugins/ear/ApplicationXmlWriter.java [51:128]


    void write(ApplicationXmlWriterContext context) throws EarPluginException {
        try (Writer w = initializeWriter(context.getDestinationFile())) {
            XMLWriter writer = null;
            if (JavaEEVersion.ONE_DOT_THREE.eq(version)) {
                writer = initializeRootElementOneDotThree(w);
            } else if (JavaEEVersion.ONE_DOT_FOUR.eq(version)) {
                writer = initializeRootElementOneDotFour(w);
            } else if (JavaEEVersion.FIVE.eq(version)) {
                writer = initializeRootElementFive(w);
            } else if (JavaEEVersion.SIX.eq(version)) {
                writer = initializeRootElementSix(w);
            } else if (JavaEEVersion.SEVEN.eq(version)) {
                writer = initializeRootElementSeven(w);
            } else if (JavaEEVersion.EIGHT.eq(version)) {
                writer = initializeRootElementEight(w);
            } else if (JavaEEVersion.NINE.eq(version)) {
                writer = initializeRootElementNine(w);
            } else if (JavaEEVersion.TEN.eq(version)) {
                writer = initializeRootElementTen(w);
            } else if (JavaEEVersion.ELEVEN.eq(version)) {
                writer = initializeRootElementEleven(w);
            }

            // writer is still on root element, so we can still add this attribute
            if (context.getApplicationId() != null) {
                writer.addAttribute("id", context.getApplicationId());
            }

            // As from JavaEE6
            if (version.ge(JavaEEVersion.SIX)) {
                writeApplicationName(context.getApplicationName(), writer);
            }

            // IMPORTANT: the order of the description and display-name elements was
            // reversed between J2EE 1.3 and J2EE 1.4.
            if (version.eq(JavaEEVersion.ONE_DOT_THREE)) {
                writeDisplayName(context.getDisplayName(), writer);
                writeDescription(context.getDescription(), writer);
            } else {
                writeDescription(context.getDescription(), writer);
                writeDisplayName(context.getDisplayName(), writer);
            }

            // As from JavaEE6
            if (version.ge(JavaEEVersion.SIX)) {
                writeInitializeInOrder(context.getInitializeInOrder(), writer);
            }

            // Do not change this unless you really know what you're doing :)
            for (EarModule module : context.getEarModules()) {
                module.appendModule(writer, version.getVersion(), generateModuleId);
            }

            for (SecurityRole securityRole : context.getSecurityRoles()) {
                securityRole.appendSecurityRole(writer);
            }

            if (version.ge(JavaEEVersion.FIVE)) {
                writeLibraryDirectory(context.getLibraryDirectory(), writer);
            }

            if (version.ge(JavaEEVersion.SIX)) {
                for (EnvEntry envEntry : context.getEnvEntries()) {
                    envEntry.appendEnvEntry(writer);
                }
                for (EjbRef ejbEntry : context.getEjbEntries()) {
                    ejbEntry.appendEjbRefEntry(writer);
                }
                for (ResourceRef resourceEntry : context.getResourceRefs()) {
                    resourceEntry.appendResourceRefEntry(writer);
                }
            }

            writer.endElement();
        } catch (IOException ex) {
            // ignore
        }
    }