Line data Source code
1 : #ifndef INCLUDED_COM_SUN_STAR_BEANS_XPROPERTYSET_HPP
2 : #define INCLUDED_COM_SUN_STAR_BEANS_XPROPERTYSET_HPP
3 :
4 : #include "sal/config.h"
5 :
6 : #include "com/sun/star/beans/XPropertySet.hdl"
7 :
8 : #include "com/sun/star/beans/XPropertyChangeListener.hpp"
9 : #include "com/sun/star/beans/XVetoableChangeListener.hpp"
10 : #include "com/sun/star/lang/WrappedTargetException.hpp"
11 : #include "com/sun/star/lang/IllegalArgumentException.hpp"
12 : #include "com/sun/star/beans/UnknownPropertyException.hpp"
13 : #include "com/sun/star/beans/PropertyVetoException.hpp"
14 : #include "com/sun/star/uno/RuntimeException.hpp"
15 : #include "com/sun/star/beans/XPropertySetInfo.hpp"
16 : #include "com/sun/star/uno/XInterface.hpp"
17 : #include "com/sun/star/uno/Any.hxx"
18 : #include "com/sun/star/uno/Reference.hxx"
19 : #include "com/sun/star/uno/Type.hxx"
20 : #include "cppu/unotype.hxx"
21 : #include "osl/mutex.hxx"
22 : #include "rtl/ustring.hxx"
23 : #include "rtl/instance.hxx"
24 :
25 : namespace com { namespace sun { namespace star { namespace beans { namespace detail {
26 :
27 : struct theXPropertySetType : public rtl::StaticWithInit< ::com::sun::star::uno::Type *, theXPropertySetType >
28 : {
29 257 : ::com::sun::star::uno::Type * operator()() const
30 : {
31 257 : ::rtl::OUString sTypeName( "com.sun.star.beans.XPropertySet" );
32 :
33 : // Start inline typedescription generation
34 257 : typelib_InterfaceTypeDescription * pTD = 0;
35 :
36 : typelib_TypeDescriptionReference * aSuperTypes[1];
37 257 : aSuperTypes[0] = ::cppu::UnoType< ::com::sun::star::uno::Reference< css::uno::XInterface > >::get().getTypeLibType();
38 257 : typelib_TypeDescriptionReference * pMembers[7] = { 0,0,0,0,0,0,0 };
39 257 : ::rtl::OUString sMethodName0( "com.sun.star.beans.XPropertySet::getPropertySetInfo" );
40 : typelib_typedescriptionreference_new( &pMembers[0],
41 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_INTERFACE_METHOD,
42 257 : sMethodName0.pData );
43 257 : ::rtl::OUString sMethodName1( "com.sun.star.beans.XPropertySet::setPropertyValue" );
44 : typelib_typedescriptionreference_new( &pMembers[1],
45 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_INTERFACE_METHOD,
46 257 : sMethodName1.pData );
47 257 : ::rtl::OUString sMethodName2( "com.sun.star.beans.XPropertySet::getPropertyValue" );
48 : typelib_typedescriptionreference_new( &pMembers[2],
49 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_INTERFACE_METHOD,
50 257 : sMethodName2.pData );
51 257 : ::rtl::OUString sMethodName3( "com.sun.star.beans.XPropertySet::addPropertyChangeListener" );
52 : typelib_typedescriptionreference_new( &pMembers[3],
53 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_INTERFACE_METHOD,
54 257 : sMethodName3.pData );
55 257 : ::rtl::OUString sMethodName4( "com.sun.star.beans.XPropertySet::removePropertyChangeListener" );
56 : typelib_typedescriptionreference_new( &pMembers[4],
57 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_INTERFACE_METHOD,
58 257 : sMethodName4.pData );
59 257 : ::rtl::OUString sMethodName5( "com.sun.star.beans.XPropertySet::addVetoableChangeListener" );
60 : typelib_typedescriptionreference_new( &pMembers[5],
61 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_INTERFACE_METHOD,
62 257 : sMethodName5.pData );
63 257 : ::rtl::OUString sMethodName6( "com.sun.star.beans.XPropertySet::removeVetoableChangeListener" );
64 : typelib_typedescriptionreference_new( &pMembers[6],
65 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_INTERFACE_METHOD,
66 257 : sMethodName6.pData );
67 :
68 : typelib_typedescription_newMIInterface(
69 : &pTD,
70 : sTypeName.pData, 0x00000000, 0x0000, 0x0000, 0x00000000, 0x00000000,
71 : 1, aSuperTypes,
72 : 7,
73 257 : pMembers );
74 :
75 257 : typelib_typedescription_register( (typelib_TypeDescription**)&pTD );
76 257 : typelib_typedescriptionreference_release( pMembers[0] );
77 257 : typelib_typedescriptionreference_release( pMembers[1] );
78 257 : typelib_typedescriptionreference_release( pMembers[2] );
79 257 : typelib_typedescriptionreference_release( pMembers[3] );
80 257 : typelib_typedescriptionreference_release( pMembers[4] );
81 257 : typelib_typedescriptionreference_release( pMembers[5] );
82 257 : typelib_typedescriptionreference_release( pMembers[6] );
83 257 : typelib_typedescription_release( (typelib_TypeDescription*)pTD );
84 :
85 257 : return new ::com::sun::star::uno::Type( ::com::sun::star::uno::TypeClass_INTERFACE, sTypeName ); // leaked
86 : }
87 : };
88 :
89 : } } } } }
90 :
91 : namespace com { namespace sun { namespace star { namespace beans {
92 :
93 258 : inline ::com::sun::star::uno::Type const & cppu_detail_getUnoType(SAL_UNUSED_PARAMETER css::beans::XPropertySet const *) {
94 258 : const ::com::sun::star::uno::Type &rRet = *detail::theXPropertySetType::get();
95 : // End inline typedescription generation
96 : static bool bInitStarted = false;
97 258 : if (!bInitStarted)
98 : {
99 257 : ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() );
100 257 : if (!bInitStarted)
101 : {
102 : OSL_DOUBLE_CHECKED_LOCKING_MEMORY_BARRIER();
103 257 : bInitStarted = true;
104 257 : ::cppu::UnoType< css::uno::RuntimeException >::get();
105 257 : ::cppu::UnoType< ::com::sun::star::uno::Reference< css::beans::XPropertySetInfo > >::get();
106 257 : ::cppu::UnoType< css::beans::UnknownPropertyException >::get();
107 257 : ::cppu::UnoType< css::beans::PropertyVetoException >::get();
108 257 : ::cppu::UnoType< css::lang::IllegalArgumentException >::get();
109 257 : ::cppu::UnoType< css::lang::WrappedTargetException >::get();
110 257 : ::cppu::UnoType< ::com::sun::star::uno::Reference< css::beans::XPropertyChangeListener > >::get();
111 257 : ::cppu::UnoType< ::com::sun::star::uno::Reference< css::beans::XVetoableChangeListener > >::get();
112 :
113 257 : typelib_InterfaceMethodTypeDescription * pMethod = 0;
114 : {
115 257 : ::rtl::OUString the_ExceptionName0( "com.sun.star.uno.RuntimeException" );
116 257 : rtl_uString * the_Exceptions[] = { the_ExceptionName0.pData };
117 257 : ::rtl::OUString sReturnType0( "com.sun.star.beans.XPropertySetInfo" );
118 257 : ::rtl::OUString sMethodName0( "com.sun.star.beans.XPropertySet::getPropertySetInfo" );
119 : typelib_typedescription_newInterfaceMethod( &pMethod,
120 : 3, sal_False,
121 : sMethodName0.pData,
122 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_INTERFACE, sReturnType0.pData,
123 : 0, 0,
124 257 : 1, the_Exceptions );
125 257 : typelib_typedescription_register( (typelib_TypeDescription**)&pMethod );
126 : }
127 : {
128 : typelib_Parameter_Init aParameters[2];
129 257 : ::rtl::OUString sParamName0( "aPropertyName" );
130 257 : ::rtl::OUString sParamType0( "string" );
131 257 : aParameters[0].pParamName = sParamName0.pData;
132 257 : aParameters[0].eTypeClass = (typelib_TypeClass)::com::sun::star::uno::TypeClass_STRING;
133 257 : aParameters[0].pTypeName = sParamType0.pData;
134 257 : aParameters[0].bIn = sal_True;
135 257 : aParameters[0].bOut = sal_False;
136 257 : ::rtl::OUString sParamName1( "aValue" );
137 257 : ::rtl::OUString sParamType1( "any" );
138 257 : aParameters[1].pParamName = sParamName1.pData;
139 257 : aParameters[1].eTypeClass = (typelib_TypeClass)::com::sun::star::uno::TypeClass_ANY;
140 257 : aParameters[1].pTypeName = sParamType1.pData;
141 257 : aParameters[1].bIn = sal_True;
142 257 : aParameters[1].bOut = sal_False;
143 257 : ::rtl::OUString the_ExceptionName0( "com.sun.star.beans.UnknownPropertyException" );
144 257 : ::rtl::OUString the_ExceptionName1( "com.sun.star.beans.PropertyVetoException" );
145 257 : ::rtl::OUString the_ExceptionName2( "com.sun.star.lang.IllegalArgumentException" );
146 257 : ::rtl::OUString the_ExceptionName3( "com.sun.star.lang.WrappedTargetException" );
147 257 : ::rtl::OUString the_ExceptionName4( "com.sun.star.uno.RuntimeException" );
148 257 : rtl_uString * the_Exceptions[] = { the_ExceptionName0.pData, the_ExceptionName1.pData, the_ExceptionName2.pData, the_ExceptionName3.pData, the_ExceptionName4.pData };
149 257 : ::rtl::OUString sReturnType1( "void" );
150 257 : ::rtl::OUString sMethodName1( "com.sun.star.beans.XPropertySet::setPropertyValue" );
151 : typelib_typedescription_newInterfaceMethod( &pMethod,
152 : 4, sal_False,
153 : sMethodName1.pData,
154 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_VOID, sReturnType1.pData,
155 : 2, aParameters,
156 257 : 5, the_Exceptions );
157 257 : typelib_typedescription_register( (typelib_TypeDescription**)&pMethod );
158 : }
159 : {
160 : typelib_Parameter_Init aParameters[1];
161 257 : ::rtl::OUString sParamName0( "PropertyName" );
162 257 : ::rtl::OUString sParamType0( "string" );
163 257 : aParameters[0].pParamName = sParamName0.pData;
164 257 : aParameters[0].eTypeClass = (typelib_TypeClass)::com::sun::star::uno::TypeClass_STRING;
165 257 : aParameters[0].pTypeName = sParamType0.pData;
166 257 : aParameters[0].bIn = sal_True;
167 257 : aParameters[0].bOut = sal_False;
168 257 : ::rtl::OUString the_ExceptionName0( "com.sun.star.beans.UnknownPropertyException" );
169 257 : ::rtl::OUString the_ExceptionName1( "com.sun.star.lang.WrappedTargetException" );
170 257 : ::rtl::OUString the_ExceptionName2( "com.sun.star.uno.RuntimeException" );
171 257 : rtl_uString * the_Exceptions[] = { the_ExceptionName0.pData, the_ExceptionName1.pData, the_ExceptionName2.pData };
172 257 : ::rtl::OUString sReturnType2( "any" );
173 257 : ::rtl::OUString sMethodName2( "com.sun.star.beans.XPropertySet::getPropertyValue" );
174 : typelib_typedescription_newInterfaceMethod( &pMethod,
175 : 5, sal_False,
176 : sMethodName2.pData,
177 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_ANY, sReturnType2.pData,
178 : 1, aParameters,
179 257 : 3, the_Exceptions );
180 257 : typelib_typedescription_register( (typelib_TypeDescription**)&pMethod );
181 : }
182 : {
183 : typelib_Parameter_Init aParameters[2];
184 257 : ::rtl::OUString sParamName0( "aPropertyName" );
185 257 : ::rtl::OUString sParamType0( "string" );
186 257 : aParameters[0].pParamName = sParamName0.pData;
187 257 : aParameters[0].eTypeClass = (typelib_TypeClass)::com::sun::star::uno::TypeClass_STRING;
188 257 : aParameters[0].pTypeName = sParamType0.pData;
189 257 : aParameters[0].bIn = sal_True;
190 257 : aParameters[0].bOut = sal_False;
191 257 : ::rtl::OUString sParamName1( "xListener" );
192 257 : ::rtl::OUString sParamType1( "com.sun.star.beans.XPropertyChangeListener" );
193 257 : aParameters[1].pParamName = sParamName1.pData;
194 257 : aParameters[1].eTypeClass = (typelib_TypeClass)::com::sun::star::uno::TypeClass_INTERFACE;
195 257 : aParameters[1].pTypeName = sParamType1.pData;
196 257 : aParameters[1].bIn = sal_True;
197 257 : aParameters[1].bOut = sal_False;
198 257 : ::rtl::OUString the_ExceptionName0( "com.sun.star.beans.UnknownPropertyException" );
199 257 : ::rtl::OUString the_ExceptionName1( "com.sun.star.lang.WrappedTargetException" );
200 257 : ::rtl::OUString the_ExceptionName2( "com.sun.star.uno.RuntimeException" );
201 257 : rtl_uString * the_Exceptions[] = { the_ExceptionName0.pData, the_ExceptionName1.pData, the_ExceptionName2.pData };
202 257 : ::rtl::OUString sReturnType3( "void" );
203 257 : ::rtl::OUString sMethodName3( "com.sun.star.beans.XPropertySet::addPropertyChangeListener" );
204 : typelib_typedescription_newInterfaceMethod( &pMethod,
205 : 6, sal_False,
206 : sMethodName3.pData,
207 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_VOID, sReturnType3.pData,
208 : 2, aParameters,
209 257 : 3, the_Exceptions );
210 257 : typelib_typedescription_register( (typelib_TypeDescription**)&pMethod );
211 : }
212 : {
213 : typelib_Parameter_Init aParameters[2];
214 257 : ::rtl::OUString sParamName0( "aPropertyName" );
215 257 : ::rtl::OUString sParamType0( "string" );
216 257 : aParameters[0].pParamName = sParamName0.pData;
217 257 : aParameters[0].eTypeClass = (typelib_TypeClass)::com::sun::star::uno::TypeClass_STRING;
218 257 : aParameters[0].pTypeName = sParamType0.pData;
219 257 : aParameters[0].bIn = sal_True;
220 257 : aParameters[0].bOut = sal_False;
221 257 : ::rtl::OUString sParamName1( "aListener" );
222 257 : ::rtl::OUString sParamType1( "com.sun.star.beans.XPropertyChangeListener" );
223 257 : aParameters[1].pParamName = sParamName1.pData;
224 257 : aParameters[1].eTypeClass = (typelib_TypeClass)::com::sun::star::uno::TypeClass_INTERFACE;
225 257 : aParameters[1].pTypeName = sParamType1.pData;
226 257 : aParameters[1].bIn = sal_True;
227 257 : aParameters[1].bOut = sal_False;
228 257 : ::rtl::OUString the_ExceptionName0( "com.sun.star.beans.UnknownPropertyException" );
229 257 : ::rtl::OUString the_ExceptionName1( "com.sun.star.lang.WrappedTargetException" );
230 257 : ::rtl::OUString the_ExceptionName2( "com.sun.star.uno.RuntimeException" );
231 257 : rtl_uString * the_Exceptions[] = { the_ExceptionName0.pData, the_ExceptionName1.pData, the_ExceptionName2.pData };
232 257 : ::rtl::OUString sReturnType4( "void" );
233 257 : ::rtl::OUString sMethodName4( "com.sun.star.beans.XPropertySet::removePropertyChangeListener" );
234 : typelib_typedescription_newInterfaceMethod( &pMethod,
235 : 7, sal_False,
236 : sMethodName4.pData,
237 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_VOID, sReturnType4.pData,
238 : 2, aParameters,
239 257 : 3, the_Exceptions );
240 257 : typelib_typedescription_register( (typelib_TypeDescription**)&pMethod );
241 : }
242 : {
243 : typelib_Parameter_Init aParameters[2];
244 257 : ::rtl::OUString sParamName0( "PropertyName" );
245 257 : ::rtl::OUString sParamType0( "string" );
246 257 : aParameters[0].pParamName = sParamName0.pData;
247 257 : aParameters[0].eTypeClass = (typelib_TypeClass)::com::sun::star::uno::TypeClass_STRING;
248 257 : aParameters[0].pTypeName = sParamType0.pData;
249 257 : aParameters[0].bIn = sal_True;
250 257 : aParameters[0].bOut = sal_False;
251 257 : ::rtl::OUString sParamName1( "aListener" );
252 257 : ::rtl::OUString sParamType1( "com.sun.star.beans.XVetoableChangeListener" );
253 257 : aParameters[1].pParamName = sParamName1.pData;
254 257 : aParameters[1].eTypeClass = (typelib_TypeClass)::com::sun::star::uno::TypeClass_INTERFACE;
255 257 : aParameters[1].pTypeName = sParamType1.pData;
256 257 : aParameters[1].bIn = sal_True;
257 257 : aParameters[1].bOut = sal_False;
258 257 : ::rtl::OUString the_ExceptionName0( "com.sun.star.beans.UnknownPropertyException" );
259 257 : ::rtl::OUString the_ExceptionName1( "com.sun.star.lang.WrappedTargetException" );
260 257 : ::rtl::OUString the_ExceptionName2( "com.sun.star.uno.RuntimeException" );
261 257 : rtl_uString * the_Exceptions[] = { the_ExceptionName0.pData, the_ExceptionName1.pData, the_ExceptionName2.pData };
262 257 : ::rtl::OUString sReturnType5( "void" );
263 257 : ::rtl::OUString sMethodName5( "com.sun.star.beans.XPropertySet::addVetoableChangeListener" );
264 : typelib_typedescription_newInterfaceMethod( &pMethod,
265 : 8, sal_False,
266 : sMethodName5.pData,
267 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_VOID, sReturnType5.pData,
268 : 2, aParameters,
269 257 : 3, the_Exceptions );
270 257 : typelib_typedescription_register( (typelib_TypeDescription**)&pMethod );
271 : }
272 : {
273 : typelib_Parameter_Init aParameters[2];
274 257 : ::rtl::OUString sParamName0( "PropertyName" );
275 257 : ::rtl::OUString sParamType0( "string" );
276 257 : aParameters[0].pParamName = sParamName0.pData;
277 257 : aParameters[0].eTypeClass = (typelib_TypeClass)::com::sun::star::uno::TypeClass_STRING;
278 257 : aParameters[0].pTypeName = sParamType0.pData;
279 257 : aParameters[0].bIn = sal_True;
280 257 : aParameters[0].bOut = sal_False;
281 257 : ::rtl::OUString sParamName1( "aListener" );
282 257 : ::rtl::OUString sParamType1( "com.sun.star.beans.XVetoableChangeListener" );
283 257 : aParameters[1].pParamName = sParamName1.pData;
284 257 : aParameters[1].eTypeClass = (typelib_TypeClass)::com::sun::star::uno::TypeClass_INTERFACE;
285 257 : aParameters[1].pTypeName = sParamType1.pData;
286 257 : aParameters[1].bIn = sal_True;
287 257 : aParameters[1].bOut = sal_False;
288 257 : ::rtl::OUString the_ExceptionName0( "com.sun.star.beans.UnknownPropertyException" );
289 257 : ::rtl::OUString the_ExceptionName1( "com.sun.star.lang.WrappedTargetException" );
290 257 : ::rtl::OUString the_ExceptionName2( "com.sun.star.uno.RuntimeException" );
291 257 : rtl_uString * the_Exceptions[] = { the_ExceptionName0.pData, the_ExceptionName1.pData, the_ExceptionName2.pData };
292 257 : ::rtl::OUString sReturnType6( "void" );
293 257 : ::rtl::OUString sMethodName6( "com.sun.star.beans.XPropertySet::removeVetoableChangeListener" );
294 : typelib_typedescription_newInterfaceMethod( &pMethod,
295 : 9, sal_False,
296 : sMethodName6.pData,
297 : (typelib_TypeClass)::com::sun::star::uno::TypeClass_VOID, sReturnType6.pData,
298 : 2, aParameters,
299 257 : 3, the_Exceptions );
300 257 : typelib_typedescription_register( (typelib_TypeDescription**)&pMethod );
301 : }
302 257 : typelib_typedescription_release( (typelib_TypeDescription*)pMethod );
303 257 : }
304 : }
305 : else
306 : {
307 : OSL_DOUBLE_CHECKED_LOCKING_MEMORY_BARRIER();
308 : }
309 258 : return rRet;
310 : }
311 :
312 : } } } }
313 :
314 258 : inline ::com::sun::star::uno::Type const & SAL_CALL getCppuType(SAL_UNUSED_PARAMETER ::com::sun::star::uno::Reference< css::beans::XPropertySet > const *) SAL_THROW(()) {
315 258 : return ::cppu::UnoType< ::com::sun::star::uno::Reference< css::beans::XPropertySet > >::get();
316 : }
317 :
318 258 : ::com::sun::star::uno::Type const & css::beans::XPropertySet::static_type(SAL_UNUSED_PARAMETER void *) {
319 258 : return ::getCppuType(static_cast< ::com::sun::star::uno::Reference< css::beans::XPropertySet > * >(0));
320 : }
321 :
322 : #endif // INCLUDED_COM_SUN_STAR_BEANS_XPROPERTYSET_HPP
|