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