Files
Michael Weghorn 7189ad0d36 reportdesign: Create XML exporters without UNO ctors
So far, the XML exporters used in
OReportDefinition::storeToStorage and
OReportDefinition::WriteThroughComponent
were created using UNO service constructors.

Move away from that approach/indirection:
Add static helper methods to ORptExport
that can be used to create ORptExport
instances with the relevant parameters
(that were previously passed to the ctor
by the UNO service constructors) and call
these directly to receive the relevant instances.

Drop the now unused UNO constructors.

Pass the `rtl::Reference<rptxml::ORptExport>&`
to OReportDefinition::WriteThroughComponent,
which also avoids the need to query for the relevant
interfaces.

No change in user-observable behavior intended
or seen in a quick test of generating a report
in Base.

Change-Id: Ia84319009e71ef432077a60dd7e44003126334d6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187914
Tested-by: Jenkins
Reviewed-by: Adam Seskunas <adamseskunas@gmail.com>
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2025-07-16 07:47:54 +02:00

82 lines
4.0 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
-->
<component loader="com.sun.star.loader.SharedLibrary" environment="@CPPU_ENV@"
prefix="rpt" xmlns="http://openoffice.org/2010/uno-components">
<implementation name="com.sun.star.comp.report.OFixedLine">
<service name="com.sun.star.report.FixedLine"/>
</implementation>
<implementation name="com.sun.star.comp.report.OFixedText">
<service name="com.sun.star.report.FixedText"/>
</implementation>
<implementation name="com.sun.star.comp.report.OFormatCondition">
<service name="com.sun.star.report.FormatCondition"/>
</implementation>
<implementation name="com.sun.star.comp.report.OFormattedField">
<service name="com.sun.star.report.FormattedField"/>
</implementation>
<implementation name="com.sun.star.comp.report.OFunction">
<service name="com.sun.star.report.Function"/>
</implementation>
<implementation name="com.sun.star.comp.report.OImageControl">
<service name="com.sun.star.report.ImageControl"/>
</implementation>
<implementation name="com.sun.star.comp.report.OReportDefinition">
<service name="com.sun.star.report.ReportDefinition"/>
</implementation>
<implementation name="com.sun.star.comp.report.OReportEngineJFree">
<service name="com.sun.star.report.ReportEngine"/>
</implementation>
<implementation name="com.sun.star.comp.report.Shape">
<service name="com.sun.star.report.Shape"/>
</implementation>
<implementation name="com.sun.star.comp.Report.XMLOasisContentImporter"
constructor="reportdesign_XMLOasisContentImporter_get_implementation">
<service name="com.sun.star.comp.document.ImportFilter"/>
</implementation>
<implementation name="com.sun.star.comp.Report.XMLOasisMetaImporter"
constructor="reportdesign_ORptMetaImportHelper_get_implementation">
<service name="com.sun.star.comp.document.ImportFilter"/>
</implementation>
<implementation name="com.sun.star.comp.Report.XMLOasisSettingsImporter"
constructor="reportdesign_ORptImportHelper_get_implementation">
<service name="com.sun.star.comp.document.ImportFilter"/>
</implementation>
<implementation name="com.sun.star.comp.Report.XMLOasisStylesImporter"
constructor="reportdesign_ORptStylesImportHelper_get_implementation">
<service name="com.sun.star.comp.document.ImportFilter"/>
</implementation>
<implementation name="com.sun.star.comp.report.ExportDocumentHandler"
constructor="reportdesign_ExportDocumentHandler_get_implementation">
<service name="com.sun.star.report.ExportDocumentHandler"/>
</implementation>
<implementation name="com.sun.star.comp.report.ImportDocumentHandler"
constructor="reportdesign_ImportDocumentHandler_get_implementation">
<service name="com.sun.star.report.ImportDocumentHandler"/>
</implementation>
<implementation name="com.sun.star.comp.report.OReportFilter"
constructor="reportdesign_OReportFilter_get_implementation">
<service name="com.sun.star.comp.document.ImportFilter"/>
</implementation>
<implementation name="com.sun.star.comp.report.ORptTypeDetection"
constructor="reportdesign_ORptTypeDetection_get_implementation">
<service name="com.sun.star.document.ExtendedTypeDetection"/>
</implementation>
</component>