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/WrappedTargetException.idl"
25#include "com/sun/star/uno/Exception.idl"
26#include "com/sun/star/uno/RuntimeException.idl"
27#include "com/sun/star/uno/XInterface.idl"
28
29module test { module registrytdprovider {
30
31published enum Enum1 { E1 };
32
33enum Enum2 { E1 };
34
35published struct Struct1 { long s1; };
36
37struct Struct2 { Struct1 s1; };
38
39published struct Struct3<T, U> { U s2; };
40
41struct Struct3a<T, U> { U s2; };
42
43struct Struct4: Struct2 { Struct3< Struct2, Struct3< boolean, any > > s2; };
44
45published exception Exception1: com::sun::star::uno::Exception {};
46
47exception Exception2: com::sun::star::uno::Exception {};
48
49published interface XBase {};
50
51published typedef XBase Typedef1;
52
53typedef Typedef1 Typedef2;
54
55published interface XTest1 {
56    [optional] interface XBase;
57
58    void f1([out] any p) raises (com::sun::star::uno::RuntimeException);
59
60    [oneway] void f2();
61
62    [attribute, bound] short a1;
63
64    [attribute] long a2 {
65        get raises
66            (com::sun::star::lang::WrappedTargetException,
67             com::sun::star::uno::RuntimeException);
68        set raises
69            (com::sun::star::uno::Exception,
70             com::sun::star::lang::WrappedTargetException);
71    };
72
73    [attribute, readonly, bound] hyper a3 {
74        get raises (com::sun::star::lang::WrappedTargetException);
75    };
76};
77
78interface XTest2: Typedef2 {};
79
80published service Service1: XTest1 {
81    c1();
82
83    c2([in] any... p) raises (com::sun::star::uno::RuntimeException);
84};
85
86service Service2 {
87    [optional] interface XBase;
88
89    interface XTest1;
90};
91
92service Service3: Typedef2 {};
93
94singleton Singleton1: XTest1;
95
96published singleton Singleton2 { service Service1; };
97
98singleton Singleton3: Typedef2;
99
100published const long Const1 = 0;
101
102const long Const2 = 0;
103
104published constants Consts1 { const long C = 0; };
105
106constants Consts2 { const long C = 0; };
107
108}; };
109