diff options
author | sb <sb@openoffice.org> | 2010-09-10 13:10:07 +0200 |
---|---|---|
committer | sb <sb@openoffice.org> | 2010-09-10 13:10:07 +0200 |
commit | 5dbc43ead1b7ff5fa0c1f6756a9ca6062c48d033 (patch) | |
tree | 5edda4f51842da35f56ef41ca0b6ce8d98f14d01 /forms/source/misc | |
parent | ec38ffb43215161d6f0f8769f870e76850c8161c (diff) |
sb129: #i113189# change UNO components to use passive registration
Diffstat (limited to 'forms/source/misc')
-rw-r--r-- | forms/source/misc/services.cxx | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/forms/source/misc/services.cxx b/forms/source/misc/services.cxx index dbda0ae3896d..9a38d49e3e67 100644 --- a/forms/source/misc/services.cxx +++ b/forms/source/misc/services.cxx @@ -283,22 +283,6 @@ void ensureClassInfos() } -//--------------------------------------------------------------------------------------- -void registerServiceProvider(const ::rtl::OUString& _rServiceImplName, const Sequence< ::rtl::OUString >& _rServices, XRegistryKey* _pKey) -{ - ::rtl::OUString sMainKeyName = ::rtl::OUString::createFromAscii("/"); - sMainKeyName += _rServiceImplName; - sMainKeyName += ::rtl::OUString::createFromAscii("/UNO/SERVICES"); - Reference< XRegistryKey > xNewKey = _pKey->createKey(sMainKeyName); - OSL_ENSURE(xNewKey.is(), "forms::registerProvider : could not create a registry key !"); - if (!xNewKey.is()) - return; - - const ::rtl::OUString* pSupportedServices = _rServices.getConstArray(); - for (sal_Int32 i=0; i<_rServices.getLength(); ++i, ++pSupportedServices) - xNewKey->createKey(*pSupportedServices); -} - //======================================================================================= extern "C" { @@ -342,57 +326,6 @@ SAL_DLLPUBLIC_EXPORT void SAL_CALL component_getImplementationEnvironment(const } //--------------------------------------------------------------------------------------- -SAL_DLLPUBLIC_EXPORT sal_Bool SAL_CALL component_writeInfo(void* _pServiceManager, XRegistryKey* _pRegistryKey) -{ - if (_pRegistryKey) - { - try - { - // ======================================================================== - // the real way - use the OModule - createRegistryInfo_FORMS(); - if ( !::frm::OFormsModule::writeComponentInfos( - static_cast<XMultiServiceFactory*>( _pServiceManager ), - static_cast<XRegistryKey*>( _pRegistryKey ) ) - ) - return sal_False; - - // ======================================================================== - // a lot of stuff which is implemented "manually" here in this file - - // collect the class infos - ensureClassInfos(); - - // both our static sequences should have the same length ... - sal_Int32 nClasses = s_aClassImplementationNames.getLength(); - OSL_ENSURE(s_aClassServiceNames.getLength() == nClasses, - "forms::component_writeInfo : invalid class infos !"); - - // loop through the sequences and register the service providers - const ::rtl::OUString* pClasses = s_aClassImplementationNames.getConstArray(); - const Sequence< ::rtl::OUString >* pServices = s_aClassServiceNames.getConstArray(); - - for (sal_Int32 i=0; i<nClasses; ++i, ++pClasses, ++pServices) - registerServiceProvider(*pClasses, *pServices, _pRegistryKey); - - s_aClassImplementationNames.realloc(0); - s_aClassServiceNames.realloc(0); - s_aFactories.realloc(0); - - return sal_True; - } - catch ( InvalidRegistryException& ) - { - OSL_ENSURE(sal_False, "forms::component_writeInfo : InvalidRegistryException !"); - } - } - s_aClassImplementationNames.realloc(0); - s_aClassServiceNames.realloc(0); - s_aFactories.realloc(0); - return sal_False; -} - -//--------------------------------------------------------------------------------------- SAL_DLLPUBLIC_EXPORT void* SAL_CALL component_getFactory(const sal_Char* _pImplName, XMultiServiceFactory* _pServiceManager, void* /*_pRegistryKey*/) { if (!_pServiceManager || !_pImplName) |