public void convert()

in src/main/java/org/apache/maven/doxia/DefaultConverter.java [442:481]


    public void convert(InputReaderWrapper input, OutputStreamWrapper output)
            throws UnsupportedFormatException, ConverterException {
        Objects.requireNonNull(input, "input is required");
        Objects.requireNonNull(output, "output is required");

        try {
            startPlexusContainer();
        } catch (PlexusContainerException e) {
            throw new ConverterException("PlexusContainerException: " + e.getMessage(), e);
        }

        try {
            Parser parser;
            try {
                parser = input.getFormat().getParser(plexus, MacroFormatter.forFormat(output.getFormat()));
            } catch (ComponentLookupException e) {
                throw new ConverterException("ComponentLookupException: " + e.getMessage(), e);
            }
            LOGGER.debug("Parser used: {}", parser.getClass().getName());

            SinkFactory sinkFactory;
            try {
                sinkFactory = output.getFormat().getSinkFactory(plexus);
            } catch (ComponentLookupException e) {
                throw new ConverterException("ComponentLookupException: " + e.getMessage(), e);
            }

            Sink sink;
            try {
                sink = sinkFactory.createSink(output.getOutputStream(), output.getEncoding());
            } catch (IOException e) {
                throw new ConverterException("IOException: " + e.getMessage(), e);
            }
            LOGGER.debug("Sink used: {}", sink.getClass().getName());

            parse(parser, input.getReader(), sink);
        } finally {
            stopPlexusContainer();
        }
    }