Line data Source code
1 : #ifndef INCLUDED_COM_SUN_STAR_LANG_WRAPPEDTARGETRUNTIMEEXCEPTION_HPP
2 : #define INCLUDED_COM_SUN_STAR_LANG_WRAPPEDTARGETRUNTIMEEXCEPTION_HPP
3 :
4 : #include "sal/config.h"
5 :
6 : #include "com/sun/star/lang/WrappedTargetRuntimeException.hdl"
7 :
8 : #include "com/sun/star/uno/RuntimeException.hpp"
9 : #include "com/sun/star/uno/Any.hxx"
10 : #include "com/sun/star/uno/Type.hxx"
11 : #include "cppu/unotype.hxx"
12 : #include "osl/mutex.hxx"
13 : #include "rtl/instance.hxx"
14 :
15 : namespace com { namespace sun { namespace star { namespace lang {
16 :
17 : inline WrappedTargetRuntimeException::WrappedTargetRuntimeException() SAL_THROW(())
18 : : css::uno::RuntimeException()
19 : , TargetException()
20 : {
21 : ::cppu::UnoType< css::lang::WrappedTargetRuntimeException >::get();
22 : }
23 :
24 12 : inline WrappedTargetRuntimeException::WrappedTargetRuntimeException(const ::rtl::OUString& Message_, const ::com::sun::star::uno::Reference< css::uno::XInterface >& Context_, const ::com::sun::star::uno::Any& TargetException_) SAL_THROW(())
25 : : css::uno::RuntimeException(Message_, Context_)
26 12 : , TargetException(TargetException_)
27 : {
28 12 : ::cppu::UnoType< css::lang::WrappedTargetRuntimeException >::get();
29 12 : }
30 :
31 : WrappedTargetRuntimeException::WrappedTargetRuntimeException(WrappedTargetRuntimeException const & the_other): css::uno::RuntimeException(the_other), TargetException(the_other.TargetException) {}
32 :
33 12 : WrappedTargetRuntimeException::~WrappedTargetRuntimeException() {}
34 :
35 : WrappedTargetRuntimeException & WrappedTargetRuntimeException::operator =(WrappedTargetRuntimeException const & the_other) {
36 : //TODO: Just like its implicitly-defined counterpart, this function definition is not exception-safe
37 : css::uno::RuntimeException::operator =(the_other);
38 : TargetException = the_other.TargetException;
39 : return *this;
40 : }
41 :
42 : } } } }
43 :
44 : namespace com { namespace sun { namespace star { namespace lang { namespace detail {
45 :
46 : struct theWrappedTargetRuntimeExceptionType : public rtl::StaticWithInit< ::com::sun::star::uno::Type *, theWrappedTargetRuntimeExceptionType >
47 : {
48 6 : ::com::sun::star::uno::Type * operator()() const
49 : {
50 6 : ::rtl::OUString sTypeName( "com.sun.star.lang.WrappedTargetRuntimeException" );
51 :
52 : // Start inline typedescription generation
53 6 : typelib_TypeDescription * pTD = 0;
54 6 : const ::com::sun::star::uno::Type& rSuperType = ::cppu::UnoType< css::uno::RuntimeException >::get();
55 :
56 : typelib_CompoundMember_Init aMembers[1];
57 6 : ::rtl::OUString sMemberType0( "any" );
58 6 : ::rtl::OUString sMemberName0( "TargetException" );
59 6 : aMembers[0].eTypeClass = (typelib_TypeClass)::com::sun::star::uno::TypeClass_ANY;
60 6 : aMembers[0].pTypeName = sMemberType0.pData;
61 6 : aMembers[0].pMemberName = sMemberName0.pData;
62 :
63 : typelib_typedescription_new(
64 : &pTD,
65 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_EXCEPTION, sTypeName.pData,
66 : rSuperType.getTypeLibType(),
67 : 1,
68 6 : aMembers );
69 :
70 6 : typelib_typedescription_register( (typelib_TypeDescription**)&pTD );
71 :
72 6 : typelib_typedescription_release( pTD );
73 : // End inline typedescription generation
74 :
75 6 : return new ::com::sun::star::uno::Type( ::com::sun::star::uno::TypeClass_EXCEPTION, sTypeName ); // leaked
76 : }
77 : };
78 :
79 : } } } } }
80 :
81 : namespace com { namespace sun { namespace star { namespace lang {
82 :
83 12 : inline ::com::sun::star::uno::Type const & cppu_detail_getUnoType(SAL_UNUSED_PARAMETER css::lang::WrappedTargetRuntimeException const *) {
84 12 : return *detail::theWrappedTargetRuntimeExceptionType::get();
85 : }
86 :
87 : } } } }
88 :
89 : inline ::com::sun::star::uno::Type const & SAL_CALL getCppuType(SAL_UNUSED_PARAMETER css::lang::WrappedTargetRuntimeException const *) SAL_THROW(()) {
90 : return ::cppu::UnoType< css::lang::WrappedTargetRuntimeException >::get();
91 : }
92 :
93 : #endif // INCLUDED_COM_SUN_STAR_LANG_WRAPPEDTARGETRUNTIMEEXCEPTION_HPP
|