xref: /aoo41x/main/cli_ure/qa/climaker/types.idl (revision 1373785e)
1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23
24#include "com/sun/star/lang/ClassNotFoundException.idl"
25#include "com/sun/star/lang/IllegalAccessException.idl"
26#include "com/sun/star/uno/DeploymentException.idl"
27#include "com/sun/star/uno/Exception.idl"
28#include "com/sun/star/uno/RuntimeException.idl"
29#include "com/sun/star/uno/XInterface.idl"
30#include "com/sun/star/uno/XNamingService.idl"
31#include "com/sun/star/lang/XComponent.idl"
32module test { module cliure { module climaker {
33
34enum Enum1 { VALUE1 = -100, VALUE2 = 100 };
35
36enum Enum2 { VALUE0 = 0, VALUE1 = 1, VALUE2 = 2, VALUE4 = 4 };
37
38struct Struct1 { long member1; };
39
40struct PolyStruct<if,else> {
41    if member1;
42    long member2;
43};
44
45struct PolyStruct2<a> {
46    a member1;
47    long member2;
48};
49
50struct PolyStruct3<a,b> {
51    a member1;
52    b member2;
53};
54
55interface XTest {
56    boolean test();
57
58    [attribute, bound] long A1;
59    [attribute, bound, readonly] long A2;
60    [attribute] long A3 {
61        get raises
62            (com::sun::star::uno::Exception,
63             com::sun::star::lang::ClassNotFoundException);
64        set raises (com::sun::star::uno::RuntimeException);
65    };
66    [attribute, readonly] long A4 {
67        get raises (com::sun::star::uno::DeploymentException);
68    };
69
70    [oneway] void testOneway();
71
72    void testExceptions()
73        raises( com::sun::star::uno::Exception,
74                com::sun::star::lang::ClassNotFoundException);
75
76
77    PolyStruct<char,long> testPolyStruct([in] PolyStruct<char, long> val);
78
79
80    void inParameters([in] boolean aBool, [in] byte aByte, [in] short aShort,
81                      [in] unsigned short aUShort, [in] long aLong, [in] unsigned long aULong,
82                      [in] hyper aHyper, [in] unsigned hyper aUHyper, [in] float aFloat,
83                      [in] double aDouble, [in] char aChar, [in] string aString,
84                      [in] type aType, [in] any aAny, [in] Enum2 aEnum, [in] Struct1 aStruct,
85                      [in] com::sun::star::uno::XInterface aXInterface,
86                      [in] com::sun::star::lang::XComponent aXComponent,
87                      [in] sequence<boolean> seqBool);
88
89    void outParameters([out] boolean aBool, [out] byte aByte, [out] short aShort,
90                      [out] unsigned short aUShort, [out] long aLong, [out] unsigned long aULong,
91                      [out] hyper aHyper, [out] unsigned hyper aUHyper, [out] float aFloat,
92                      [out] double aDouble, [out] char aChar, [out] string aString,
93                      [out] type aType, [out] any aAny, [out] Enum2 aEnum, [out] Struct1 aStruct,
94                      [out] com::sun::star::uno::XInterface aXInterface,
95                      [out] com::sun::star::lang::XComponent aXComponent,
96                      [out] sequence<boolean> seqBool);
97
98    void inoutParameters([inout] boolean aBool, [inout] byte aByte, [inout] short aShort,
99                         [inout] unsigned short aUShort, [inout] long aLong,
100                         [inout] unsigned long aULong,
101                         [inout] hyper aHyper, [inout] unsigned hyper aUHyper,
102                         [inout] float aFloat,
103                         [inout] double aDouble, [inout] char aChar, [inout] string aString,
104                         [inout] type aType, [inout] any aAny, [inout] Enum2 aEnum,
105                         [inout] Struct1 aStruct,
106                         [inout] com::sun::star::uno::XInterface aXInterface,
107                         [inout] com::sun::star::lang::XComponent aXComponent,
108                         [inout] sequence<boolean> seqBool);
109    boolean retBoolean();
110    byte retByte();
111    short retShort();
112    unsigned short retUShort();
113    long retLong();
114    unsigned long retULong();
115    hyper retHyper();
116    unsigned hyper retUHyper();
117    float retFloat();
118    double retDouble();
119    char retChar();
120    string retString();
121    type retType();
122    any retAny();
123    Enum2 retEnum();
124    Struct1 retStruct1();
125    com::sun::star::uno::XInterface retXInterface();
126    com::sun::star::lang::XComponent retXComponent();
127    sequence<boolean> retSeqBool();
128
129    [attribute] boolean attrBoolean;
130    [attribute] byte attrByte;
131    [attribute] short attrShort;
132    [attribute] unsigned short attrUShort;
133    [attribute] long attrLong;
134    [attribute] unsigned long attrULong;
135    [attribute] hyper attrHyper;
136    [attribute] unsigned hyper attrUHyper;
137    [attribute] float attrFloat;
138    [attribute] double attrDouble;
139    [attribute] char attrChar;
140    [attribute] string attrString;
141    [attribute] type attrType;
142    [attribute] any attrAny;
143    [attribute] Enum2 attrEnum2;
144    [attribute] Struct1 attrStruct1;
145    [attribute] com::sun::star::uno::XInterface attrXInterface;
146    [attribute] com::sun::star::lang::XComponent attrXComponent;
147    [attribute] sequence<boolean> attrSeqBoolean;
148 };
149
150typedef boolean Boolean;
151typedef byte Byte;
152typedef short Short;
153typedef unsigned short UnsignedShort;
154typedef long Long;
155typedef unsigned long UnsignedLong;
156typedef hyper Hyper;
157typedef unsigned hyper UnsignedHyper;
158typedef float Float;
159typedef double Double;
160typedef char Char;
161typedef string String;
162typedef type Type;
163typedef any Any;
164typedef Enum2 Enum;
165typedef Struct1 Struct;
166typedef com::sun::star::uno::XInterface XInterface;
167typedef com::sun::star::uno::XNamingService XNamingService;
168typedef com::sun::star::lang::XComponent XComponent;
169
170typedef sequence< Boolean > SequenceBoolean;
171typedef sequence< Byte > SequenceByte;
172typedef sequence< Short > SequenceShort;
173typedef sequence< UnsignedShort > SequenceUnsignedShort;
174typedef sequence< Long > SequenceLong;
175typedef sequence< UnsignedLong > SequenceUnsignedLong;
176typedef sequence< Hyper > SequenceHyper;
177typedef sequence< UnsignedHyper > SequenceUnsignedHyper;
178typedef sequence< Float > SequenceFloat;
179typedef sequence< Double > SequenceDouble;
180typedef sequence< Char > SequenceChar;
181typedef sequence< String > SequenceString;
182typedef sequence< Type > SequenceType;
183typedef sequence< Any > SequenceAny;
184typedef sequence< Enum > SequenceEnum;
185typedef sequence< Struct > SequenceStruct;
186typedef sequence< XInterface > SequenceXInterface;
187typedef sequence< XNamingService > SequenceXNamingService;
188typedef sequence< XComponent > SequenceXComponent;
189
190struct Struct2 {
191    boolean p1;
192    byte p2;
193    short p3;
194    unsigned short p4;
195    long p5;
196    unsigned long p6;
197    hyper p7;
198    unsigned hyper p8;
199    float p9;
200    double p10;
201    char p11;
202    string p12;
203    type p13;
204    any p14;
205    Enum2 p15;
206    Struct1 p16;
207    com::sun::star::uno::XInterface p17;
208    com::sun::star::uno::XNamingService p18;
209    Boolean t1;
210    Byte t2;
211    Short t3;
212    UnsignedShort t4;
213    Long t5;
214    UnsignedLong t6;
215    Hyper t7;
216    UnsignedHyper t8;
217    Float t9;
218    Double t10;
219    Char t11;
220    String t12;
221    Type t13;
222    Any t14;
223    Enum t15;
224    Struct t16;
225    XInterface t17;
226    XNamingService t18;
227    sequence< boolean > a1;
228    sequence< byte > a2;
229    sequence< short > a3;
230    sequence< unsigned short > a4;
231    sequence< long > a5;
232    sequence< unsigned long > a6;
233    sequence< hyper > a7;
234    sequence< unsigned hyper > a8;
235    sequence< float > a9;
236    sequence< double > a10;
237    sequence< char > a11;
238    sequence< string > a12;
239    sequence< type > a13;
240    sequence< any > a14;
241    sequence< Enum2 > a15;
242    sequence< Struct1 > a16;
243    sequence< com::sun::star::uno::XInterface > a17;
244    sequence< com::sun::star::uno::XNamingService > a18;
245    sequence< sequence< boolean > > aa1;
246    sequence< sequence< byte > > aa2;
247    sequence< sequence< short > > aa3;
248    sequence< sequence< unsigned short > > aa4;
249    sequence< sequence< long > > aa5;
250    sequence< sequence< unsigned long > > aa6;
251    sequence< sequence< hyper > > aa7;
252    sequence< sequence< unsigned hyper > > aa8;
253    sequence< sequence< float > > aa9;
254    sequence< sequence< double > > aa10;
255    sequence< sequence< char > > aa11;
256    sequence< sequence< string > > aa12;
257    sequence< sequence< type > > aa13;
258    sequence< sequence< any > > aa14;
259    sequence< sequence< Enum2 > > aa15;
260    sequence< sequence< Struct1 > > aa16;
261    sequence< sequence< com::sun::star::uno::XInterface > > aa17;
262    sequence< sequence< com::sun::star::uno::XNamingService > > aa18;
263    sequence< SequenceBoolean > at1;
264    sequence< SequenceByte > at2;
265    sequence< SequenceShort > at3;
266    sequence< SequenceUnsignedShort > at4;
267    sequence< SequenceLong > at5;
268    sequence< SequenceUnsignedLong > at6;
269    sequence< SequenceHyper > at7;
270    sequence< SequenceUnsignedHyper > at8;
271    sequence< SequenceFloat > at9;
272    sequence< SequenceDouble > at10;
273    sequence< SequenceChar > at11;
274    sequence< SequenceString > at12;
275    sequence< SequenceType > at13;
276    sequence< SequenceAny > at14;
277    sequence< SequenceEnum > at15;
278    sequence< SequenceStruct > at16;
279    sequence< SequenceXInterface > at17;
280    sequence< SequenceXNamingService > at18;
281};
282
283struct Struct3
284{
285    XTest iTest;
286};
287
288struct Struct4: Struct3
289{
290    long n;
291};
292
293struct Struct5
294{
295    Struct3 m;
296    Struct4 n;
297};
298
299struct Struct6
300{
301    Struct4 m;
302};
303
304struct Struct7
305{
306    sequence<sequence<Struct6> > seqseqStruct6;
307};
308
309service S1: XTest {
310    create1();
311
312    create2([in] any... create2)
313        raises (com::sun::star::uno::RuntimeException,
314                com::sun::star::lang::ClassNotFoundException,
315                com::sun::star::uno::Exception,
316                com::sun::star::lang::IllegalAccessException,
317                com::sun::star::uno::DeploymentException);
318
319    create3([in] sequence<any> S1)
320        raises (com::sun::star::uno::RuntimeException,
321                com::sun::star::lang::ClassNotFoundException,
322                com::sun::star::lang::IllegalAccessException,
323                com::sun::star::uno::DeploymentException);
324
325    create4([in] long javamaker, [in] long S1, [in] long create4);
326
327    create5(
328        [in] boolean p1,
329        [in] byte p2,
330        [in] short p3,
331        [in] unsigned short p4,
332        [in] long p5,
333        [in] unsigned long p6,
334        [in] hyper p7,
335        [in] unsigned hyper p8,
336        [in] float p9,
337        [in] double p10,
338        [in] char p11,
339        [in] string p12,
340        [in] type p13,
341        [in] any p14,
342        [in] Enum2 p15,
343        [in] Struct1 p16,
344        [in] PolyStruct<char, short> p17,
345        [in] PolyStruct<any, short> p18,
346        [in] com::sun::star::uno::XInterface p19,
347        [in] com::sun::star::lang::XComponent p20,
348        [in] Boolean t1,
349        [in] Byte t2,
350        [in] Short t3,
351        [in] UnsignedShort t4,
352        [in] Long t5,
353        [in] UnsignedLong t6,
354        [in] Hyper t7,
355        [in] UnsignedHyper t8,
356        [in] Float t9,
357        [in] Double t10,
358        [in] Char t11,
359        [in] String t12,
360        [in] Type t13,
361        [in] Any t14,
362        [in] Enum t15,
363        [in] Struct t16,
364        [in] XInterface t17,
365        [in] XComponent t18,
366        [in] sequence< boolean > a1,
367        [in] sequence< byte > a2,
368        [in] sequence< short > a3,
369        [in] sequence< unsigned short > a4,
370        [in] sequence< long > a5,
371        [in] sequence< unsigned long > a6,
372        [in] sequence< hyper > a7,
373        [in] sequence< unsigned hyper > a8,
374        [in] sequence< float > a9,
375        [in] sequence< double > a10,
376        [in] sequence< char > a11,
377        [in] sequence< string > a12,
378        [in] sequence< type > a13,
379        [in] sequence< any > a14,
380        [in] sequence< Enum2 > a15,
381        [in] sequence< Struct1 > a16,
382        [in] sequence< com::sun::star::uno::XInterface > a17,
383        [in] sequence< com::sun::star::lang::XComponent > a18,
384        [in] sequence< sequence< boolean > > aa1,
385        [in] sequence< sequence< byte > > aa2,
386        [in] sequence< sequence< short > > aa3,
387        [in] sequence< sequence< unsigned short > > aa4,
388        [in] sequence< sequence< long > > aa5,
389        [in] sequence< sequence< unsigned long > > aa6,
390        [in] sequence< sequence< hyper > > aa7,
391        [in] sequence< sequence< unsigned hyper > > aa8,
392        [in] sequence< sequence< float > > aa9,
393        [in] sequence< sequence< double > > aa10,
394        [in] sequence< sequence< char > > aa11,
395        [in] sequence< sequence< string > > aa12,
396        [in] sequence< sequence< type > > aa13,
397        [in] sequence< sequence< any > > aa14,
398        [in] sequence< sequence< Enum2 > > aa15,
399        [in] sequence< sequence< Struct1 > > aa16,
400        [in] sequence< sequence< com::sun::star::uno::XInterface > > aa17,
401        [in] sequence< sequence< com::sun::star::lang::XComponent > > aa18,
402        [in] sequence< SequenceBoolean > at1,
403        [in] sequence< SequenceByte > at2,
404        [in] sequence< SequenceShort > at3,
405        [in] sequence< SequenceUnsignedShort > at4,
406        [in] sequence< SequenceLong > at5,
407        [in] sequence< SequenceUnsignedLong > at6,
408        [in] sequence< SequenceHyper > at7,
409        [in] sequence< SequenceUnsignedHyper > at8,
410        [in] sequence< SequenceFloat > at9,
411        [in] sequence< SequenceDouble > at10,
412        [in] sequence< SequenceChar > at11,
413        [in] sequence< SequenceString > at12,
414        [in] sequence< SequenceType > at13,
415        [in] sequence< SequenceAny > at14,
416        [in] sequence< SequenceEnum > at15,
417        [in] sequence< SequenceStruct > at16,
418        [in] sequence< SequenceXInterface > at17,
419        [in] sequence< SequenceXComponent > at18
420         );
421
422    create6(
423        [in] PolyStruct2<type> arg1,
424        [in] PolyStruct2<any> arg2,
425        [in] PolyStruct2<boolean> arg3,
426        [in] PolyStruct2<byte> arg4,
427        [in] PolyStruct2<char> arg5,
428        [in] PolyStruct2<short> arg6,
429        [in] PolyStruct2<long> arg7,
430        [in] PolyStruct2<hyper> arg8,
431        [in] PolyStruct2<string> arg9,
432        [in] PolyStruct2<float> arg10,
433        [in] PolyStruct2<double> arg11,
434        [in] PolyStruct2<com::sun::star::uno::XInterface> arg12,
435        [in] PolyStruct2<com::sun::star::lang::XComponent> arg13,
436        [in] PolyStruct2<PolyStruct<char,any> > arg14,
437        [in] PolyStruct2<PolyStruct<PolyStruct<char,any>,string> > arg15,
438        [in] PolyStruct<string, PolyStruct<char, PolyStruct2<any> > > arg16,
439        [in] PolyStruct<PolyStruct<char,any>, PolyStruct2<char> > arg17,
440        [in] PolyStruct2<sequence<type> > arg101,
441        [in] PolyStruct2<sequence<any> > arg102,
442        [in] PolyStruct2<sequence<boolean> > arg103,
443        [in] PolyStruct2<sequence<byte> > arg104,
444        [in] PolyStruct2<sequence<char> > arg105,
445        [in] PolyStruct2<sequence<short> > arg106,
446        [in] PolyStruct2<sequence<long> > arg107,
447        [in] PolyStruct2<sequence<hyper> > arg108,
448        [in] PolyStruct2<sequence<string> > arg109,
449        [in] PolyStruct2<sequence<float> > arg110,
450        [in] PolyStruct2<sequence<double> > arg111,
451        [in] PolyStruct2<sequence<com::sun::star::uno::XInterface> > arg112,
452        [in] PolyStruct2<sequence<com::sun::star::lang::XComponent> > arg113,
453        [in] PolyStruct2<sequence<PolyStruct<char, sequence<any> > > > arg114,
454        [in] PolyStruct2<sequence<PolyStruct<PolyStruct2<char>, sequence<any> > > > arg115,
455        [in] PolyStruct2<sequence<sequence<char> > > arg201,
456        [in] sequence<PolyStruct2< char > > arg301,
457        [in] sequence<PolyStruct2<PolyStruct<char,any> > > arg302,
458        [in] sequence<PolyStruct2<PolyStruct<PolyStruct<char,any>,string> > > arg303,
459        [in] sequence<PolyStruct<string, PolyStruct<char, PolyStruct2<any> > > > arg304,
460        [in] sequence<PolyStruct<PolyStruct<char,any>, PolyStruct2<char> > > arg305,
461        [in] sequence<sequence<PolyStruct2< char > > > arg401,
462        [in] sequence<sequence<PolyStruct2<PolyStruct<char,any> > > >arg402,
463        [in] sequence<sequence<PolyStruct2<PolyStruct<PolyStruct<char,any>,string> > > > arg403,
464        [in] sequence<sequence<PolyStruct<string, PolyStruct<char, PolyStruct2<any> > > > > arg404,
465        [in] sequence<sequence<PolyStruct<PolyStruct<char,any>, PolyStruct2<char> > > > arg405
466
467        );
468};
469
470service S2: XTest;
471
472service S3 { interface XTest; };
473
474singleton S4: XTest;
475
476singleton S5 { service S2; };
477
478
479}; }; };
480