Kaydet (Commit) c50c240e authored tarafından Noel Grandin's avatar Noel Grandin

fdo#46808, Convert some XMultiServiceFactory to XComponentContext

Change-Id: I409d4820dd772aa761e806ac06a4f210c801fb41
üst 86c1ebc1
...@@ -50,7 +50,7 @@ class ScXMLImportWrapper ...@@ -50,7 +50,7 @@ class ScXMLImportWrapper
com::sun::star::uno::Reference< com::sun::star::task::XStatusIndicator> GetStatusIndicator(); com::sun::star::uno::Reference< com::sun::star::task::XStatusIndicator> GetStatusIndicator();
sal_uInt32 ImportFromComponent(com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory>& xServiceFactory, sal_uInt32 ImportFromComponent(const com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext>& xContext,
com::sun::star::uno::Reference<com::sun::star::frame::XModel>& xModel, com::sun::star::uno::Reference<com::sun::star::frame::XModel>& xModel,
com::sun::star::uno::Reference<com::sun::star::xml::sax::XParser>& xParser, com::sun::star::uno::Reference<com::sun::star::xml::sax::XParser>& xParser,
com::sun::star::xml::sax::InputSource& aParserInput, com::sun::star::xml::sax::InputSource& aParserInput,
...@@ -58,7 +58,7 @@ class ScXMLImportWrapper ...@@ -58,7 +58,7 @@ class ScXMLImportWrapper
com::sun::star::uno::Sequence<com::sun::star::uno::Any>& aArgs, com::sun::star::uno::Sequence<com::sun::star::uno::Any>& aArgs,
sal_Bool bMustBeSuccessfull); sal_Bool bMustBeSuccessfull);
sal_Bool ExportToComponent(com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory>& xServiceFactory, sal_Bool ExportToComponent(const com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext>& xContext,
com::sun::star::uno::Reference<com::sun::star::frame::XModel>& xModel, com::sun::star::uno::Reference<com::sun::star::frame::XModel>& xModel,
com::sun::star::uno::Reference<com::sun::star::xml::sax::XWriter>& xWriter, com::sun::star::uno::Reference<com::sun::star::xml::sax::XWriter>& xWriter,
com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>& aDescriptor, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>& aDescriptor,
......
...@@ -104,7 +104,7 @@ uno::Reference <task::XStatusIndicator> ScXMLImportWrapper::GetStatusIndicator() ...@@ -104,7 +104,7 @@ uno::Reference <task::XStatusIndicator> ScXMLImportWrapper::GetStatusIndicator()
return xStatusIndicator; return xStatusIndicator;
} }
sal_uInt32 ScXMLImportWrapper::ImportFromComponent(uno::Reference<lang::XMultiServiceFactory>& xServiceFactory, sal_uInt32 ScXMLImportWrapper::ImportFromComponent(const uno::Reference<uno::XComponentContext>& xContext,
uno::Reference<frame::XModel>& xModel, uno::Reference<xml::sax::XParser>& xParser, uno::Reference<frame::XModel>& xModel, uno::Reference<xml::sax::XParser>& xParser,
xml::sax::InputSource& aParserInput, xml::sax::InputSource& aParserInput,
const OUString& sComponentName, const OUString& sDocName, const OUString& sComponentName, const OUString& sDocName,
...@@ -169,8 +169,8 @@ sal_uInt32 ScXMLImportWrapper::ImportFromComponent(uno::Reference<lang::XMultiSe ...@@ -169,8 +169,8 @@ sal_uInt32 ScXMLImportWrapper::ImportFromComponent(uno::Reference<lang::XMultiSe
rDoc.SetRangeOverflowType(0); // is modified by the importer if limits are exceeded rDoc.SetRangeOverflowType(0); // is modified by the importer if limits are exceeded
uno::Reference<xml::sax::XDocumentHandler> xDocHandler( uno::Reference<xml::sax::XDocumentHandler> xDocHandler(
xServiceFactory->createInstanceWithArguments( xContext->getServiceManager()->createInstanceWithArgumentsAndContext(
sComponentName, aArgs ), sComponentName, aArgs, xContext ),
uno::UNO_QUERY ); uno::UNO_QUERY );
OSL_ENSURE( xDocHandler.is(), "can't get Calc importer" ); OSL_ENSURE( xDocHandler.is(), "can't get Calc importer" );
uno::Reference<document::XImporter> xImporter( xDocHandler, uno::UNO_QUERY ); uno::Reference<document::XImporter> xImporter( xDocHandler, uno::UNO_QUERY );
...@@ -317,12 +317,7 @@ sal_Bool ScXMLImportWrapper::Import(sal_Bool bStylesOnly, ErrCode& nError) ...@@ -317,12 +317,7 @@ sal_Bool ScXMLImportWrapper::Import(sal_Bool bStylesOnly, ErrCode& nError)
{ {
RTL_LOGFILE_CONTEXT_AUTHOR ( aLog, "sc", "sb99857", "ScXMLImportWrapper::Import" ); RTL_LOGFILE_CONTEXT_AUTHOR ( aLog, "sc", "sb99857", "ScXMLImportWrapper::Import" );
uno::Reference<lang::XMultiServiceFactory> xServiceFactory =
comphelper::getProcessServiceFactory();
uno::Reference<uno::XComponentContext> xContext = comphelper::getProcessComponentContext(); uno::Reference<uno::XComponentContext> xContext = comphelper::getProcessComponentContext();
OSL_ENSURE( xServiceFactory.is(), "got no service manager" );
if( !xServiceFactory.is() )
return false;
xml::sax::InputSource aParserInput; xml::sax::InputSource aParserInput;
if (pMedium) if (pMedium)
...@@ -433,11 +428,10 @@ sal_Bool ScXMLImportWrapper::Import(sal_Bool bStylesOnly, ErrCode& nError) ...@@ -433,11 +428,10 @@ sal_Bool ScXMLImportWrapper::Import(sal_Bool bStylesOnly, ErrCode& nError)
// RDF metadata: ODF >= 1.2 // RDF metadata: ODF >= 1.2
try try
{ {
::comphelper::ComponentContext aContext( xServiceFactory );
const uno::Reference< rdf::XDocumentMetadataAccess > xDMA( const uno::Reference< rdf::XDocumentMetadataAccess > xDMA(
xModel, uno::UNO_QUERY_THROW ); xModel, uno::UNO_QUERY_THROW );
const uno::Reference< rdf::XURI > xBaseURI( const uno::Reference< rdf::XURI > xBaseURI(
::sfx2::createBaseURI( aContext.getUNOContext(), xStorage, aBaseURL, aName ) ); ::sfx2::createBaseURI( xContext, xStorage, aBaseURL, aName ) );
const uno::Reference< task::XInteractionHandler > xHandler( const uno::Reference< task::XInteractionHandler > xHandler(
pObjSh->GetMedium()->GetInteractionHandler() ); pObjSh->GetMedium()->GetInteractionHandler() );
xDMA->loadMetadataFromStorage( xStorage, xBaseURI, xHandler ); xDMA->loadMetadataFromStorage( xStorage, xBaseURI, xHandler );
...@@ -469,7 +463,7 @@ sal_Bool ScXMLImportWrapper::Import(sal_Bool bStylesOnly, ErrCode& nError) ...@@ -469,7 +463,7 @@ sal_Bool ScXMLImportWrapper::Import(sal_Bool bStylesOnly, ErrCode& nError)
RTL_LOGFILE_CONTEXT_TRACE( aLog, "meta import start" ); RTL_LOGFILE_CONTEXT_TRACE( aLog, "meta import start" );
nMetaRetval = ImportFromComponent( nMetaRetval = ImportFromComponent(
xServiceFactory, xModel, xXMLParser, aParserInput, xContext, xModel, xXMLParser, aParserInput,
bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisMetaImporter") bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisMetaImporter")
: OUString("com.sun.star.comp.Calc.XMLMetaImporter"), : OUString("com.sun.star.comp.Calc.XMLMetaImporter"),
"meta.xml", "Meta.xml", aMetaArgs, false); "meta.xml", "Meta.xml", aMetaArgs, false);
...@@ -513,7 +507,7 @@ sal_Bool ScXMLImportWrapper::Import(sal_Bool bStylesOnly, ErrCode& nError) ...@@ -513,7 +507,7 @@ sal_Bool ScXMLImportWrapper::Import(sal_Bool bStylesOnly, ErrCode& nError)
RTL_LOGFILE_CONTEXT_TRACE( aLog, "settings import start" ); RTL_LOGFILE_CONTEXT_TRACE( aLog, "settings import start" );
nSettingsRetval = ImportFromComponent( nSettingsRetval = ImportFromComponent(
xServiceFactory, xModel, xXMLParser, aParserInput, xContext, xModel, xXMLParser, aParserInput,
bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisSettingsImporter") bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisSettingsImporter")
: OUString("com.sun.star.comp.Calc.XMLSettingsImporter"), : OUString("com.sun.star.comp.Calc.XMLSettingsImporter"),
"settings.xml", sEmpty, aSettingsArgs, false); "settings.xml", sEmpty, aSettingsArgs, false);
...@@ -525,7 +519,7 @@ sal_Bool ScXMLImportWrapper::Import(sal_Bool bStylesOnly, ErrCode& nError) ...@@ -525,7 +519,7 @@ sal_Bool ScXMLImportWrapper::Import(sal_Bool bStylesOnly, ErrCode& nError)
{ {
RTL_LOGFILE_CONTEXT_TRACE( aLog, "styles import start" ); RTL_LOGFILE_CONTEXT_TRACE( aLog, "styles import start" );
nStylesRetval = ImportFromComponent(xServiceFactory, xModel, xXMLParser, aParserInput, nStylesRetval = ImportFromComponent(xContext, xModel, xXMLParser, aParserInput,
bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisStylesImporter") bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisStylesImporter")
: OUString("com.sun.star.comp.Calc.XMLStylesImporter"), : OUString("com.sun.star.comp.Calc.XMLStylesImporter"),
OUString("styles.xml"), OUString("styles.xml"),
...@@ -546,7 +540,7 @@ sal_Bool ScXMLImportWrapper::Import(sal_Bool bStylesOnly, ErrCode& nError) ...@@ -546,7 +540,7 @@ sal_Bool ScXMLImportWrapper::Import(sal_Bool bStylesOnly, ErrCode& nError)
RTL_LOGFILE_CONTEXT_TRACE( aLog, "content import start" ); RTL_LOGFILE_CONTEXT_TRACE( aLog, "content import start" );
nDocRetval = ImportFromComponent(xServiceFactory, xModel, xXMLParser, aParserInput, nDocRetval = ImportFromComponent(xContext, xModel, xXMLParser, aParserInput,
bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisContentImporter") bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisContentImporter")
: OUString("com.sun.star.comp.Calc.XMLContentImporter"), : OUString("com.sun.star.comp.Calc.XMLContentImporter"),
OUString("content.xml"), OUString("content.xml"),
...@@ -657,7 +651,7 @@ static bool lcl_HasValidStream(ScDocument& rDoc) ...@@ -657,7 +651,7 @@ static bool lcl_HasValidStream(ScDocument& rDoc)
return false; return false;
} }
sal_Bool ScXMLImportWrapper::ExportToComponent(uno::Reference<lang::XMultiServiceFactory>& xServiceFactory, sal_Bool ScXMLImportWrapper::ExportToComponent(const uno::Reference<uno::XComponentContext>& xContext,
uno::Reference<frame::XModel>& xModel, uno::Reference<xml::sax::XWriter>& xWriter, uno::Reference<frame::XModel>& xModel, uno::Reference<xml::sax::XWriter>& xWriter,
uno::Sequence<beans::PropertyValue>& aDescriptor, const OUString& sName, uno::Sequence<beans::PropertyValue>& aDescriptor, const OUString& sName,
const OUString& sMediaType, const OUString& sComponentName, const OUString& sMediaType, const OUString& sComponentName,
...@@ -704,8 +698,9 @@ sal_Bool ScXMLImportWrapper::ExportToComponent(uno::Reference<lang::XMultiServic ...@@ -704,8 +698,9 @@ sal_Bool ScXMLImportWrapper::ExportToComponent(uno::Reference<lang::XMultiServic
xWriter->setOutputStream( xOut ); xWriter->setOutputStream( xOut );
uno::Reference<document::XFilter> xFilter( uno::Reference<document::XFilter> xFilter(
xServiceFactory->createInstanceWithArguments( sComponentName , aArgs ), xContext->getServiceManager()->createInstanceWithArgumentsAndContext(
uno::UNO_QUERY ); sComponentName , aArgs, xContext ),
uno::UNO_QUERY );
OSL_ENSURE( xFilter.is(), "can't get exporter" ); OSL_ENSURE( xFilter.is(), "can't get exporter" );
uno::Reference<document::XExporter> xExporter( xFilter, uno::UNO_QUERY ); uno::Reference<document::XExporter> xExporter( xFilter, uno::UNO_QUERY );
uno::Reference<lang::XComponent> xComponent( xModel, uno::UNO_QUERY ); uno::Reference<lang::XComponent> xComponent( xModel, uno::UNO_QUERY );
...@@ -774,11 +769,7 @@ sal_Bool ScXMLImportWrapper::Export(sal_Bool bStylesOnly) ...@@ -774,11 +769,7 @@ sal_Bool ScXMLImportWrapper::Export(sal_Bool bStylesOnly)
{ {
RTL_LOGFILE_CONTEXT_AUTHOR ( aLog, "sc", "sb99857", "ScXMLImportWrapper::Export" ); RTL_LOGFILE_CONTEXT_AUTHOR ( aLog, "sc", "sb99857", "ScXMLImportWrapper::Export" );
uno::Reference<lang::XMultiServiceFactory> xServiceFactory(comphelper::getProcessServiceFactory());
uno::Reference<uno::XComponentContext> xContext(comphelper::getProcessComponentContext()); uno::Reference<uno::XComponentContext> xContext(comphelper::getProcessComponentContext());
OSL_ENSURE( xServiceFactory.is(), "got no service manager" );
if( !xServiceFactory.is() )
return false;
uno::Reference<xml::sax::XWriter> xWriter = xml::sax::Writer::create(xContext); uno::Reference<xml::sax::XWriter> xWriter = xml::sax::Writer::create(xContext);
...@@ -899,7 +890,7 @@ sal_Bool ScXMLImportWrapper::Export(sal_Bool bStylesOnly) ...@@ -899,7 +890,7 @@ sal_Bool ScXMLImportWrapper::Export(sal_Bool bStylesOnly)
RTL_LOGFILE_CONTEXT_TRACE( aLog, "meta export start" ); RTL_LOGFILE_CONTEXT_TRACE( aLog, "meta export start" );
bMetaRet = ExportToComponent(xServiceFactory, xModel, xWriter, aDescriptor, bMetaRet = ExportToComponent(xContext, xModel, xWriter, aDescriptor,
OUString("meta.xml"), OUString("meta.xml"),
sTextMediaType, sTextMediaType,
bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisMetaExporter") bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisMetaExporter")
...@@ -940,7 +931,7 @@ sal_Bool ScXMLImportWrapper::Export(sal_Bool bStylesOnly) ...@@ -940,7 +931,7 @@ sal_Bool ScXMLImportWrapper::Export(sal_Bool bStylesOnly)
RTL_LOGFILE_CONTEXT_TRACE( aLog, "styles export start" ); RTL_LOGFILE_CONTEXT_TRACE( aLog, "styles export start" );
bStylesRet = ExportToComponent(xServiceFactory, xModel, xWriter, aDescriptor, bStylesRet = ExportToComponent(xContext, xModel, xWriter, aDescriptor,
OUString("styles.xml"), OUString("styles.xml"),
sTextMediaType, sTextMediaType,
bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisStylesExporter") bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisStylesExporter")
...@@ -964,7 +955,7 @@ sal_Bool ScXMLImportWrapper::Export(sal_Bool bStylesOnly) ...@@ -964,7 +955,7 @@ sal_Bool ScXMLImportWrapper::Export(sal_Bool bStylesOnly)
RTL_LOGFILE_CONTEXT_TRACE( aLog, "content export start" ); RTL_LOGFILE_CONTEXT_TRACE( aLog, "content export start" );
bDocRet = ExportToComponent(xServiceFactory, xModel, xWriter, aDescriptor, bDocRet = ExportToComponent(xContext, xModel, xWriter, aDescriptor,
OUString("content.xml"), OUString("content.xml"),
sTextMediaType, sTextMediaType,
bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisContentExporter") bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisContentExporter")
...@@ -992,7 +983,7 @@ sal_Bool ScXMLImportWrapper::Export(sal_Bool bStylesOnly) ...@@ -992,7 +983,7 @@ sal_Bool ScXMLImportWrapper::Export(sal_Bool bStylesOnly)
RTL_LOGFILE_CONTEXT_TRACE( aLog, "settings export start" ); RTL_LOGFILE_CONTEXT_TRACE( aLog, "settings export start" );
bSettingsRet = ExportToComponent(xServiceFactory, xModel, xWriter, aDescriptor, bSettingsRet = ExportToComponent(xContext, xModel, xWriter, aDescriptor,
OUString("settings.xml"), OUString("settings.xml"),
sTextMediaType, sTextMediaType,
bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisSettingsExporter") bOasis ? OUString("com.sun.star.comp.Calc.XMLOasisSettingsExporter")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment