1 chip 1.1 //%/////////////////////////////////////////////////////////////////////////////
2 //
3 // Copyright (c) 2000, 2001 The Open group, BMC Software, Tivoli Systems, IBM
4 //
5 // Permission is hereby granted, free of charge, to any person obtaining a copy
6 // of this software and associated documentation files (the "Software"), to
7 // deal in the Software without restriction, including without limitation the
8 // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
9 // sell copies of the Software, and to permit persons to whom the Software is
10 // furnished to do so, subject to the following conditions:
11 //
12 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
13 // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
14 // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
15 // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
16 // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
17 // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
18 // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
19 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20 //
21 //==============================================================================
22 chip 1.1 //
23 // Author: Chip Vincent (cvincent@us.ibm.com)
24 //
25 // Modified By: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
26 // Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com)
27 //
28 //%/////////////////////////////////////////////////////////////////////////////
29
30 #ifndef Pegasus_ProviderFacade_h
31 #define Pegasus_ProviderFacade_h
32
33 #include <Pegasus/Common/Config.h>
34
35 #include <Pegasus/Provider/CIMBaseProvider.h>
36 #include <Pegasus/Provider/CIMInstanceProvider.h>
37 #include <Pegasus/Provider/CIMClassProvider.h>
38 #include <Pegasus/Provider/CIMAssociationProvider.h>
39 #include <Pegasus/Provider/CIMPropertyProvider.h>
40 #include <Pegasus/Provider/CIMMethodProvider.h>
41 #include <Pegasus/Provider/CIMQueryProvider.h>
42 #include <Pegasus/Provider/CIMIndicationProvider.h>
43 chip 1.1 #include <Pegasus/Provider/CIMIndicationConsumer.h>
44
45 PEGASUS_NAMESPACE_BEGIN
46
|
65 chip 1.5 // CIMBaseProvider interface
66 virtual void initialize(CIMOMHandle & cimom);
67 virtual void terminate(void);
68
69 // CIMInstanceProvider interface
70 virtual void getInstance(
71 const OperationContext & context,
72 const CIMReference & instanceReference,
73 const Uint32 flags,
74 const Array<String> & propertyList,
75 ResponseHandler<CIMInstance> & handler);
76
77 virtual void enumerateInstances(
78 const OperationContext & context,
79 const CIMReference & classReference,
80 const Uint32 flags,
81 const Array<String> & propertyList,
82 ResponseHandler<CIMInstance> & handler);
83
84 virtual void enumerateInstanceNames(
85 const OperationContext & context,
86 chip 1.5 const CIMReference & classReference,
87 ResponseHandler<CIMReference> & handler);
88
89 virtual void modifyInstance(
90 const OperationContext & context,
91 const CIMReference & instanceReference,
92 const CIMInstance & instanceObject,
93 const Uint32 flags,
94 const Array<String> & propertyList,
95 ResponseHandler<CIMInstance> & handler);
96
97 virtual void createInstance(
98 const OperationContext & context,
99 const CIMReference & instanceReference,
100 const CIMInstance & instanceObject,
101 ResponseHandler<CIMReference> & handler);
102
103 virtual void deleteInstance(
104 const OperationContext & context,
105 const CIMReference & instanceReference,
106 ResponseHandler<CIMInstance> & handler);
107 chip 1.5
108 // CIMClassProvider interface
109 virtual void getClass(
110 const OperationContext & context,
111 const CIMReference & classReference,
112 const Uint32 flags,
113 const Array<String> & propertyList,
114 ResponseHandler<CIMClass> & handler);
115
116 virtual void enumerateClasses(
117 const OperationContext & context,
118 const CIMReference & classReference,
119 const Uint32 flags,
120 ResponseHandler<CIMClass> & handler);
121
122 virtual void enumerateClassNames(
123 const OperationContext & context,
124 const CIMReference & classReference,
125 const Uint32 flags,
126 ResponseHandler<CIMReference> & handler);
127
128 chip 1.5 virtual void modifyClass(
129 const OperationContext & context,
130 const CIMReference & classReference,
131 const CIMClass & classObject,
132 ResponseHandler<CIMClass> & handler);
133
134 virtual void createClass(
135 const OperationContext & context,
136 const CIMReference & classReference,
137 const CIMClass & classObject,
138 ResponseHandler<CIMClass> & handler);
139
140 virtual void deleteClass(
141 const OperationContext & context,
142 const CIMReference & classReference,
143 ResponseHandler<CIMClass> & handler);
144
145 // CIMAssociationProvider interface
146 virtual void associators(
147 const OperationContext & context,
148 const CIMReference & objectName,
149 chip 1.5 const String & associationClass,
150 const String & resultClass,
151 const String & role,
152 const String & resultRole,
153 const Uint32 flags,
154 const Array<String> & propertyList,
155 ResponseHandler<CIMObject> & handler);
156
157 virtual void associatorNames(
158 const OperationContext & context,
159 const CIMReference & objectName,
160 const String & associationClass,
161 const String & resultClass,
162 const String & role,
163 const String & resultRole,
164 ResponseHandler<CIMReference> & handler);
165
166 virtual void references(
167 const OperationContext & context,
168 const CIMReference & objectName,
169 const String & resultClass,
170 chip 1.5 const String & role,
171 const Uint32 flags,
172 const Array<String> & propertyList,
173 ResponseHandler<CIMObject> & handler);
174
175 virtual void referenceNames(
176 const OperationContext & context,
177 const CIMReference & objectName,
178 const String & resultClass,
179 const String & role,
180 ResponseHandler<CIMReference> & handler);
181
182 // CIMPropertyProvider interface
183 virtual void getProperty(
184 const OperationContext & context,
185 const CIMReference & instanceReference,
186 const String & propertyName,
187 ResponseHandler<CIMValue> & handler);
188
189 virtual void setProperty(
190 const OperationContext & context,
191 chip 1.5 const CIMReference & instanceReference,
192 const String & propertyName,
193 const CIMValue & newValue,
194 ResponseHandler<CIMValue> & handler);
195
196 // CIMMethodProviderFacade
197 virtual void invokeMethod(
198 const OperationContext & context,
199 const CIMReference & objectReference,
200 const String & methodName,
201 const Array<CIMParamValue> & inParameters,
202 Array<CIMParamValue> & outParameters,
203 ResponseHandler<CIMValue> & handler);
204
205 // CIMQueryProvider interface
206 virtual void executeQuery(
207 const OperationContext & context,
|
209 chip 1.5 const String & queryLanguage,
210 const String & query,
211 ResponseHandler<CIMObject> & handler);
212
213 // CIMIndicationProvider interface
214 virtual void provideIndication(
215 const OperationContext & context,
216 const CIMReference & classReference,
217 const CIMDateTime & minimumInterval,
218 const CIMDateTime & maximumInterval,
219 const Array<String> & propertyList,
220 ResponseHandler<CIMInstance> & handler);
221
222 virtual void updateIndication(
223 const OperationContext & context,
224 const CIMReference & classReference,
225 const CIMDateTime & minimumInterval,
226 const CIMDateTime & maximumInterval,
227 const Array<String> & propertyList,
228 ResponseHandler<CIMInstance> & handler);
229
230 chip 1.5 virtual void cancelIndication(
231 const OperationContext & context,
232 const CIMReference & classReference,
233 ResponseHandler<CIMInstance> & handler);
234
235 virtual void checkIndication(
236 const OperationContext & context,
237 const CIMReference & classReference,
238 const Array<String> & propertyList,
239 ResponseHandler<CIMInstance> & handler);
240
241 virtual void enableIndication(
242 const OperationContext & context,
243 const String & nameSpace,
244 const Array<String> & classNames,
245 const CIMPropertyList & propertyList,
246 const Uint16 repeatNotificationPolicy,
247 const String & otherRepeatNotificationPolicy,
248 const CIMDateTime & repeatNotificationInterval,
249 const CIMDateTime & repeatNotificationGap,
250 const Uint16 repeatNotificationCount,
251 chip 1.5 const String & condition,
252 const String & queryLanguage,
253 const CIMInstance & subscription,
254 ResponseHandler<CIMInstance> & handler);
255
256 virtual void disableIndication(
257 const OperationContext & context,
258 const String & nameSpace,
259 const Array<String> & classNames,
260 const CIMInstance & subscription,
261 ResponseHandler<CIMInstance> & handler);
262
263 virtual void modifyIndication(
264 const OperationContext & context,
265 const String & nameSpace,
266 const Array<String> & classNames,
267 const CIMPropertyList & propertyList,
268 const Uint16 repeatNotificationPolicy,
269 const String & otherRepeatNotificationPolicy,
270 const CIMDateTime & repeatNotificationInterval,
271 const CIMDateTime & repeatNotificationGap,
272 chip 1.5 const Uint16 repeatNotificationCount,
273 const String & condition,
274 const String & queryLanguage,
275 const CIMInstance & subscription,
276 ResponseHandler<CIMInstance> & handler);
|