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