summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2015-03-24 15:22:35 +0100
committerStephan Bergmann <sbergman@redhat.com>2015-03-24 18:08:39 +0100
commitc6dcd7b7f392ef47b2e66445239ce867e51d5adb (patch)
tree2eed08975ce69c4e00d4ab0530eb1222622edab4
parentf17568f9f3ea6cded3fe13437977ef841d56a7c1 (diff)
Fix various Windows-only XServiceInfo implementations
...to match what is recorded in the .component files Change-Id: Ibc5bb0575f3869317e4d14614cf1dad0af728ddc
-rw-r--r--embedserv/source/embed/servprov.cxx60
-rw-r--r--embedserv/source/inc/servprov.hxx25
-rw-r--r--extensions/source/ole/servprov.cxx90
-rw-r--r--extensions/source/ole/servprov.hxx43
-rw-r--r--shell/source/win32/SysShentry.cxx2
-rw-r--r--shell/source/win32/simplemail/smplmail.component2
-rw-r--r--shell/source/win32/simplemail/smplmailentry.cxx2
-rw-r--r--shell/source/win32/simplemail/smplmailsuppl.cxx2
-rw-r--r--shell/source/win32/syssh.component2
9 files changed, 111 insertions, 117 deletions
diff --git a/embedserv/source/embed/servprov.cxx b/embedserv/source/embed/servprov.cxx
index 006b4ed9c101..775a31f06070 100644
--- a/embedserv/source/embed/servprov.cxx
+++ b/embedserv/source/embed/servprov.cxx
@@ -24,8 +24,7 @@
#include "servprov.hxx"
#include "embeddoc.hxx"
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <cppuhelper/typeprovider.hxx>
-#include <cppuhelper/queryinterface.hxx>
+#include <cppuhelper/supportsservice.hxx>
#include <osl/diagnose.h>
#include <osl/mutex.hxx>
#include <osl/thread.h>
@@ -121,62 +120,25 @@ EmbedServer_Impl::~EmbedServer_Impl()
}
}
-// XInterface --------------------------------------------------
-uno::Any SAL_CALL
-EmbedServer_Impl::queryInterface(
- const uno::Type& aType )
- throw(
- uno::RuntimeException
- )
+OUString EmbedServer_Impl::getImplementationName()
+ throw (css::uno::RuntimeException, std::exception)
{
- uno::Any a=
- ::cppu::queryInterface(
- aType, static_cast<lang::XTypeProvider*>(this));
- if( a == uno::Any())
- return OWeakObject::queryInterface( aType);
- else
- return a;
+ return OUString("com.sun.star.comp.ole.EmbedServer");
}
-void SAL_CALL EmbedServer_Impl::acquire( ) throw(uno::RuntimeException)
+sal_Bool EmbedServer_Impl::supportsService(OUString const & ServiceName)
+ throw (css::uno::RuntimeException, std::exception)
{
- OWeakObject::acquire();
+ return cppu::supportsService(this, ServiceName);
}
-void SAL_CALL EmbedServer_Impl::release( ) throw (uno::RuntimeException)
+css::uno::Sequence<OUString> EmbedServer_Impl::getSupportedServiceNames()
+ throw (css::uno::RuntimeException, std::exception)
{
- OWeakObject::release();
+ return css::uno::Sequence<OUString>{
+ "com.sun.star.document.OleEmbeddedServerRegistration"};
}
-
-// XTypeProvider --------------------------------------------------
-uno::Sequence< uno::Type > SAL_CALL
-EmbedServer_Impl::getTypes( )
- throw(
- uno::RuntimeException
- )
-{
- static ::cppu::OTypeCollection *pCollection = 0;
- if( ! pCollection )
- {
- ::osl::MutexGuard guard( ::osl::Mutex::getGlobalMutex() );
- if( ! pCollection )
- {
- static ::cppu::OTypeCollection collection(
- cppu::UnoType<uno::XWeak>::get(),
- cppu::UnoType<lang::XTypeProvider>::get() );
- pCollection = &collection;
- }
- }
- return (*pCollection).getTypes();
-}
-
-uno::Sequence< sal_Int8 > SAL_CALL EmbedServer_Impl::getImplementationId() throw(uno::RuntimeException)
-{
- return css::uno::Sequence<sal_Int8>();
-}
-
-
// EmbedProviderFactory_Impl
EmbedProviderFactory_Impl::EmbedProviderFactory_Impl(const uno::Reference<lang::XMultiServiceFactory>& xFactory, const GUID* pGuid)
diff --git a/embedserv/source/inc/servprov.hxx b/embedserv/source/inc/servprov.hxx
index 1c0a012b26c8..c74458d0ec20 100644
--- a/embedserv/source/inc/servprov.hxx
+++ b/embedserv/source/inc/servprov.hxx
@@ -25,29 +25,26 @@
#include <com/sun/star/uno/Reference.h>
#include <com/sun/star/uno/Sequence.h>
#include <com/sun/star/uno/XInterface.hpp>
-#include <com/sun/star/lang/XTypeProvider.hpp>
-#include <cppuhelper/weak.hxx>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <cppuhelper/implbase.hxx>
class EmbedProviderFactory_Impl;
-class EmbedServer_Impl : public ::cppu::OWeakObject, ::com::sun::star::lang::XTypeProvider
+class EmbedServer_Impl: public cppu::WeakImplHelper<css::lang::XServiceInfo>
{
public:
EmbedServer_Impl( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > &xFactory );
virtual ~EmbedServer_Impl();
- // XInterface
- virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType )
- throw(::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL acquire() throw ();
- virtual void SAL_CALL release() throw ();
-
- // XTypeProvider
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( )
- throw(::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
- throw(::com::sun::star::uno::RuntimeException);
+ OUString SAL_CALL getImplementationName()
+ throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
+
+ sal_Bool SAL_CALL supportsService(OUString const & ServiceName)
+ throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
+
+ css::uno::Sequence<OUString> SAL_CALL getSupportedServiceNames()
+ throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
protected:
diff --git a/extensions/source/ole/servprov.cxx b/extensions/source/ole/servprov.cxx
index 39f4c647326a..d49414d0bc9a 100644
--- a/extensions/source/ole/servprov.cxx
+++ b/extensions/source/ole/servprov.cxx
@@ -30,6 +30,7 @@
#include "unoobjw.hxx"
#include "oleobjw.hxx"
#include <cppuhelper/queryinterface.hxx>
+#include <cppuhelper/supportsservice.hxx>
using namespace cppu;
using namespace osl;
@@ -424,6 +425,30 @@ Any SAL_CALL OleConverter_Impl2::createBridge(const Any& modelDepObject,
return ret;
}
+OUString OleConverter_Impl2::getImplementationName()
+ throw (css::uno::RuntimeException, std::exception)
+{
+ return m_nUnoWrapperClass == INTERFACE_OLE_WRAPPER_IMPL
+ ? OUString("com.sun.star.comp.ole.OleConverter2")
+ : OUString("com.sun.star.comp.ole.OleConverterVar1");
+}
+
+sal_Bool OleConverter_Impl2::supportsService(OUString const & ServiceName)
+ throw (css::uno::RuntimeException, std::exception)
+{
+ return cppu::supportsService(this, ServiceName);
+}
+
+css::uno::Sequence<OUString> OleConverter_Impl2::getSupportedServiceNames()
+ throw (css::uno::RuntimeException, std::exception)
+{
+ return m_nUnoWrapperClass == INTERFACE_OLE_WRAPPER_IMPL
+ ? css::uno::Sequence<OUString>{
+ "com.sun.star.bridge.OleBridgeSupplier2",
+ "com.sun.star.bridge.oleautomation.BridgeSupplier"}
+ : css::uno::Sequence<OUString>{
+ "com.sun.star.bridge.OleBridgeSupplierVar1"};
+}
// XInitialize ------------------------------------------------------------------------------
// the first argument is an XMultiServiceFactory if at all
@@ -496,10 +521,24 @@ Sequence< OUString > SAL_CALL OleClient_Impl::getAvailableServiceNames() thro
return ret;
}
-
OUString OleClient_Impl::getImplementationName()
+ throw (css::uno::RuntimeException, std::exception)
+{
+ return OUString("com.sun.star.comp.ole.OleClient");
+}
+
+sal_Bool OleClient_Impl::supportsService(OUString const & ServiceName)
+ throw (css::uno::RuntimeException, std::exception)
+{
+ return cppu::supportsService(this, ServiceName);
+}
+
+css::uno::Sequence<OUString> OleClient_Impl::getSupportedServiceNames()
+ throw (css::uno::RuntimeException, std::exception)
{
- return OUString(reinterpret_cast<const sal_Unicode*>(L"com.sun.star.comp.ole.OleClient"));
+ return css::uno::Sequence<OUString>{
+ "com.sun.star.bridge.OleObjectFactory",
+ "com.sun.star.bridge.oleautomation.Factory"};
}
Reference<XInterface> SAL_CALL OleClient_Impl::createInstance(const OUString& ServiceSpecifier) throw (Exception, RuntimeException )
@@ -612,48 +651,27 @@ OleServer_Impl::~OleServer_Impl()
m_wrapperList.pop_front();
}
}
-// XInterface --------------------------------------------------
-Any SAL_CALL OleServer_Impl::queryInterface( const Type& aType ) throw(RuntimeException)
-{
- Any a= ::cppu::queryInterface( aType, static_cast<XTypeProvider*>(this));
- if( a == Any())
- return OWeakObject::queryInterface( aType);
- else
- return a;
-}
-void SAL_CALL OleServer_Impl::acquire( ) throw()
-{
- OWeakObject::acquire();
-}
-void SAL_CALL OleServer_Impl::release( ) throw ()
+
+OUString OleServer_Impl::getImplementationName()
+ throw (css::uno::RuntimeException, std::exception)
{
- OWeakObject::release();
+ return OUString("com.sun.star.comp.ole.OleServer");
}
-
-// XTypeProvider --------------------------------------------------
-Sequence< Type > SAL_CALL OleServer_Impl::getTypes( ) throw(RuntimeException)
+sal_Bool OleServer_Impl::supportsService(OUString const & ServiceName)
+ throw (css::uno::RuntimeException, std::exception)
{
- static OTypeCollection *pCollection = 0;
- if( ! pCollection )
- {
- MutexGuard guard( Mutex::getGlobalMutex() );
- if( ! pCollection )
- {
- static OTypeCollection collection(
- cppu::UnoType<XWeak>::get(),
- cppu::UnoType<XTypeProvider>::get() );
- pCollection = &collection;
- }
- }
- return (*pCollection).getTypes();
+ return cppu::supportsService(this, ServiceName);
}
-Sequence< sal_Int8 > SAL_CALL OleServer_Impl::getImplementationId() throw(RuntimeException)
+
+css::uno::Sequence<OUString> OleServer_Impl::getSupportedServiceNames()
+ throw (css::uno::RuntimeException, std::exception)
{
- return css::uno::Sequence<sal_Int8>();
+ return css::uno::Sequence<OUString>{
+ "com.sun.star.bridge.OleApplicationRegistration",
+ "com.sun.star.bridge.oleautomation.ApplicationRegistration"};
}
-
sal_Bool OleServer_Impl::provideService(const Reference<XSingleServiceFactory>& xSFact, GUID* guid)
{
IClassFactoryWrapper* pFac = new ProviderOleWrapper_Impl( m_smgr, xSFact, guid);
diff --git a/extensions/source/ole/servprov.hxx b/extensions/source/ole/servprov.hxx
index 24ab22f48f2b..9046a5a6d68d 100644
--- a/extensions/source/ole/servprov.hxx
+++ b/extensions/source/ole/servprov.hxx
@@ -21,7 +21,8 @@
#define INCLUDED_EXTENSIONS_SOURCE_OLE_SERVPROV_HXX
#include <com/sun/star/lang/XInitialization.hpp>
-#include <cppuhelper/implbase2.hxx>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <cppuhelper/implbase.hxx>
#include "ole2uno.hxx"
#include "unoconversionutilities.hxx"
@@ -164,7 +165,7 @@ protected:
// latter for OleBridgeSupplierVar1.
// The m_nComWrapperClass specifies the class which is used as wrapper for COM interfaces.
// Currently there is only one class available ( IUnknownWrapper_Impl).
-class OleConverter_Impl2 : public WeakImplHelper2<XBridgeSupplier2, XInitialization>,
+class OleConverter_Impl2 : public WeakImplHelper<XBridgeSupplier2, XInitialization, css::lang::XServiceInfo>,
public UnoConversionUtilities<OleConverter_Impl2>
{
public:
@@ -183,6 +184,15 @@ public:
// XInitialization
virtual void SAL_CALL initialize( const Sequence< Any >& aArguments ) throw(Exception, RuntimeException);
+ OUString SAL_CALL getImplementationName()
+ throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
+
+ sal_Bool SAL_CALL supportsService(OUString const & ServiceName)
+ throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
+
+ css::uno::Sequence<OUString> SAL_CALL getSupportedServiceNames()
+ throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
+
// Abstract struct UnoConversionUtilities
virtual Reference< XInterface > createUnoWrapperInstance();
virtual Reference< XInterface > createComWrapperInstance();
@@ -200,7 +210,7 @@ protected:
*****************************************************************************/
-class OleClient_Impl : public WeakImplHelper1<XMultiServiceFactory>,
+class OleClient_Impl : public WeakImplHelper<XMultiServiceFactory, css::lang::XServiceInfo>,
public UnoConversionUtilities<OleClient_Impl>
{
public:
@@ -212,12 +222,19 @@ public:
virtual Reference<XInterface> SAL_CALL createInstanceWithArguments(const OUString& ServiceSpecifier, const Sequence< Any >& Arguments) throw (Exception, RuntimeException);
Sequence< OUString > SAL_CALL getAvailableServiceNames() throw (RuntimeException);
+ OUString SAL_CALL getImplementationName()
+ throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
+
+ sal_Bool SAL_CALL supportsService(OUString const & ServiceName)
+ throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
+
+ css::uno::Sequence<OUString> SAL_CALL getSupportedServiceNames()
+ throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
+
// Abstract struct UnoConversionUtilities
virtual Reference< XInterface > createUnoWrapperInstance();
virtual Reference< XInterface > createComWrapperInstance();
-
- OUString getImplementationName();
protected:
Reference<XBridgeSupplier2> m_bridgeSupplier;
};
@@ -233,20 +250,20 @@ protected:
*****************************************************************************/
-class OleServer_Impl : public OWeakObject, XTypeProvider
+class OleServer_Impl : public cppu::WeakImplHelper<css::lang::XServiceInfo>
{
public:
OleServer_Impl( const Reference<XMultiServiceFactory> &smgr);
~OleServer_Impl();
- // XInterface
- virtual Any SAL_CALL queryInterface( const Type& aType ) throw(RuntimeException);
- virtual void SAL_CALL acquire( ) throw ();
- virtual void SAL_CALL release( ) throw ();
+ OUString SAL_CALL getImplementationName()
+ throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
+
+ sal_Bool SAL_CALL supportsService(OUString const & ServiceName)
+ throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
- // XTypeProvider
- virtual Sequence< Type > SAL_CALL getTypes( ) throw(RuntimeException);
- virtual Sequence< sal_Int8 > SAL_CALL getImplementationId() throw(RuntimeException);
+ css::uno::Sequence<OUString> SAL_CALL getSupportedServiceNames()
+ throw (css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
protected:
diff --git a/shell/source/win32/SysShentry.cxx b/shell/source/win32/SysShentry.cxx
index 6d324b0f6a4a..a0551ad0ed3a 100644
--- a/shell/source/win32/SysShentry.cxx
+++ b/shell/source/win32/SysShentry.cxx
@@ -34,7 +34,7 @@ using namespace ::cppu ;
using com::sun::star::system::XSystemShellExecute;
#define SYSSHEXEC_SERVICE_NAME "com.sun.star.system.SystemShellExecute"
-#define SYSSHEXEC_IMPL_NAME "com.sun.star.system.SystemShellExecute"
+#define SYSSHEXEC_IMPL_NAME "com.sun.star.sys.shell.SystemShellExecute"
diff --git a/shell/source/win32/simplemail/smplmail.component b/shell/source/win32/simplemail/smplmail.component
index c37a46ee8830..556c4099b842 100644
--- a/shell/source/win32/simplemail/smplmail.component
+++ b/shell/source/win32/simplemail/smplmail.component
@@ -19,7 +19,7 @@
<component loader="com.sun.star.loader.SharedLibrary" environment="@CPPU_ENV@"
prefix="smplmail" xmlns="http://openoffice.org/2010/uno-components">
- <implementation name="com.sun.star.system.SimpleSystemMail">
+ <implementation name="com.sun.star.sys.shell.SimpleSystemMail">
<service name="com.sun.star.system.SimpleSystemMail"/>
</implementation>
</component>
diff --git a/shell/source/win32/simplemail/smplmailentry.cxx b/shell/source/win32/simplemail/smplmailentry.cxx
index d99d6a7f5e83..c192d3c2e024 100644
--- a/shell/source/win32/simplemail/smplmailentry.cxx
+++ b/shell/source/win32/simplemail/smplmailentry.cxx
@@ -34,7 +34,7 @@ using namespace ::cppu ;
using com::sun::star::system::XSimpleMailClientSupplier;
#define COMP_SERVICE_NAME "com.sun.star.system.SimpleSystemMail"
-#define COMP_IMPL_NAME "com.sun.star.system.SimpleSystemMail"
+#define COMP_IMPL_NAME "com.sun.star.sys.shell.SimpleSystemMail"
diff --git a/shell/source/win32/simplemail/smplmailsuppl.cxx b/shell/source/win32/simplemail/smplmailsuppl.cxx
index fea39960ccfc..d92de1844860 100644
--- a/shell/source/win32/simplemail/smplmailsuppl.cxx
+++ b/shell/source/win32/simplemail/smplmailsuppl.cxx
@@ -39,7 +39,7 @@ namespace // private
Sequence< OUString > SAL_CALL Component_getSupportedServiceNames()
{
Sequence< OUString > aRet(1);
- aRet[0] = "com.sun.star.sys.shell.SimpleSystemMail";
+ aRet[0] = "com.sun.star.system.SimpleSystemMail";
return aRet;
}
diff --git a/shell/source/win32/syssh.component b/shell/source/win32/syssh.component
index b488e16a0c23..9235d1d20f99 100644
--- a/shell/source/win32/syssh.component
+++ b/shell/source/win32/syssh.component
@@ -19,7 +19,7 @@
<component loader="com.sun.star.loader.SharedLibrary" environment="@CPPU_ENV@"
prefix="syssh" xmlns="http://openoffice.org/2010/uno-components">
- <implementation name="com.sun.star.system.SystemShellExecute">
+ <implementation name="com.sun.star.sys.shell.SystemShellExecute">
<service name="com.sun.star.system.SystemShellExecute"/>
</implementation>
</component>