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 | 9551bf5a1ee5c9275a26f8ec4021e0b7f5665176 (patch) | |
tree | 9c440724c8563bf927448d91c542469f1e18964b /uui | |
parent | 7a54dffcfbdb0d2e004ad070c35f511cee6642b5 (diff) |
sb129: #i113189# change UNO components to use passive registration
Diffstat (limited to 'uui')
-rw-r--r-- | uui/prj/d.lst | 1 | ||||
-rw-r--r-- | uui/source/services.cxx | 80 | ||||
-rw-r--r-- | uui/util/makefile.mk | 8 | ||||
-rw-r--r-- | uui/util/uui.component | 44 |
4 files changed, 53 insertions, 80 deletions
diff --git a/uui/prj/d.lst b/uui/prj/d.lst index 30c6f812fd5b..46b0118319fb 100644 --- a/uui/prj/d.lst +++ b/uui/prj/d.lst @@ -7,3 +7,4 @@ mkdir: %COMMON_DEST%\bin%_EXT%\hid ..\%__SRC%\lib\iuui.lib %_DEST%\lib%_EXT%\iuui.lib ..\util\uui.xml %_DEST%\xml%_EXT%\uui.xml +..\%__SRC%\misc\uui.component %_DEST%\xml%_EXT%\uui.component diff --git a/uui/source/services.cxx b/uui/source/services.cxx index 95d4d65b6faf..4ceb59c4c389 100644 --- a/uui/source/services.cxx +++ b/uui/source/services.cxx @@ -41,49 +41,6 @@ using namespace com::sun::star::uno; using namespace com::sun::star::lang; using namespace com::sun::star::registry; -namespace { - -sal_Bool writeInfo( void * pRegistryKey, - const OUString & rImplementationName, - Sequence< OUString > const & rServiceNames ) -{ - OUString aKeyName( OUString::createFromAscii( "/" ) ); - aKeyName += rImplementationName; - aKeyName += OUString::createFromAscii( "/UNO/SERVICES" ); - - Reference< XRegistryKey > xKey; - try - { - xKey = static_cast< XRegistryKey * >( - pRegistryKey )->createKey( aKeyName ); - } - catch ( InvalidRegistryException const & ) - { - } - - if ( !xKey.is() ) - { - return sal_False; - } - sal_Bool bSuccess = sal_True; - - for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n ) - { - try - { - xKey->createKey( rServiceNames[ n ] ); - } - catch ( InvalidRegistryException const & ) - { - bSuccess = sal_False; - break; - } - } - return bSuccess; -} - -} // namespace - //============================================================================ // // component_getImplementationEnvironment @@ -99,43 +56,6 @@ component_getImplementationEnvironment(sal_Char const ** pEnvTypeName, //============================================================================ // -// component_writeInfo -// -//============================================================================ - -extern "C" sal_Bool SAL_CALL component_writeInfo(void *, void * pRegistryKey) -{ - return pRegistryKey && - - ////////////////////////////////////////////////////////////////////// - // UUI Interaction Handler. - ////////////////////////////////////////////////////////////////////// - - writeInfo( pRegistryKey, - OUString::createFromAscii( - UUIInteractionHandler::m_aImplementationName ), - UUIInteractionHandler::getSupportedServiceNames_static() ) && - - ////////////////////////////////////////////////////////////////////// - // UUI Interaction Request String Resolver. - ////////////////////////////////////////////////////////////////////// - - writeInfo( pRegistryKey, - OUString::createFromAscii( - UUIInteractionRequestStringResolver::m_aImplementationName ), - UUIInteractionRequestStringResolver::getSupportedServiceNames_static() ) && - - ////////////////////////////////////////////////////////////////////// - // UUI Password Container Interaction Handler. - ////////////////////////////////////////////////////////////////////// - - writeInfo( pRegistryKey, - uui::PasswordContainerInteractionHandler::getImplementationName_Static(), - uui::PasswordContainerInteractionHandler::getSupportedServiceNames_Static() ); -} - -//============================================================================ -// // component_getFactory // //============================================================================ diff --git a/uui/util/makefile.mk b/uui/util/makefile.mk index 163a7bb5502e..8a77e71b5e8d 100644 --- a/uui/util/makefile.mk +++ b/uui/util/makefile.mk @@ -62,3 +62,11 @@ RESLIB1SRSFILES = \ $(SRS)$/source.srs .INCLUDE: target.mk + +ALLTAR : $(MISC)/uui.component + +$(MISC)/uui.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \ + uui.component + $(XSLTPROC) --nonet --stringparam uri \ + '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \ + $(SOLARENV)/bin/createcomponent.xslt uui.component diff --git a/uui/util/uui.component b/uui/util/uui.component new file mode 100644 index 000000000000..0a15ad6eb8e5 --- /dev/null +++ b/uui/util/uui.component @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!--********************************************************************** +* +* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +* +* Copyright 2000, 2010 Oracle and/or its affiliates. +* +* OpenOffice.org - a multi-platform office productivity suite +* +* This file is part of OpenOffice.org. +* +* OpenOffice.org is free software: you can redistribute it and/or modify +* it under the terms of the GNU Lesser General Public License version 3 +* only, as published by the Free Software Foundation. +* +* OpenOffice.org is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU Lesser General Public License version 3 for more details +* (a copy is included in the LICENSE file that accompanied this code). +* +* You should have received a copy of the GNU Lesser General Public License +* version 3 along with OpenOffice.org. If not, see +* <http://www.openoffice.org/license.html> +* for a copy of the LGPLv3 License. +* +**********************************************************************--> + +<component loader="com.sun.star.loader.SharedLibrary" + xmlns="http://openoffice.org/2010/uno-components"> + <implementation + name="com.sun.star.comp.uui.PasswordContainerInteractionHandler"> + <service name="com.sun.star.task.PasswordContainerInteractionHandler"/> + </implementation> + <implementation name="com.sun.star.comp.uui.UUIInteractionHandler"> + <service name="com.sun.star.configuration.backend.InteractionHandler"/> + <service name="com.sun.star.task.InteractionHandler"/> + <service name="com.sun.star.uui.InteractionHandler"/> + </implementation> + <implementation + name="com.sun.star.comp.uui.UUIInteractionRequestStringResolver"> + <service name="com.sun.star.task.InteractionRequestStringResolver"/> + </implementation> +</component> |