public static void generateSchema()

in log4j-docgen/src/main/java/org/apache/logging/log4j/docgen/generator/SchemaGenerator.java [66:88]


    public static void generateSchema(final SchemaGeneratorArgs args) throws XMLStreamException {
        requireNonNull(args, "args");
        try {
            final List<PluginSet> extendedSets = Stream.concat(BaseTypes.PLUGIN_SETS.stream(), args.pluginSets.stream())
                    .collect(Collectors.toList());
            final TypeLookup lookup = TypeLookup.of(extendedSets, args.classNameFilter);
            final XMLOutputFactory factory = XMLOutputFactory.newFactory();
            @Nullable final Path schemaFileParent = args.schemaFile.getParent();
            if (schemaFileParent != null) {
                Files.createDirectories(schemaFileParent);
            }
            try (final OutputStream schemaPathOutputStream = Files.newOutputStream(args.schemaFile)) {
                final XMLStreamWriter writer = factory.createXMLStreamWriter(schemaPathOutputStream, CHARSET_NAME);
                try {
                    writeSchema(args.schemaVersion, lookup, writer);
                } finally {
                    writer.close();
                }
            }
        } catch (final IOException error) {
            throw new XMLStreamException(error);
        }
    }