1 karl 1.1 // ==================================================================
2 // Title: Core MOF Specification Additions 2.5
3 // Filename: CIM_CoreAdditions25.MOF
4 // Version: 2.5
5 // Date: 12/19/2000
6 // Release: 0
7 // Description: The object classes below are new to the version stated above
8 // and being evaluated in premliminary release status.
9 // ===================================================================
10 // Author: DMTF System and Devices Working Group
11 // Editor: Michael A. Thatcher
12 // ==================================================================
13 // Date 12/01/2000 Version 2.5
14 // - CR538a Add MethodParameters class and associations.
15 // - CR555b Define the classes, SystemSetting and SystemConfiguration,
16 // and appropriate associations
17 // - CR585 Company review Changes from Compaq
18 // 2.) Add CIM_ to CIM_MethodParameters.ResetValues() input parameter ManagedElement ref
19 //
20 // ==================================================================
21
22 karl 1.1 // ==================================================================
23 // MethodParameters
24 // ==================================================================
25 [Abstract, Description ("CIM_MethodParameters "
26 "represents a set of values to be used as the parameters "
27 "of a method These parameters may be passed to the "
28 "method, diretly used by the method in its invocation, "
29 "or accessed by the method when it is called. "
30 "The properties of a concrete subclass of MethodParameters "
31 "are mapped to the parameters of a method by the method "
32 "itself or by the method caller. This is an implementation detail "
33 "independent of the definition of the class. "
34 "For ease of use, property names "
35 "should match parameter names. \n\n "
36 "Property values should be set before the method is invoked. "
37 "The ModelCorrespondence qualifier can be used to indicate "
38 "if the property value should come from another class's property. "
39 "The instances that the property values should be gleaned from "
40 "should be associated with MethodParameters using "
41 "the ParameterValueSources association. "
42 "If the property is declared as an array, then the same "
43 karl 1.1 "property value (identified by the ModelCorrespondence) "
44 "will be retrieved from all appropriate ParameterValueSources instances "
45 "and stored in the array. If the property is declared as an "
46 "array and the ModelCorrespondence is to an array "
47 "property, then only one instance of the array will be "
48 "copied from one ParameterValueSource. "
49 "If the property is not declared as an array and there are "
50 "multiple instances of the class and property associated with "
51 "it through model correspondence where the values are "
52 "not all the same, then an error will occur "
53 "and the property's value will not be set. "
54 "Several MethodParameters instances can be associated "
55 "with any ManagedElement's methods. This allows the "
56 "maintenance of 'canned' method invocation and reduces the "
57 "overhead of recreating all method parameters for every method "
58 "invocation.")]
59 class CIM_MethodParameters : CIM_ManagedElement
60 { [maxlen (256) , Description (
61 "The identifier by which the MethodParameters object is known.") ]
62 string MethodParametersId ;
63 [Description (
64 karl 1.1 "The resetValues method updates the values of the properties of "
65 "MethodParameters which have ModelCorrespondence to the "
66 "SourceME ManagedElement. This allows the association of "
67 "several source candidates with the MethodParameters with "
68 "one being chosen as the source for this set of values. "
69 "If resetValues is invoked and sourceME is null, then all "
70 "associated MEs in ParameterValueSources will be used "
71 "to set the values of the MethodParameters properties. ")]
72 uint32 resetValues([IN] CIM_ManagedElement ref SourceME );
73 };
74
75 // ===================================================================
76 // ParameterValueSources
77 // ===================================================================
78 [Association, Description (
79 "ParameterValueSources represents the association between "
80 "a MethodParameters instance and the ManagedElement instances "
81 "which contain properties to be used to create values "
82 "for the MethodParameters properties. " ) ]
83 class CIM_ParameterValueSources
84 { [Key, Description (
85 karl 1.1 "The MethodParameters instance whose "
86 "property values are to be set.") ]
87 CIM_MethodParameters ref Parameters;
88 [Key, Description ("The ManagedElement "
89 "which contains properties to be used "
90 "to populate the values of the properties "
91 "of the MethodParameters instance.") ]
92 CIM_ManagedElement ref ValueSource;
93 };
94
95 // ===================================================================
96 // ParametersForMethod
97 // ===================================================================
98 [Association, Description (
99 "ParametersForMethod represents the association between "
100 "MethodParameters class(es) and a ManagedElement "
101 "which has a method may use this "
102 "MethodParameters instance during its invocation."
103 "This association is optional, as the MethodParameters "
104 "instance may be passed as a parameter to a method "
105 "or used to create a method signature before the method "
106 karl 1.1 "is invoked. This association is useful for finding all "
107 "the valid MethodParameters instances for a particular "
108 "method. This may be particularly useful for user "
109 "oriented interfaces and automated or policy driven "
110 "method invocations.")]
111 class CIM_ParametersForMethod
112 { [Key, Description ("The MethodParameters instance which "
113 "may be used by the ParametersForMethod's method invocation.")]
114 CIM_MethodParameters ref Parameters;
115 [Key, Description ("The ManagedElement which has "
116 "a method that may use this instance of MethodParameters.") ]
117 CIM_ManagedElement ref TheMethod;
118 [Key, MaxLen(64),Description ("The name of the method that "
119 "may use this instance of MethodParameters during its invocation.")]
120 string MethodName;
121 };
122
123 // ==================================================================
124 // CIM_SystemSetting
125 // ==================================================================
126 [Abstract, Description (
127 karl 1.1 "CIM_SystemSetting represents the general concept "
128 "of a CIM_Setting which is scoped by/weak to a System.")]
129 class CIM_SystemSetting : CIM_Setting {
130 [Propagated ("CIM_System.CreationClassName"), Key,
131 MaxLen (256), Description (
132 "The scoping System's CreationClassName.") ]
133 string SystemCreationClassName;
134 [Propagated ("CIM_System.Name"), Key, MaxLen (256),
135 Description ("The scoping System's Name.") ]
136 string SystemName;
137 [Key, MaxLen (256), Description (
138 "CreationClassName indicates the name of the class or the "
139 "subclass used in the creation of an instance. When used "
140 "with the other key properties of this class, this property "
141 "allows all instances of this class and its subclasses to "
142 "be uniquely identified.") ]
143 string CreationClassName;
144 [Override ("SettingID"), Key, MaxLen (256)]
145 string SettingID;
146 };
147
148 karl 1.1 // ==================================================================
149 // CIM_SettingForSystem
150 // ==================================================================
151 [Association, Description (
152 "CIM_SettingForSystem defines a Setting in the context "
153 "of the System on which it resides.")]
154 class CIM_SettingForSystem : CIM_Dependency {
155 [Override ("Antecedent"), Max (1), Min (1),
156 Description ("The hosting System.")]
157 CIM_System REF Antecedent;
158 [Override ("Dependent"), Weak,
159 Description ("The Setting defined for the System.")]
160 CIM_SystemSetting REF Dependent;
161 };
162
163 // ==================================================================
164 // CIM_SystemConfiguration
165 // ==================================================================
166 [Description (
167 "CIM_SystemConfiguration represents the general concept "
168 "of a CIM_Configuration which is scoped by/weak to a "
169 karl 1.1 "System. This class is a peer of CIM_Configuration since "
170 "the key structure of Configuration is currently "
171 "defined and cannot be modified with additional "
172 "properties.")]
173 class CIM_SystemConfiguration : CIM_ManagedElement {
174 [Propagated ("CIM_System.CreationClassName"), Key,
175 MaxLen (256), Description (
176 "The scoping System's CreationClassName.") ]
177 string SystemCreationClassName;
178 [Propagated ("CIM_System.Name"), Key, MaxLen (256),
179 Description ("The scoping System's Name.") ]
180 string SystemName;
181 [Key, MaxLen (256), Description (
182 "CreationClassName indicates the name of the class or the "
183 "subclass used in the creation of an instance. When used "
184 "with the other key properties of this class, this property "
185 "allows all instances of this class and its subclasses to "
186 "be uniquely identified.") ]
187 string CreationClassName;
188 [Key, MaxLen (256), Description (
189 "The label by which the Configuration object is known.") ]
190 karl 1.1 string Name;
191 };
192
193 // ==================================================================
194 // CIM_ConfigurationForSystem
195 // ==================================================================
196 [Association, Description (
197 "CIM_ConfigurationForSystem defines a Configuration "
198 "in the context of the System on which it resides.")]
199 class CIM_ConfigurationForSystem : CIM_Dependency {
200 [Override ("Antecedent"), Max (1), Min (1),
201 Description ("The hosting System.")]
202 CIM_System REF Antecedent;
203 [Override ("Dependent"), Weak,
204 Description ("The Configuration defined for the System.")]
205 CIM_SystemConfiguration REF Dependent;
206 };
207
208 // ==================================================================
209 // CIM_SystemSettingContext
210 // ==================================================================
211 karl 1.1 [Association, Aggregation, Description (
212 "This relationship associates System-specific Configuration "
213 "objects with System-specific Setting objects, similar to the "
214 "SettingContext association.")]
215 class CIM_SystemSettingContext {
216 [Aggregate, Key, Description (
217 "The Configuration object that aggregates the Setting.") ]
218 CIM_SystemConfiguration REF Context;
219 [Key, Description ("An aggregated Setting.")]
220 CIM_SystemSetting REF Setting;
221 };
222
223 // ===================================================================
224 // end of file
225 // ===================================================================
|