From 12e2e04977ddedcb2844b69a5060eb81be84d648 Mon Sep 17 00:00:00 2001 From: Stephan Bergmann Date: Mon, 12 Sep 2011 14:59:37 +0200 Subject: sb140: #i117697# simplify obsolete cppuhelper/stdidlclass.hxx implementation --- cppuhelper/inc/cppuhelper/stdidlclass.hxx | 197 ++++++------------------- cppuhelper/source/makefile.mk | 1 - cppuhelper/source/stdidlclass.cxx | 238 ++---------------------------- 3 files changed, 56 insertions(+), 380 deletions(-) (limited to 'cppuhelper') diff --git a/cppuhelper/inc/cppuhelper/stdidlclass.hxx b/cppuhelper/inc/cppuhelper/stdidlclass.hxx index e7c8443ef0f3..73b8552a5a82 100644 --- a/cppuhelper/inc/cppuhelper/stdidlclass.hxx +++ b/cppuhelper/inc/cppuhelper/stdidlclass.hxx @@ -36,6 +36,7 @@ namespace cppu { /* @deprecated + always returns */ ::com::sun::star::reflection::XIdlClass * SAL_CALL createStandardClassWithSequence( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &rSMgr , @@ -57,25 +58,19 @@ namespace cppu { @see OTypeCollection @deprecated + always returns */ template < class Interface1 > inline ::com::sun::star::reflection::XIdlClass * SAL_CALL //inline ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > -createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &rSMgr, - const ::rtl::OUString &sImplementationName , - const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > &rSuperClass , +createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &, + const ::rtl::OUString & , + const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > & , const Interface1 * ) SAL_THROW( () ) { - ::com::sun::star::uno::Sequence < ::rtl::OUString > seqInterface(1); - seqInterface.getArray()[0] = Interface1::static_type().getTypeName(); - return createStandardClassWithSequence( - rSMgr, - sImplementationName, - rSuperClass, - seqInterface - ); + return 0; } @@ -83,23 +78,15 @@ createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::sta template < class Interface1, class Interface2 > inline ::com::sun::star::reflection::XIdlClass * SAL_CALL //inline ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > -createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &rSMgr, - const ::rtl::OUString &sImplementationName , - const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > &rSuperClass , +createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &, + const ::rtl::OUString & , + const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > & , const Interface1 *, const Interface2 * ) SAL_THROW( () ) { - ::com::sun::star::uno::Sequence < ::rtl::OUString > seqInterface(2); - seqInterface.getArray()[0] = Interface1::static_type().getTypeName(); - seqInterface.getArray()[1] = Interface2::static_type().getTypeName(); - return createStandardClassWithSequence( - rSMgr, - sImplementationName, - rSuperClass, - seqInterface - ); + return 0; } @@ -109,25 +96,16 @@ createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::sta template < class Interface1, class Interface2 , class Interface3 > inline ::com::sun::star::reflection::XIdlClass * SAL_CALL //inline ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > -createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &rSMgr, - const ::rtl::OUString &sImplementationName , - const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > &rSuperClass , +createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &, + const ::rtl::OUString & , + const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > & , const Interface1 *, const Interface2 *, const Interface3 * ) SAL_THROW( () ) { - ::com::sun::star::uno::Sequence < ::rtl::OUString > seqInterface(3); - seqInterface.getArray()[0] = Interface1::static_type().getTypeName(); - seqInterface.getArray()[1] = Interface2::static_type().getTypeName(); - seqInterface.getArray()[2] = Interface3::static_type().getTypeName(); - return createStandardClassWithSequence( - rSMgr, - sImplementationName, - rSuperClass, - seqInterface - ); + return 0; } @@ -137,9 +115,9 @@ createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::sta template < class Interface1, class Interface2 , class Interface3 , class Interface4 > inline ::com::sun::star::reflection::XIdlClass * SAL_CALL //inline ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > -createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &rSMgr, - const ::rtl::OUString &sImplementationName , - const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > &rSuperClass , +createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &, + const ::rtl::OUString & , + const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > & , const Interface1 *, const Interface2 *, const Interface3 *, @@ -147,17 +125,7 @@ createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::sta ) SAL_THROW( () ) { - ::com::sun::star::uno::Sequence < ::rtl::OUString > seqInterface(4); - seqInterface.getArray()[0] = Interface1::static_type().getTypeName(); - seqInterface.getArray()[1] = Interface2::static_type().getTypeName(); - seqInterface.getArray()[2] = Interface3::static_type().getTypeName(); - seqInterface.getArray()[3] = Interface4::static_type().getTypeName(); - return createStandardClassWithSequence( - rSMgr, - sImplementationName, - rSuperClass, - seqInterface - ); + return 0; } @@ -169,9 +137,9 @@ createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::sta template < class Interface1, class Interface2 , class Interface3 , class Interface4 , class Interface5 > inline ::com::sun::star::reflection::XIdlClass * SAL_CALL //inline ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > -createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &rSMgr, - const ::rtl::OUString &sImplementationName , - const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > &rSuperClass , +createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &, + const ::rtl::OUString & , + const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > & , const Interface1 *, const Interface2 *, const Interface3 *, @@ -180,18 +148,7 @@ createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::sta ) SAL_THROW( () ) { - ::com::sun::star::uno::Sequence < ::rtl::OUString > seqInterface(5); - seqInterface.getArray()[0] = Interface1::static_type().getTypeName(); - seqInterface.getArray()[1] = Interface2::static_type().getTypeName(); - seqInterface.getArray()[2] = Interface3::static_type().getTypeName(); - seqInterface.getArray()[3] = Interface4::static_type().getTypeName(); - seqInterface.getArray()[4] = Interface5::static_type().getTypeName(); - return createStandardClassWithSequence( - rSMgr, - sImplementationName, - rSuperClass, - seqInterface - ); + return 0; } @@ -201,9 +158,9 @@ template < class Interface1, class Interface2 , class Interface3 , class Interf class Interface6 > inline ::com::sun::star::reflection::XIdlClass * SAL_CALL //inline ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > -createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &rSMgr, - const ::rtl::OUString &sImplementationName , - const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > &rSuperClass , +createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &, + const ::rtl::OUString & , + const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > & , const Interface1 *, const Interface2 *, const Interface3 *, @@ -213,19 +170,7 @@ createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::sta ) SAL_THROW( () ) { - ::com::sun::star::uno::Sequence < ::rtl::OUString > seqInterface(6); - seqInterface.getArray()[0] = Interface1::static_type().getTypeName(); - seqInterface.getArray()[1] = Interface2::static_type().getTypeName(); - seqInterface.getArray()[2] = Interface3::static_type().getTypeName(); - seqInterface.getArray()[3] = Interface4::static_type().getTypeName(); - seqInterface.getArray()[4] = Interface5::static_type().getTypeName(); - seqInterface.getArray()[5] = Interface6::static_type().getTypeName(); - return createStandardClassWithSequence( - rSMgr, - sImplementationName, - rSuperClass, - seqInterface - ); + return 0; } @@ -236,9 +181,9 @@ template < class Interface1, class Interface2 , class Interface3 , class Interf class Interface6, class Interface7 > inline ::com::sun::star::reflection::XIdlClass * SAL_CALL //inline ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > -createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &rSMgr, - const ::rtl::OUString &sImplementationName , - const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > &rSuperClass , +createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &, + const ::rtl::OUString & , + const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > & , const Interface1 *, const Interface2 *, const Interface3 *, @@ -249,20 +194,7 @@ createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::sta ) SAL_THROW( () ) { - ::com::sun::star::uno::Sequence < ::rtl::OUString > seqInterface(7); - seqInterface.getArray()[0] = Interface1::static_type().getTypeName(); - seqInterface.getArray()[1] = Interface2::static_type().getTypeName(); - seqInterface.getArray()[2] = Interface3::static_type().getTypeName(); - seqInterface.getArray()[3] = Interface4::static_type().getTypeName(); - seqInterface.getArray()[4] = Interface5::static_type().getTypeName(); - seqInterface.getArray()[5] = Interface6::static_type().getTypeName(); - seqInterface.getArray()[6] = Interface7::static_type().getTypeName(); - return createStandardClassWithSequence( - rSMgr, - sImplementationName, - rSuperClass, - seqInterface - ); + return 0; } @@ -274,9 +206,9 @@ template < class Interface1, class Interface2, class Interface3 , class Interfa class Interface6, class Interface7, class Interface8 > inline ::com::sun::star::reflection::XIdlClass * SAL_CALL //inline ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > -createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &rSMgr, - const ::rtl::OUString &sImplementationName , - const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > &rSuperClass , +createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &, + const ::rtl::OUString & , + const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > & , const Interface1 *, const Interface2 *, const Interface3 *, @@ -288,21 +220,7 @@ createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::sta ) SAL_THROW( () ) { - ::com::sun::star::uno::Sequence < ::rtl::OUString > seqInterface(8); - seqInterface.getArray()[0] = Interface1::static_type().getTypeName(); - seqInterface.getArray()[1] = Interface2::static_type().getTypeName(); - seqInterface.getArray()[2] = Interface3::static_type().getTypeName(); - seqInterface.getArray()[3] = Interface4::static_type().getTypeName(); - seqInterface.getArray()[4] = Interface5::static_type().getTypeName(); - seqInterface.getArray()[5] = Interface6::static_type().getTypeName(); - seqInterface.getArray()[6] = Interface7::static_type().getTypeName(); - seqInterface.getArray()[7] = Interface8::static_type().getTypeName(); - return createStandardClassWithSequence( - rSMgr, - sImplementationName, - rSuperClass, - seqInterface - ); + return 0; } @@ -312,9 +230,9 @@ template < class Interface1, class Interface2, class Interface3 , class Interfa class Interface6, class Interface7, class Interface8 , class Interface9 > inline ::com::sun::star::reflection::XIdlClass * SAL_CALL //inline ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > -createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &rSMgr, - const ::rtl::OUString &sImplementationName , - const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > &rSuperClass , +createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &, + const ::rtl::OUString & , + const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > & , const Interface1 *, const Interface2 *, const Interface3 *, @@ -327,22 +245,7 @@ createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::sta ) SAL_THROW( () ) { - ::com::sun::star::uno::Sequence < ::rtl::OUString > seqInterface(9); - seqInterface.getArray()[0] = Interface1::static_type().getTypeName(); - seqInterface.getArray()[1] = Interface2::static_type().getTypeName(); - seqInterface.getArray()[2] = Interface3::static_type().getTypeName(); - seqInterface.getArray()[3] = Interface4::static_type().getTypeName(); - seqInterface.getArray()[4] = Interface5::static_type().getTypeName(); - seqInterface.getArray()[5] = Interface6::static_type().getTypeName(); - seqInterface.getArray()[6] = Interface7::static_type().getTypeName(); - seqInterface.getArray()[7] = Interface8::static_type().getTypeName(); - seqInterface.getArray()[8] = Interface9::static_type().getTypeName(); - return createStandardClassWithSequence( - rSMgr, - sImplementationName, - rSuperClass, - seqInterface - ); + return 0; } @@ -350,9 +253,9 @@ template < class Interface1, class Interface2, class Interface3 , class Interfa class Interface6, class Interface7, class Interface8 , class Interface9 , class Interface10 > inline ::com::sun::star::reflection::XIdlClass * SAL_CALL //inline ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > -createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &rSMgr, - const ::rtl::OUString &sImplementationName , - const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > &rSuperClass , +createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > &, + const ::rtl::OUString & , + const ::com::sun::star::uno::Reference < ::com::sun::star::reflection::XIdlClass > & , const Interface1 *, const Interface2 *, const Interface3 *, @@ -366,23 +269,7 @@ createStandardClass( const ::com::sun::star::uno::Reference < ::com::sun::sta ) SAL_THROW( () ) { - ::com::sun::star::uno::Sequence < ::rtl::OUString > seqInterface(10); - seqInterface.getArray()[0] = Interface1::static_type().getTypeName(); - seqInterface.getArray()[1] = Interface2::static_type().getTypeName(); - seqInterface.getArray()[2] = Interface3::static_type().getTypeName(); - seqInterface.getArray()[3] = Interface4::static_type().getTypeName(); - seqInterface.getArray()[4] = Interface5::static_type().getTypeName(); - seqInterface.getArray()[5] = Interface6::static_type().getTypeName(); - seqInterface.getArray()[6] = Interface7::static_type().getTypeName(); - seqInterface.getArray()[7] = Interface8::static_type().getTypeName(); - seqInterface.getArray()[8] = Interface9::static_type().getTypeName(); - seqInterface.getArray()[9] = Interface10::static_type().getTypeName(); - return createStandardClassWithSequence( - rSMgr, - sImplementationName, - rSuperClass, - seqInterface - ); + return 0; } } // end namespace cppu diff --git a/cppuhelper/source/makefile.mk b/cppuhelper/source/makefile.mk index aed6ae6b56cd..0cbed3d2b39f 100755 --- a/cppuhelper/source/makefile.mk +++ b/cppuhelper/source/makefile.mk @@ -89,7 +89,6 @@ UNOTYPES= \ com.sun.star.reflection.XCompoundTypeDescription \ com.sun.star.reflection.XEnumTypeDescription \ com.sun.star.reflection.XIdlClass \ - com.sun.star.reflection.XIdlClassProvider \ com.sun.star.reflection.XIdlField2 \ com.sun.star.reflection.XIdlReflection \ com.sun.star.reflection.XIndirectTypeDescription \ diff --git a/cppuhelper/source/stdidlclass.cxx b/cppuhelper/source/stdidlclass.cxx index 1c617da22f24..9278e3b062dc 100644 --- a/cppuhelper/source/stdidlclass.cxx +++ b/cppuhelper/source/stdidlclass.cxx @@ -26,238 +26,28 @@ * ************************************************************************/ -// MARKER(update_precomp.py): autogen include statement, do not remove #include "precompiled_cppuhelper.hxx" +#include "sal/config.h" -#include - -#include -#include -#include - -#include -#include -#include -#include -#include - -using namespace com::sun::star; -using namespace com::sun::star::uno; -using namespace com::sun::star::lang; -using namespace com::sun::star::reflection; - -using ::rtl::OUString; +#include "cppuhelper/stdidlclass.hxx" +#include "osl/diagnose.h" namespace cppu { -/*--------------------------------------------------------- -* This helper class implements XIdlClass. Is used by -* createStdIdlClass() -*---------------------------------------------------------*/ -class OStdIdlClass : - public OWeakObject, - public XIdlClass, - public XIdlClassProvider -{ -public: - OStdIdlClass( - const Reference < XMultiServiceFactory > &rSMgr , - const OUString & sImplementationName , - const Reference < XIdlClass > & rSuperClass, - const Sequence < OUString > &seq - ) SAL_THROW( () ); - - // XInterface - Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) - throw(::com::sun::star::uno::RuntimeException); - - void SAL_CALL acquire() throw() { OWeakObject::acquire(); } - void SAL_CALL release() throw() { OWeakObject::release(); } - - // XIdlClassProvider - Sequence< Reference < XIdlClass > > SAL_CALL getIdlClasses(void) - throw (RuntimeException); - - // XIdlClass - virtual Sequence< Reference< XIdlClass > > SAL_CALL getClasses( ) throw(RuntimeException) - { return Sequence < Reference < XIdlClass > > (); } - virtual Reference< XIdlClass > SAL_CALL getClass( const ::rtl::OUString& ) throw(RuntimeException) - { return Reference < XIdlClass > (); } - virtual sal_Bool SAL_CALL equals( const Reference< XIdlClass >& Type ) throw(RuntimeException) - { return getName() == Type->getName(); } - virtual sal_Bool SAL_CALL isAssignableFrom( const Reference< XIdlClass >& xType ) throw(RuntimeException) - { return equals( xType ); } - virtual TypeClass SAL_CALL getTypeClass( ) throw(RuntimeException) - { return TypeClass_UNKNOWN; } - virtual OUString SAL_CALL getName( ) throw(RuntimeException) - { return m_sImplementationName; } - virtual Uik SAL_CALL getUik( ) throw(RuntimeException) - { return Uik(); } - virtual Sequence< Reference< XIdlClass > > SAL_CALL getSuperclasses( ) throw(RuntimeException) - { return m_seqSuperClasses; } - virtual Sequence< Reference< XIdlClass > > SAL_CALL getInterfaces( ) throw(RuntimeException); - - virtual Reference< XIdlClass > SAL_CALL getComponentType( ) throw(RuntimeException) - { return Reference < XIdlClass > (); } - virtual Reference< XIdlField > SAL_CALL getField( const ::rtl::OUString& ) throw(RuntimeException) - { return Reference < XIdlField > (); } - virtual Sequence< Reference< XIdlField > > SAL_CALL getFields( ) throw(RuntimeException) - { return Sequence< Reference < XIdlField > > (); } - virtual Reference< XIdlMethod > SAL_CALL getMethod( const ::rtl::OUString& ) throw(RuntimeException) - { return Reference < XIdlMethod > (); } - virtual Sequence< Reference< XIdlMethod > > SAL_CALL getMethods( ) throw(RuntimeException) - { return Sequence < Reference < XIdlMethod > > (); } - virtual Reference< XIdlArray > SAL_CALL getArray( ) throw(RuntimeException) - { return Reference < XIdlArray > (); } - virtual void SAL_CALL createObject( Any& ) throw(RuntimeException) {} - -private: - OUString m_sImplementationName; - Sequence < OUString > m_seqSupportedInterface; - Sequence < Reference < XIdlClass > > m_seqSuperClasses; - Reference < XMultiServiceFactory > m_rSMgr; - - Reference< XIdlReflection > m_xCorefl; - Reference< XIdlReflection > const & get_corefl() SAL_THROW( (RuntimeException) ); -}; - -Reference< XIdlReflection > const & OStdIdlClass::get_corefl() - SAL_THROW( (RuntimeException) ) -{ - if (! m_xCorefl.is()) - { - if( m_rSMgr.is() ) - { - Reference< beans::XPropertySet > xProps( m_rSMgr, UNO_QUERY ); - OSL_ASSERT( xProps.is() ); - if (xProps.is()) - { - Reference< XComponentContext > xContext; - xProps->getPropertyValue( - OUString( RTL_CONSTASCII_USTRINGPARAM("DefaultContext") ) ) >>= xContext; - OSL_ASSERT( xContext.is() ); - if (xContext.is()) - { - Reference < XIdlReflection > x; - xContext->getValueByName( - OUString( RTL_CONSTASCII_USTRINGPARAM("/singletons/com.sun.star.reflection.theCoreReflection") ) ) >>= x; - OSL_ENSURE( x.is(), "### CoreReflection singleton not accessible!?" ); - - if (x.is()) - { - ::osl::MutexGuard guard( ::osl::Mutex::getGlobalMutex() ); - if (! m_xCorefl.is()) - { - m_xCorefl = x; - } - } - } - } - } - if (! m_xCorefl.is()) - { - throw DeploymentException( - OUString( RTL_CONSTASCII_USTRINGPARAM("/singletons/com.sun.star.reflection.theCoreReflection singleton not accessible") ), - Reference< XInterface >() ); - } - } - return m_xCorefl; -} - -OStdIdlClass::OStdIdlClass( - const Reference < XMultiServiceFactory > &rSMgr , - const OUString & sImplementationName , - const Reference < XIdlClass > & rSuperClass, - const Sequence < OUString > &seq - ) SAL_THROW( () ) : - m_sImplementationName( sImplementationName ) , - m_seqSupportedInterface( seq ), - m_rSMgr( rSMgr ) -{ - if( rSuperClass.is() ) - m_seqSuperClasses = Sequence< Reference < XIdlClass > >( &rSuperClass, 1 ); - -} - -Any SAL_CALL OStdIdlClass::queryInterface( const Type & rType ) - throw(::com::sun::star::uno::RuntimeException) +com::sun::star::reflection::XIdlClass * createStandardClassWithSequence( + com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory > + const &, + rtl::OUString const &, + com::sun::star::uno::Reference< com::sun::star::reflection::XIdlClass > + const &, + com::sun::star::uno::Sequence< rtl::OUString > const &) SAL_THROW(()) { - Any aRet( ::cppu::queryInterface( - rType, static_cast< XIdlClass * >( this ), static_cast< XIdlClassProvider * >( this ) ) ); - - return (aRet.hasValue() ? aRet : OWeakObject::queryInterface( rType )); + OSL_TRACE( + OSL_LOG_PREFIX + "deprecated/defunct cppu::createStandardClassWithSequence called"); + return 0; } - -Sequence< Reference< XIdlClass > > SAL_CALL OStdIdlClass::getInterfaces( ) throw(RuntimeException) -{ - int nMax = m_seqSupportedInterface.getLength(); - - Reference< XIdlReflection > const & rCoreRefl = get_corefl(); - if( rCoreRefl.is() ) - { - Sequence< Reference< XIdlClass > > seqClasses( nMax ); - - for( int n = 0 ; n < nMax ; n++ ) - { - seqClasses.getArray()[n] = rCoreRefl->forName( m_seqSupportedInterface.getArray()[n] ); - } - - return seqClasses; - } - return Sequence< Reference< XIdlClass > > () ; } - -// XIdlClassProvider -Sequence< Reference < XIdlClass > > SAL_CALL OStdIdlClass::getIdlClasses(void) - throw (RuntimeException) -{ - // weak reference to cache the standard class - static WeakReference< XIdlClass > weakRef; - - // try to make weakref hard - Reference < XIdlClass > r = weakRef; - - if( ! r.is() ) { - // xidlclass has not been initialized before or has been destroyed already. - r = ::cppu::createStandardClass( - m_rSMgr , - OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.cppuhelper.OStdIdlClass") ) , - Reference < XIdlClass > () , - SAL_STATIC_CAST( XIdlClassProvider * , this ) , - SAL_STATIC_CAST( XIdlClass * , this ) - ); - - // store reference for later use - weakRef = r; - } - - return Sequence < Reference < XIdlClass > > ( &r , 1 ); -} - - - - -// external constructor -XIdlClass * SAL_CALL createStandardClassWithSequence( - const Reference < XMultiServiceFactory > &rSMgr , - const OUString & sImplementationName , - const Reference < XIdlClass > & rSuperClass, - const Sequence < OUString > &seqInterfaceNames ) - SAL_THROW( () ) -{ - return SAL_STATIC_CAST( - XIdlClass * , - new OStdIdlClass( - rSMgr , - sImplementationName, - rSuperClass, - seqInterfaceNames - ) - ); -} - -} //end namespace cppu - /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit