(file) Return to CIMMessageSerializer.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

  1 karl  1.14 //%2006////////////////////////////////////////////////////////////////////////
  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 karl  1.14 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 12            // EMC Corporation; Symantec Corporation; The Open Group.
 13 kumpf 1.1  //
 14            // Permission is hereby granted, free of charge, to any person obtaining a copy
 15            // of this software and associated documentation files (the "Software"), to
 16            // deal in the Software without restriction, including without limitation the
 17            // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 18            // sell copies of the Software, and to permit persons to whom the Software is
 19            // furnished to do so, subject to the following conditions:
 20 karl  1.7  // 
 21 kumpf 1.1  // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 22            // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 23            // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 24            // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 25            // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 26            // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 27            // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 28            // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 29            //
 30            //==============================================================================
 31            //
 32            //%/////////////////////////////////////////////////////////////////////////////
 33            
 34            #ifndef Pegasus_CIMMessageSerializer_h
 35            #define Pegasus_CIMMessageSerializer_h
 36            
 37            #include <Pegasus/Common/Config.h>
 38            #include <Pegasus/Common/CIMMessage.h>
 39            
 40            PEGASUS_NAMESPACE_BEGIN
 41            
 42 kumpf 1.1  /**
 43                CIMMessageSerializer provides a mechanism to convert a CIMMessage (or one
 44                of its subclasses) to a stream of bytes.  This stream of bytes can be
 45                converted back to a CIMMessage object through use of the related
 46                CIMMessageDeserializer class.
 47            
 48                The format of the serialized message is not defined and is therefore
 49                subject to change.  The only requirement is that the CIMMessageSerializer
 50                and CIMMessageDeserializer classes remain in sync to provide a two-way
 51                mapping.  (A quasi-XML encoding is currently used as an expedient
 52                solution.  However, this encoding is not compliant with the CIM-XML
 53                specification.  A number of shortcuts have been taken to improve
 54                operational efficiency.)
 55            
 56                Note:  Changes or additions to the CIMMessage definitions must be
 57                reflected in these serialization classes.  Likewise, changes to the
 58 kumpf 1.13     structure of member data (such as the AcceptLanguageList class) and
 59 kumpf 1.1      addition of new OperationContext containers will affect message
 60                serialization.
 61             */
 62            class PEGASUS_COMMON_LINKAGE CIMMessageSerializer
 63            {
 64            public:
 65            
 66 mike  1.12     static void serialize(Buffer& out, CIMMessage* cimMessage);
 67 kumpf 1.1  
 68            private:
 69            
 70 mike  1.15     PEGASUS_HIDDEN_LINKAGE
 71 kumpf 1.1      static void _serializeCIMRequestMessage(
 72 mike  1.12         Buffer& out,
 73 kumpf 1.1          CIMRequestMessage* cimMessage);
 74            
 75 mike  1.15     PEGASUS_HIDDEN_LINKAGE
 76 kumpf 1.1      static void _serializeCIMResponseMessage(
 77 mike  1.12         Buffer& out,
 78 kumpf 1.1          CIMResponseMessage* cimMessage);
 79            
 80                //
 81                // Utility Methods
 82                //
 83            
 84 mike  1.15     PEGASUS_HIDDEN_LINKAGE
 85 kumpf 1.1      static void _serializeUserInfo(
 86 mike  1.12         Buffer& out,
 87 kumpf 1.1          const String& authType,
 88                    const String& userName);
 89            
 90 mike  1.15     PEGASUS_HIDDEN_LINKAGE
 91 kumpf 1.1      static void _serializeQueueIdStack(
 92 mike  1.12         Buffer& out,
 93 kumpf 1.1          const QueueIdStack& queueIdStack);
 94            
 95 mike  1.15     PEGASUS_HIDDEN_LINKAGE
 96 kumpf 1.1      static void _serializeOperationContext(
 97 mike  1.12         Buffer& out,
 98 kumpf 1.1          const OperationContext& operationContext);
 99            
100 mike  1.15     PEGASUS_HIDDEN_LINKAGE
101 kumpf 1.13     static void _serializeContentLanguageList(
102 mike  1.12         Buffer& out,
103 kumpf 1.13         const ContentLanguageList& contentLanguages);
104 kumpf 1.1  
105 mike  1.15     PEGASUS_HIDDEN_LINKAGE
106 kumpf 1.13     static void _serializeAcceptLanguageList(
107 mike  1.12         Buffer& out,
108 kumpf 1.13         const AcceptLanguageList& acceptLanguages);
109 kumpf 1.1  
110 mike  1.15     PEGASUS_HIDDEN_LINKAGE
111 kumpf 1.1      static void _serializeCIMException(
112 mike  1.12         Buffer& out,
113 kumpf 1.1          const CIMException& cimException);
114            
115 mike  1.15     PEGASUS_HIDDEN_LINKAGE
116 kumpf 1.1      static void _serializeCIMPropertyList(
117 mike  1.12         Buffer& out,
118 kumpf 1.1          const CIMPropertyList& cimPropertyList);
119            
120 mike  1.15     PEGASUS_HIDDEN_LINKAGE
121 kumpf 1.1      static void _serializeCIMObjectPath(
122 mike  1.12         Buffer& out,
123 kumpf 1.1          const CIMObjectPath& cimObjectPath);
124            
125 mike  1.15     PEGASUS_HIDDEN_LINKAGE
126 kumpf 1.1      static void _serializeCIMInstance(
127 mike  1.12         Buffer& out,
128 kumpf 1.1          const CIMInstance& cimInstance);
129            
130 mike  1.15     PEGASUS_HIDDEN_LINKAGE
131 kumpf 1.1      static void _serializeCIMNamespaceName(
132 mike  1.12         Buffer& out,
133 kumpf 1.1          const CIMNamespaceName& cimNamespaceName);
134            
135 mike  1.15     PEGASUS_HIDDEN_LINKAGE
136 kumpf 1.1      static void _serializeCIMName(
137 mike  1.12         Buffer& out,
138 kumpf 1.1          const CIMName& cimName);
139            
140 mike  1.15     PEGASUS_HIDDEN_LINKAGE
141 jenny.yu 1.9      static void _serializeCIMObject(
142 mike     1.12         Buffer& out,
143 jenny.yu 1.9          const CIMObject& object);
144               
145 kumpf    1.17     PEGASUS_HIDDEN_LINKAGE
146                   static void _serializeCIMParamValue(
147                       Buffer& out,
148                       const CIMParamValue& paramValue);
149               
150 kumpf    1.1      //
151                   //
152                   // CIM Request Messages
153                   //
154                   //
155               
156                   //
157                   // CIMOperationRequestMessages
158                   //
159               
160 mike     1.15     PEGASUS_HIDDEN_LINKAGE
161 kumpf    1.1      static void _serializeCIMGetInstanceRequestMessage(
162 mike     1.12         Buffer& out,
163 kumpf    1.1          CIMGetInstanceRequestMessage* message);
164               
165 mike     1.15     PEGASUS_HIDDEN_LINKAGE
166 kumpf    1.1      static void _serializeCIMDeleteInstanceRequestMessage(
167 mike     1.12         Buffer& out,
168 kumpf    1.1          CIMDeleteInstanceRequestMessage* message);
169               
170 mike     1.15     PEGASUS_HIDDEN_LINKAGE
171 kumpf    1.1      static void _serializeCIMCreateInstanceRequestMessage(
172 mike     1.12         Buffer& out,
173 kumpf    1.1          CIMCreateInstanceRequestMessage* message);
174               
175 mike     1.15     PEGASUS_HIDDEN_LINKAGE
176 kumpf    1.1      static void _serializeCIMModifyInstanceRequestMessage(
177 mike     1.12         Buffer& out,
178 kumpf    1.1          CIMModifyInstanceRequestMessage* message);
179               
180 mike     1.15     PEGASUS_HIDDEN_LINKAGE
181 kumpf    1.1      static void _serializeCIMEnumerateInstancesRequestMessage(
182 mike     1.12         Buffer& out,
183 kumpf    1.1          CIMEnumerateInstancesRequestMessage* message);
184               
185 mike     1.15     PEGASUS_HIDDEN_LINKAGE
186 kumpf    1.1      static void _serializeCIMEnumerateInstanceNamesRequestMessage(
187 mike     1.12         Buffer& out,
188 kumpf    1.1          CIMEnumerateInstanceNamesRequestMessage* message);
189               
190 mike     1.15     PEGASUS_HIDDEN_LINKAGE
191 kumpf    1.1      static void _serializeCIMExecQueryRequestMessage(
192 mike     1.12         Buffer& out,
193 kumpf    1.1          CIMExecQueryRequestMessage* message);
194               
195 mike     1.15     PEGASUS_HIDDEN_LINKAGE
196 kumpf    1.1      static void _serializeCIMAssociatorsRequestMessage(
197 mike     1.12         Buffer& out,
198 kumpf    1.1          CIMAssociatorsRequestMessage* message);
199               
200 mike     1.15     PEGASUS_HIDDEN_LINKAGE
201 kumpf    1.1      static void _serializeCIMAssociatorNamesRequestMessage(
202 mike     1.12         Buffer& out,
203 kumpf    1.1          CIMAssociatorNamesRequestMessage* message);
204               
205 mike     1.15     PEGASUS_HIDDEN_LINKAGE
206 kumpf    1.1      static void _serializeCIMReferencesRequestMessage(
207 mike     1.12         Buffer& out,
208 kumpf    1.1          CIMReferencesRequestMessage* message);
209               
210 mike     1.15     PEGASUS_HIDDEN_LINKAGE
211 kumpf    1.1      static void _serializeCIMReferenceNamesRequestMessage(
212 mike     1.12         Buffer& out,
213 kumpf    1.1          CIMReferenceNamesRequestMessage* message);
214               
215 mike     1.15     PEGASUS_HIDDEN_LINKAGE
216 kumpf    1.1      static void _serializeCIMGetPropertyRequestMessage(
217 mike     1.12         Buffer& out,
218 kumpf    1.1          CIMGetPropertyRequestMessage* message);
219               
220 mike     1.15     PEGASUS_HIDDEN_LINKAGE
221 kumpf    1.1      static void _serializeCIMSetPropertyRequestMessage(
222 mike     1.12         Buffer& out,
223 kumpf    1.1          CIMSetPropertyRequestMessage* message);
224               
225 mike     1.15     PEGASUS_HIDDEN_LINKAGE
226 kumpf    1.1      static void _serializeCIMInvokeMethodRequestMessage(
227 mike     1.12         Buffer& out,
228 kumpf    1.1          CIMInvokeMethodRequestMessage* message);
229               
230                   //
231                   // CIMIndicationRequestMessages
232                   //
233               
234 mike     1.15     PEGASUS_HIDDEN_LINKAGE
235 kumpf    1.1      static void _serializeCIMCreateSubscriptionRequestMessage(
236 mike     1.12         Buffer& out,
237 kumpf    1.1          CIMCreateSubscriptionRequestMessage* message);
238               
239 mike     1.15     PEGASUS_HIDDEN_LINKAGE
240 kumpf    1.1      static void _serializeCIMModifySubscriptionRequestMessage(
241 mike     1.12         Buffer& out,
242 kumpf    1.1          CIMModifySubscriptionRequestMessage* message);
243               
244 mike     1.15     PEGASUS_HIDDEN_LINKAGE
245 kumpf    1.1      static void _serializeCIMDeleteSubscriptionRequestMessage(
246 mike     1.12         Buffer& out,
247 kumpf    1.1          CIMDeleteSubscriptionRequestMessage* message);
248               
249                   //
250                   // Generic CIMRequestMessages
251                   //
252               
253 mike     1.15     PEGASUS_HIDDEN_LINKAGE
254 kumpf    1.1      static void _serializeCIMExportIndicationRequestMessage(
255 mike     1.12         Buffer& out,
256 kumpf    1.1          CIMExportIndicationRequestMessage* message);
257               
258 mike     1.15     PEGASUS_HIDDEN_LINKAGE
259 kumpf    1.1      static void _serializeCIMProcessIndicationRequestMessage(
260 mike     1.12         Buffer& out,
261 kumpf    1.1          CIMProcessIndicationRequestMessage* message);
262               
263 mike     1.15     PEGASUS_HIDDEN_LINKAGE
264 kumpf    1.1      static void _serializeCIMDisableModuleRequestMessage(
265 mike     1.12         Buffer& out,
266 kumpf    1.1          CIMDisableModuleRequestMessage* message);
267               
268 mike     1.15     PEGASUS_HIDDEN_LINKAGE
269 kumpf    1.1      static void _serializeCIMEnableModuleRequestMessage(
270 mike     1.12         Buffer& out,
271 kumpf    1.1          CIMEnableModuleRequestMessage* message);
272               
273 mike     1.15     PEGASUS_HIDDEN_LINKAGE
274 kumpf    1.1      static void _serializeCIMStopAllProvidersRequestMessage(
275 mike     1.12         Buffer& out,
276 kumpf    1.1          CIMStopAllProvidersRequestMessage* message);
277               
278 mike     1.15     PEGASUS_HIDDEN_LINKAGE
279 kumpf    1.2      static void _serializeCIMInitializeProviderRequestMessage(
280 mike     1.12         Buffer& out,
281 kumpf    1.2          CIMInitializeProviderRequestMessage* message);
282               
283 mike     1.15     PEGASUS_HIDDEN_LINKAGE
284 kumpf    1.5      static void _serializeCIMInitializeProviderAgentRequestMessage(
285 mike     1.12         Buffer& out,
286 kumpf    1.5          CIMInitializeProviderAgentRequestMessage* message);
287               
288 mike     1.15     PEGASUS_HIDDEN_LINKAGE
289 kumpf    1.6      static void _serializeCIMNotifyConfigChangeRequestMessage(
290 mike     1.12         Buffer& out,
291 kumpf    1.6          CIMNotifyConfigChangeRequestMessage* message);
292               
293 mike     1.15     PEGASUS_HIDDEN_LINKAGE
294 carolann.graves 1.11     static void _serializeCIMSubscriptionInitCompleteRequestMessage(
295 mike            1.12         Buffer& out,
296 carolann.graves 1.11         CIMSubscriptionInitCompleteRequestMessage* message);
297                      
298 kumpf           1.2  
299 kumpf           1.1      //
300                          //
301                          // CIM Response Messages
302                          //
303                          //
304                      
305                          //
306                          // CIMOperationResponseMessages
307                          //
308                      
309 mike            1.15     PEGASUS_HIDDEN_LINKAGE
310 kumpf           1.1      static void _serializeCIMGetInstanceResponseMessage(
311 mike            1.12         Buffer& out,
312 kumpf           1.1          CIMGetInstanceResponseMessage* message);
313                      
314 mike            1.15     PEGASUS_HIDDEN_LINKAGE
315 kumpf           1.1      static void _serializeCIMDeleteInstanceResponseMessage(
316 mike            1.12         Buffer& out,
317 kumpf           1.1          CIMDeleteInstanceResponseMessage* message);
318                      
319 mike            1.15     PEGASUS_HIDDEN_LINKAGE
320 kumpf           1.1      static void _serializeCIMCreateInstanceResponseMessage(
321 mike            1.12         Buffer& out,
322 kumpf           1.1          CIMCreateInstanceResponseMessage* message);
323                      
324 mike            1.15     PEGASUS_HIDDEN_LINKAGE
325 kumpf           1.1      static void _serializeCIMModifyInstanceResponseMessage(
326 mike            1.12         Buffer& out,
327 kumpf           1.1          CIMModifyInstanceResponseMessage* message);
328                      
329 mike            1.15     PEGASUS_HIDDEN_LINKAGE
330 kumpf           1.1      static void _serializeCIMEnumerateInstancesResponseMessage(
331 mike            1.12         Buffer& out,
332 kumpf           1.1          CIMEnumerateInstancesResponseMessage* message);
333                      
334 mike            1.15     PEGASUS_HIDDEN_LINKAGE
335 kumpf           1.1      static void _serializeCIMEnumerateInstanceNamesResponseMessage(
336 mike            1.12         Buffer& out,
337 kumpf           1.1          CIMEnumerateInstanceNamesResponseMessage* message);
338                      
339 mike            1.15     PEGASUS_HIDDEN_LINKAGE
340 kumpf           1.1      static void _serializeCIMExecQueryResponseMessage(
341 mike            1.12         Buffer& out,
342 kumpf           1.1          CIMExecQueryResponseMessage* message);
343                      
344 mike            1.15     PEGASUS_HIDDEN_LINKAGE
345 kumpf           1.1      static void _serializeCIMAssociatorsResponseMessage(
346 mike            1.12         Buffer& out,
347 kumpf           1.1          CIMAssociatorsResponseMessage* message);
348                      
349 mike            1.15     PEGASUS_HIDDEN_LINKAGE
350 kumpf           1.1      static void _serializeCIMAssociatorNamesResponseMessage(
351 mike            1.12         Buffer& out,
352 kumpf           1.1          CIMAssociatorNamesResponseMessage* message);
353                      
354 mike            1.15     PEGASUS_HIDDEN_LINKAGE
355 kumpf           1.1      static void _serializeCIMReferencesResponseMessage(
356 mike            1.12         Buffer& out,
357 kumpf           1.1          CIMReferencesResponseMessage* message);
358                      
359 mike            1.15     PEGASUS_HIDDEN_LINKAGE
360 kumpf           1.1      static void _serializeCIMReferenceNamesResponseMessage(
361 mike            1.12         Buffer& out,
362 kumpf           1.1          CIMReferenceNamesResponseMessage* message);
363                      
364 mike            1.15     PEGASUS_HIDDEN_LINKAGE
365 kumpf           1.1      static void _serializeCIMGetPropertyResponseMessage(
366 mike            1.12         Buffer& out,
367 kumpf           1.1          CIMGetPropertyResponseMessage* message);
368                      
369 mike            1.15     PEGASUS_HIDDEN_LINKAGE
370 kumpf           1.1      static void _serializeCIMSetPropertyResponseMessage(
371 mike            1.12         Buffer& out,
372 kumpf           1.1          CIMSetPropertyResponseMessage* message);
373                      
374 mike            1.15     PEGASUS_HIDDEN_LINKAGE
375 kumpf           1.1      static void _serializeCIMInvokeMethodResponseMessage(
376 mike            1.12         Buffer& out,
377 kumpf           1.1          CIMInvokeMethodResponseMessage* message);
378                      
379                          //
380                          // CIMIndicationResponseMessages
381                          //
382                      
383 mike            1.15     PEGASUS_HIDDEN_LINKAGE
384 kumpf           1.1      static void _serializeCIMCreateSubscriptionResponseMessage(
385 mike            1.12         Buffer& out,
386 kumpf           1.1          CIMCreateSubscriptionResponseMessage* message);
387                      
388 mike            1.15     PEGASUS_HIDDEN_LINKAGE
389 kumpf           1.1      static void _serializeCIMModifySubscriptionResponseMessage(
390 mike            1.12         Buffer& out,
391 kumpf           1.1          CIMModifySubscriptionResponseMessage* message);
392                      
393 mike            1.15     PEGASUS_HIDDEN_LINKAGE
394 kumpf           1.1      static void _serializeCIMDeleteSubscriptionResponseMessage(
395 mike            1.12         Buffer& out,
396 kumpf           1.1          CIMDeleteSubscriptionResponseMessage* message);
397                      
398                          //
399                          // Generic CIMResponseMessages
400                          //
401                      
402 mike            1.15     PEGASUS_HIDDEN_LINKAGE
403 kumpf           1.1      static void _serializeCIMExportIndicationResponseMessage(
404 mike            1.12         Buffer& out,
405 kumpf           1.1          CIMExportIndicationResponseMessage* message);
406                      
407 mike            1.15     PEGASUS_HIDDEN_LINKAGE
408 kumpf           1.1      static void _serializeCIMProcessIndicationResponseMessage(
409 mike            1.12         Buffer& out,
410 kumpf           1.1          CIMProcessIndicationResponseMessage* message);
411                      
412 mike            1.15     PEGASUS_HIDDEN_LINKAGE
413 kumpf           1.1      static void _serializeCIMDisableModuleResponseMessage(
414 mike            1.12         Buffer& out,
415 kumpf           1.1          CIMDisableModuleResponseMessage* message);
416                      
417 mike            1.15     PEGASUS_HIDDEN_LINKAGE
418 kumpf           1.1      static void _serializeCIMEnableModuleResponseMessage(
419 mike            1.12         Buffer& out,
420 kumpf           1.1          CIMEnableModuleResponseMessage* message);
421                      
422 mike            1.15     PEGASUS_HIDDEN_LINKAGE
423 kumpf           1.1      static void _serializeCIMStopAllProvidersResponseMessage(
424 mike            1.12         Buffer& out,
425 kumpf           1.1          CIMStopAllProvidersResponseMessage* message);
426                      
427 mike            1.15     PEGASUS_HIDDEN_LINKAGE
428 kumpf           1.2      static void _serializeCIMInitializeProviderResponseMessage(
429 mike            1.12         Buffer& out,
430 kumpf           1.2          CIMInitializeProviderResponseMessage* message);
431                      
432 mike            1.15     PEGASUS_HIDDEN_LINKAGE
433 kumpf           1.5      static void _serializeCIMInitializeProviderAgentResponseMessage(
434 mike            1.12         Buffer& out,
435 kumpf           1.5          CIMInitializeProviderAgentResponseMessage* message);
436 kumpf           1.6  
437 mike            1.15     PEGASUS_HIDDEN_LINKAGE
438 kumpf           1.6      static void _serializeCIMNotifyConfigChangeResponseMessage(
439 mike            1.12         Buffer& out,
440 kumpf           1.6          CIMNotifyConfigChangeResponseMessage* message);
441 carolann.graves 1.11 
442 mike            1.15     PEGASUS_HIDDEN_LINKAGE
443 carolann.graves 1.11     static void _serializeCIMSubscriptionInitCompleteResponseMessage(
444 mike            1.12         Buffer& out,
445 carolann.graves 1.11         CIMSubscriptionInitCompleteResponseMessage* message);
446 kumpf           1.1  };
447                      
448                      PEGASUS_NAMESPACE_END
449                      
450                      #endif /* Pegasus_CIMMessageSerializer_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2