1 karl 1.10 //%2005////////////////////////////////////////////////////////////////////////
|
2 kumpf 1.1 //
|
3 karl 1.7 // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
4 // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
5 // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
|
6 kumpf 1.1 // IBM Corp.; EMC Corporation, The Open Group.
|
7 karl 1.7 // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
8 // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
|
9 karl 1.10 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
10 // EMC Corporation; VERITAS Software Corporation; The Open Group.
|
11 kumpf 1.1 //
12 // Permission is hereby granted, free of charge, to any person obtaining a copy
13 // of this software and associated documentation files (the "Software"), to
14 // deal in the Software without restriction, including without limitation the
15 // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
16 // sell copies of the Software, and to permit persons to whom the Software is
17 // furnished to do so, subject to the following conditions:
|
18 karl 1.7 //
|
19 kumpf 1.1 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
20 // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
21 // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
22 // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
23 // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
24 // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
25 // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
26 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27 //
28 //==============================================================================
29 //
30 // Author: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
31 //
|
32 carolann.graves 1.11 // Modified By: Carol Ann Krug Graves, Hewlett-Packard Company
33 // (carolann_graves@hp.com)
|
34 kumpf 1.1 //
35 //%/////////////////////////////////////////////////////////////////////////////
36
37 #ifndef Pegasus_CIMMessageDeserializer_h
38 #define Pegasus_CIMMessageDeserializer_h
39
40 #include <Pegasus/Common/Config.h>
41 #include <Pegasus/Common/CIMMessage.h>
42 #include <Pegasus/Common/XmlParser.h>
43
44 PEGASUS_NAMESPACE_BEGIN
45
46 /**
47 CIMMessageDeserializer provides a mechanism to convert a stream of bytes
48 generated by the CIMMessageSerializer class into a CIMMessage object.
49 For additional information, please see the CIMMessageSerializer
50 description.
51 */
52 class PEGASUS_COMMON_LINKAGE CIMMessageDeserializer
53 {
54 public:
55 kumpf 1.1
|
56 david.dillard 1.8 static CIMMessage* deserialize(char* buffer);
|
57 kumpf 1.1
58 private:
59
60 static CIMRequestMessage* _deserializeCIMRequestMessage(
61 XmlParser& parser,
62 Uint32 type);
63
64 static CIMResponseMessage* _deserializeCIMResponseMessage(
65 XmlParser& parser,
66 Uint32 type);
67
68 //
69 // Utility Methods
70 //
71
72 static void _deserializeUserInfo(
73 XmlParser& parser,
74 String& authType,
75 String& userName);
76
77 static void _deserializeQueueIdStack(
78 kumpf 1.1 XmlParser& parser,
79 QueueIdStack& queueIdStack);
80
81 static void _deserializeOperationContext(
82 XmlParser& parser,
83 OperationContext& operationContext);
84
|
85 kumpf 1.12 static void _deserializeContentLanguageList(
|
86 kumpf 1.1 XmlParser& parser,
|
87 kumpf 1.12 ContentLanguageList& contentLanguages);
|
88 kumpf 1.1
|
89 kumpf 1.12 static void _deserializeAcceptLanguageList(
|
90 kumpf 1.1 XmlParser& parser,
|
91 kumpf 1.12 AcceptLanguageList& acceptLanguages);
|
92 kumpf 1.1
93 static void _deserializeCIMException(
94 XmlParser& parser,
95 CIMException& cimException);
96
97 static void _deserializeCIMPropertyList(
98 XmlParser& parser,
99 CIMPropertyList& propertyList);
100
101 static Boolean _deserializeCIMObjectPath(
102 XmlParser& parser,
103 CIMObjectPath& cimObjectPath);
104
105 static Boolean _deserializeCIMInstance(
106 XmlParser& parser,
107 CIMInstance& cimInstance);
108
109 static void _deserializeCIMNamespaceName(
110 XmlParser& parser,
111 CIMNamespaceName& cimNamespaceName);
112
113 kumpf 1.1 static Boolean _deserializeCIMName(
114 XmlParser& parser,
115 CIMName& cimName);
116
|
117 jenny.yu 1.9 static Boolean _deserializeCIMObject(
118 XmlParser& parser,
119 CIMObject& object);
120
|
121 kumpf 1.1 //
122 //
123 // CIM Request Messages
124 //
125 //
126
127 //
128 // CIMOperationRequestMessages
129 //
130
131 static CIMGetInstanceRequestMessage*
132 _deserializeCIMGetInstanceRequestMessage(XmlParser& parser);
133
134 static CIMDeleteInstanceRequestMessage*
135 _deserializeCIMDeleteInstanceRequestMessage(XmlParser& parser);
136
137 static CIMCreateInstanceRequestMessage*
138 _deserializeCIMCreateInstanceRequestMessage(XmlParser& parser);
139
140 static CIMModifyInstanceRequestMessage*
141 _deserializeCIMModifyInstanceRequestMessage(XmlParser& parser);
142 kumpf 1.1
143 static CIMEnumerateInstancesRequestMessage*
144 _deserializeCIMEnumerateInstancesRequestMessage(XmlParser& parser);
145
146 static CIMEnumerateInstanceNamesRequestMessage*
147 _deserializeCIMEnumerateInstanceNamesRequestMessage(XmlParser& parser);
148
149 static CIMExecQueryRequestMessage*
150 _deserializeCIMExecQueryRequestMessage(XmlParser& parser);
151
152 static CIMAssociatorsRequestMessage*
153 _deserializeCIMAssociatorsRequestMessage(XmlParser& parser);
154
155 static CIMAssociatorNamesRequestMessage*
156 _deserializeCIMAssociatorNamesRequestMessage(XmlParser& parser);
157
158 static CIMReferencesRequestMessage*
159 _deserializeCIMReferencesRequestMessage(XmlParser& parser);
160
161 static CIMReferenceNamesRequestMessage*
162 _deserializeCIMReferenceNamesRequestMessage(XmlParser& parser);
163 kumpf 1.1
164 static CIMGetPropertyRequestMessage*
165 _deserializeCIMGetPropertyRequestMessage(XmlParser& parser);
166
167 static CIMSetPropertyRequestMessage*
168 _deserializeCIMSetPropertyRequestMessage(XmlParser& parser);
169
170 static CIMInvokeMethodRequestMessage*
171 _deserializeCIMInvokeMethodRequestMessage(XmlParser& parser);
172
|
173 kumpf 1.2 static CIMInitializeProviderRequestMessage*
174 _deserializeCIMInitializeProviderRequestMessage(XmlParser& parser);
175
|
176 kumpf 1.5 static CIMInitializeProviderAgentRequestMessage*
177 _deserializeCIMInitializeProviderAgentRequestMessage(XmlParser& parser);
178
|
179 kumpf 1.1 //
180 // CIMIndicationRequestMessages
181 //
182
183 static CIMCreateSubscriptionRequestMessage*
184 _deserializeCIMCreateSubscriptionRequestMessage(XmlParser& parser);
185
186 static CIMModifySubscriptionRequestMessage*
187 _deserializeCIMModifySubscriptionRequestMessage(XmlParser& parser);
188
189 static CIMDeleteSubscriptionRequestMessage*
190 _deserializeCIMDeleteSubscriptionRequestMessage(XmlParser& parser);
191
192 //
193 // Generic CIMRequestMessages
194 //
195
196 static CIMExportIndicationRequestMessage*
197 _deserializeCIMExportIndicationRequestMessage(XmlParser& parser);
198
199 static CIMProcessIndicationRequestMessage*
200 kumpf 1.1 _deserializeCIMProcessIndicationRequestMessage(XmlParser& parser);
201
202 static CIMDisableModuleRequestMessage*
203 _deserializeCIMDisableModuleRequestMessage(XmlParser& parser);
204
205 static CIMEnableModuleRequestMessage*
206 _deserializeCIMEnableModuleRequestMessage(XmlParser& parser);
207
208 static CIMStopAllProvidersRequestMessage*
209 _deserializeCIMStopAllProvidersRequestMessage(XmlParser& parser);
210
|
211 kumpf 1.6 static CIMNotifyConfigChangeRequestMessage*
212 _deserializeCIMNotifyConfigChangeRequestMessage(XmlParser& parser);
213
|
214 carolann.graves 1.11 static CIMSubscriptionInitCompleteRequestMessage*
215 _deserializeCIMSubscriptionInitCompleteRequestMessage
216 (XmlParser& parser);
217
|
218 kumpf 1.1 //
219 //
220 // CIM Response Messages
221 //
222 //
223
224 //
225 // CIM Operation Response Messages
226 //
227
228 static CIMGetInstanceResponseMessage*
229 _deserializeCIMGetInstanceResponseMessage(XmlParser& parser);
230
231 static CIMDeleteInstanceResponseMessage*
232 _deserializeCIMDeleteInstanceResponseMessage(XmlParser& parser);
233
234 static CIMCreateInstanceResponseMessage*
235 _deserializeCIMCreateInstanceResponseMessage(XmlParser& parser);
236
237 static CIMModifyInstanceResponseMessage*
238 _deserializeCIMModifyInstanceResponseMessage(XmlParser& parser);
239 kumpf 1.1
240 static CIMEnumerateInstancesResponseMessage*
241 _deserializeCIMEnumerateInstancesResponseMessage(XmlParser& parser);
242
243 static CIMEnumerateInstanceNamesResponseMessage*
244 _deserializeCIMEnumerateInstanceNamesResponseMessage(XmlParser& parser);
245
246 static CIMExecQueryResponseMessage*
247 _deserializeCIMExecQueryResponseMessage(XmlParser& parser);
248
249 static CIMAssociatorsResponseMessage*
250 _deserializeCIMAssociatorsResponseMessage(XmlParser& parser);
251
252 static CIMAssociatorNamesResponseMessage*
253 _deserializeCIMAssociatorNamesResponseMessage(XmlParser& parser);
254
255 static CIMReferencesResponseMessage*
256 _deserializeCIMReferencesResponseMessage(XmlParser& parser);
257
258 static CIMReferenceNamesResponseMessage*
259 _deserializeCIMReferenceNamesResponseMessage(XmlParser& parser);
260 kumpf 1.1
261 static CIMGetPropertyResponseMessage*
262 _deserializeCIMGetPropertyResponseMessage(XmlParser& parser);
263
264 static CIMSetPropertyResponseMessage*
265 _deserializeCIMSetPropertyResponseMessage(XmlParser& parser);
266
267 static CIMInvokeMethodResponseMessage*
268 _deserializeCIMInvokeMethodResponseMessage(XmlParser& parser);
269
|
270 kumpf 1.2 static CIMInitializeProviderResponseMessage*
271 _deserializeCIMInitializeProviderResponseMessage(XmlParser& parser);
272
|
273 kumpf 1.5 static CIMInitializeProviderAgentResponseMessage*
274 _deserializeCIMInitializeProviderAgentResponseMessage(
275 XmlParser& parser);
276
|
277 kumpf 1.1 //
278 // CIM Indication Response Messages
279 //
280
281 static CIMCreateSubscriptionResponseMessage*
282 _deserializeCIMCreateSubscriptionResponseMessage(XmlParser& parser);
283
284 static CIMModifySubscriptionResponseMessage*
285 _deserializeCIMModifySubscriptionResponseMessage(XmlParser& parser);
286
287 static CIMDeleteSubscriptionResponseMessage*
288 _deserializeCIMDeleteSubscriptionResponseMessage(XmlParser& parser);
289
290 //
291 // Generic CIMResponseMessages
292 //
293
294 static CIMExportIndicationResponseMessage*
295 _deserializeCIMExportIndicationResponseMessage(XmlParser& parser);
296
297 static CIMProcessIndicationResponseMessage*
298 kumpf 1.1 _deserializeCIMProcessIndicationResponseMessage(XmlParser& parser);
299
300 static CIMDisableModuleResponseMessage*
301 _deserializeCIMDisableModuleResponseMessage(XmlParser& parser);
302
303 static CIMEnableModuleResponseMessage*
304 _deserializeCIMEnableModuleResponseMessage(XmlParser& parser);
305
306 static CIMStopAllProvidersResponseMessage*
307 _deserializeCIMStopAllProvidersResponseMessage(XmlParser& parser);
308
|
309 kumpf 1.6 static CIMNotifyConfigChangeResponseMessage*
310 _deserializeCIMNotifyConfigChangeResponseMessage(XmlParser& parser);
311
|
312 carolann.graves 1.11 static CIMSubscriptionInitCompleteResponseMessage*
313 _deserializeCIMSubscriptionInitCompleteResponseMessage
314 (XmlParser& parser);
|
315 kumpf 1.6
|
316 kumpf 1.1 };
317
318 PEGASUS_NAMESPACE_END
319
320 #endif /* Pegasus_CIMMessageDeserializer_h */
|