c0166dfbd611384678430bfcd000d7793c4d3b67
[tpot/pegasus/.git] / src / Pegasus / ProviderManager2 / JMPI / org / pegasus / jmpi / tests / Providers / Instances / JMPICIMInstance2Provider.mof
1 //%LICENSE////////////////////////////////////////////////////////////////
2 //
3 // Licensed to The Open Group (TOG) under one or more contributor license
4 // agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
5 // this work for additional information regarding copyright ownership.
6 // Each contributor licenses this file to you under the OpenPegasus Open
7 // Source License; you may not use this file except in compliance with the
8 // License.
9 //
10 // Permission is hereby granted, free of charge, to any person obtaining a
11 // copy of this software and associated documentation files (the "Software"),
12 // to deal in the Software without restriction, including without limitation
13 // the rights to use, copy, modify, merge, publish, distribute, sublicense,
14 // and/or sell copies of the Software, and to permit persons to whom the
15 // Software is furnished to do so, subject to the following conditions:
16 //
17 // The above copyright notice and this permission notice shall be included
18 // in all copies or substantial portions of the Software.
19 //
20 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
21 // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
23 // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
24 // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
25 // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
26 // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27 //
28 //////////////////////////////////////////////////////////////////////////
29
30 // ==================================================================
31 // JMPICIMInstance2_TestElement
32 // ==================================================================
33 [ Abstract,
34   Version ("2.2.0"),
35   Description ("JMPICIMInstance2_TestElement is an abstract class that provides a common "
36                "superclass (or top of the inheritance tree) for the "
37                "non-association classes in the test Schema.")
38 ]
39 class JMPICIMInstance2_TestElement
40 {
41    [ Key,
42      MaxLen (256),
43      Description ("CreationClassName indicates the name of the class or the "
44                   "subclass used in the creation of an instance. When used "
45                   "with the other key properties of this class, this property "
46                   "allows all instances of this class and its subclasses to "
47                   "be uniquely identified.")
48    ]
49    string CreationClassName;
50
51    [ Key,
52      Description ("An identifier that uniquely identifies each instance "
53                   "of the JMPICIMInstance2_TestElement hierarchy.")
54    ]
55    uint64 InstanceId;
56 };
57
58 // ===================================================================
59 // JMPICIMInstance2_TestPropertyTypes
60 // ===================================================================
61 [ Version ("2.2.0"),
62   Description ("JMPICIMInstance2_TestPropertyTypes is a concrete class derived from "
63                "JMPICIMInstance2_TestElement"),
64   provider ("JMPICIMInstance2_TestPropertyTypes")
65 ]
66 class JMPICIMInstance2_TestPropertyTypes : JMPICIMInstance2_TestElement
67 {
68    [ Maxlen (256),
69      Description ("a string property of JMPICIMInstance2_TestPropertyTypes")
70    ]
71    string PropertyString;
72
73    [ Description ("a uint8 property of JMPICIMInstance2_TestPropertyTypes")
74    ]
75    uint8 PropertyUint8;
76
77    [ Description ("a uint16 property of JMPICIMInstance2_TestPropertyTypes")
78    ]
79    uint16 PropertyUint16;
80
81    [ Description ("a uint32 property of JMPICIMInstance2_TestPropertyTypes")
82    ]
83    uint32 PropertyUint32;
84
85    [ Description ("a uint64 property of JMPICIMInstance2_TestPropertyTypes")
86    ]
87    uint64 PropertyUint64;
88
89    [ Description ("a sint8 property of JMPICIMInstance2_TestPropertyTypes")
90    ]
91    sint8 PropertySint8;
92
93    [ Description ("a sint16 property of JMPICIMInstance2_TestPropertyTypes")
94    ]
95    sint16 PropertySint16;
96
97    [ Description ("a sint32 property of JMPICIMInstance2_TestPropertyTypes")
98    ]
99    sint32 PropertySint32;
100
101    [ Description ("a sint64 property of JMPICIMInstance2_TestPropertyTypes")
102    ]
103    sint64 PropertySint64;
104
105    [ Description ("a boolean property of JMPICIMInstance2_TestPropertyTypes")
106    ]
107    boolean PropertyBoolean;
108
109    [ Description ("a real32 property of JMPICIMInstance2_TestPropertyTypes")
110    ]
111    real32 PropertyReal32;
112
113    [ Description ("a real64 property of JMPICIMInstance2_TestPropertyTypes")
114    ]
115    real64 PropertyReal64;
116
117    [ Description ("a datetime property of JMPICIMInstance2_TestPropertyTypes")
118    ]
119    datetime PropertyDatetime;
120
121    [ Description ("a char16 property of JMPICIMInstance2_TestPropertyTypes")
122    ]
123    char16 PropertyChar16;
124
125    [ Description ("an object property of JMPICIMInstance2_TestPropertyTypes"),
126      EmbeddedObject
127    ]
128    string PropertyObject;
129
130 // [ Description ("a reference property of JMPICIMInstance2_TestPropertyTypes")
131 // ]
132 // ref PropertyReference;
133
134    [ Description ("an array of uint8s property of JMPICIMInstance2_TestPropertyTypes")
135    ]
136    uint8 PropertyArrayUint8[];
137
138    [ Description ("an array of uint16s property of JMPICIMInstance2_TestPropertyTypes")
139    ]
140    uint16 PropertyArrayUint16[];
141
142    [ Description ("an array of uint32s property of JMPICIMInstance2_TestPropertyTypes")
143    ]
144    uint32 PropertyArrayUint32[];
145
146    [ Description ("an array of uint64s property of JMPICIMInstance2_TestPropertyTypes")
147    ]
148    uint64 PropertyArrayUint64[];
149
150    [ Description ("an array of sint8s property of JMPICIMInstance2_TestPropertyTypes")
151    ]
152    sint8 PropertyArraySint8[];
153
154    [ Description ("an array of sint16s property of JMPICIMInstance2_TestPropertyTypes")
155    ]
156    sint16 PropertyArraySint16[];
157
158    [ Description ("an array of sint32s property of JMPICIMInstance2_TestPropertyTypes")
159    ]
160    sint32 PropertyArraySint32[];
161
162    [ Description ("an array of sint64s property of JMPICIMInstance2_TestPropertyTypes")
163    ]
164    sint64 PropertyArraySint64[];
165
166    [ Description ("an array of booleans property of JMPICIMInstance2_TestPropertyTypes")
167    ]
168    boolean PropertyArrayBoolean[];
169
170    [ Description ("an array of real32s property of JMPICIMInstance2_TestPropertyTypes")
171    ]
172    real32 PropertyArrayReal32[];
173
174    [ Description ("an array of real64s property of JMPICIMInstance2_TestPropertyTypes")
175    ]
176    real64 PropertyArrayReal64[];
177
178    [ Description ("an array of datetimes property of JMPICIMInstance2_TestPropertyTypes")
179    ]
180    datetime PropertyArrayDatetime[];
181
182    [ Description ("an array of char16s property of JMPICIMInstance2_TestPropertyTypes")
183    ]
184    char16 PropertyArrayChar16[];
185
186    [ Description ("an object property of JMPICIMInstance2_TestPropertyTypes"),
187      EmbeddedObject
188    ]
189    string PropertyArrayObject[];
190
191    [ Description ("a function that returns a string which says hello")
192    ]
193    String sayHello ();
194
195    [ Description ("a function which tells the provider to allow modifications")
196    ]
197    boolean enableModifications (boolean fState);
198 };