How to get page source with attachments into zip

Hello!

Into my extension I need to get page source with attachments;
Page in xwiki/2.1

I’ve found inside LatEx export source example

// Get document
        this.progressManager.startStep(this, "Get the document to export");
        XWikiDocument document = xcontext.getWiki().getDocument(documentReference, xcontext);
        xcontext.setDoc(document);
        this.progressManager.endStep(this);

        // Display document
        this.progressManager.startStep(this, "Render the document to export");
        DocumentDisplayerParameters displayParameters = new DocumentDisplayerParameters();
        displayParameters.setExecutionContextIsolated(true);
        displayParameters.setTransformationContextIsolated(true);
        displayParameters.setContentTranslated(true);
        displayParameters.setTargetSyntax(Syntax.XWIKI_2_1);

        XDOM xdom = this.documentDisplayer.display(document, displayParameters);
        this.progressManager.endStep(this);

        this.progressManager.startStep(this, "Perform the export");
        File file = performExport(documentReference, xdom, exportOptions, xcontext);
        this.progressManager.endStep(this);

        return file;

But don’t understand what do method

protected void performExport(DocumentReference documentReference, XDOM xdom, Map<String, Object> properties)
        throws Exception
    {
        try (OutputFilterStream streamFilter = this.factory.createOutputFilterStream(properties)) {
            LaTeXOutputFilter filter = (LaTeXOutputFilter) streamFilter.getFilter();

            List<SpaceReference> spaces = documentReference.getSpaceReferences();

            filter.beginWiki(documentReference.getWikiReference().getName(), FilterEventParameters.EMPTY);
            for (SpaceReference spaceElement : spaces) {
                filter.beginWikiSpace(spaceElement.getName(), FilterEventParameters.EMPTY);
            }
            filter.beginWikiDocument(documentReference.getName(), FilterEventParameters.EMPTY);
            xdom.traverse((Listener) filter);
            filter.endWikiDocument(documentReference.getName(), FilterEventParameters.EMPTY);
            for (SpaceReference spaceElement : spaces) {
                filter.endWikiSpace(spaceElement.getName(), FilterEventParameters.EMPTY);
            }
            filter.endWiki(documentReference.getWikiReference().getName(), FilterEventParameters.EMPTY);
        }
    }

maybe there is more easily way to save source to file?