(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            // Author: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
 33            //
 34 david.dillard 1.8  // Modified By: David Dillard, VERITAS Software Corp.
 35                    //                  (david.dillard@veritas.com)
 36 carolann.graves 1.11 //              Carol Ann Krug Graves, Hewlett-Packard Company
 37                      //                  (carolann_graves@hp.com)
 38 kumpf           1.1  //
 39                      //%/////////////////////////////////////////////////////////////////////////////
 40                      
 41                      #ifndef Pegasus_CIMMessageSerializer_h
 42                      #define Pegasus_CIMMessageSerializer_h
 43                      
 44                      #include <Pegasus/Common/Config.h>
 45                      #include <Pegasus/Common/CIMMessage.h>
 46                      
 47                      PEGASUS_NAMESPACE_BEGIN
 48                      
 49                      /**
 50                          CIMMessageSerializer provides a mechanism to convert a CIMMessage (or one
 51                          of its subclasses) to a stream of bytes.  This stream of bytes can be
 52                          converted back to a CIMMessage object through use of the related
 53                          CIMMessageDeserializer class.
 54                      
 55                          The format of the serialized message is not defined and is therefore
 56                          subject to change.  The only requirement is that the CIMMessageSerializer
 57                          and CIMMessageDeserializer classes remain in sync to provide a two-way
 58                          mapping.  (A quasi-XML encoding is currently used as an expedient
 59 kumpf           1.1      solution.  However, this encoding is not compliant with the CIM-XML
 60                          specification.  A number of shortcuts have been taken to improve
 61                          operational efficiency.)
 62                      
 63                          Note:  Changes or additions to the CIMMessage definitions must be
 64                          reflected in these serialization classes.  Likewise, changes to the
 65 kumpf           1.13     structure of member data (such as the AcceptLanguageList class) and
 66 kumpf           1.1      addition of new OperationContext containers will affect message
 67                          serialization.
 68                       */
 69                      class PEGASUS_COMMON_LINKAGE CIMMessageSerializer
 70                      {
 71                      public:
 72                      
 73 mike            1.12     static void serialize(Buffer& out, CIMMessage* cimMessage);
 74 kumpf           1.1  
 75                      private:
 76                      
 77                          static void _serializeCIMRequestMessage(
 78 mike            1.12         Buffer& out,
 79 kumpf           1.1          CIMRequestMessage* cimMessage);
 80                      
 81                          static void _serializeCIMResponseMessage(
 82 mike            1.12         Buffer& out,
 83 kumpf           1.1          CIMResponseMessage* cimMessage);
 84                      
 85                          //
 86                          // Utility Methods
 87                          //
 88                      
 89                          static void _serializeUserInfo(
 90 mike            1.12         Buffer& out,
 91 kumpf           1.1          const String& authType,
 92                              const String& userName);
 93                      
 94                          static void _serializeQueueIdStack(
 95 mike            1.12         Buffer& out,
 96 kumpf           1.1          const QueueIdStack& queueIdStack);
 97                      
 98                          static void _serializeOperationContext(
 99 mike            1.12         Buffer& out,
100 kumpf           1.1          const OperationContext& operationContext);
101                      
102 kumpf           1.13     static void _serializeContentLanguageList(
103 mike            1.12         Buffer& out,
104 kumpf           1.13         const ContentLanguageList& contentLanguages);
105 kumpf           1.1  
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                          static void _serializeCIMException(
111 mike            1.12         Buffer& out,
112 kumpf           1.1          const CIMException& cimException);
113                      
114                          static void _serializeCIMPropertyList(
115 mike            1.12         Buffer& out,
116 kumpf           1.1          const CIMPropertyList& cimPropertyList);
117                      
118                          static void _serializeCIMObjectPath(
119 mike            1.12         Buffer& out,
120 kumpf           1.1          const CIMObjectPath& cimObjectPath);
121                      
122                          static void _serializeCIMInstance(
123 mike            1.12         Buffer& out,
124 kumpf           1.1          const CIMInstance& cimInstance);
125                      
126                          static void _serializeCIMNamespaceName(
127 mike            1.12         Buffer& out,
128 kumpf           1.1          const CIMNamespaceName& cimNamespaceName);
129                      
130                          static void _serializeCIMName(
131 mike            1.12         Buffer& out,
132 kumpf           1.1          const CIMName& cimName);
133                      
134 jenny.yu        1.9      static void _serializeCIMObject(
135 mike            1.12         Buffer& out,
136 jenny.yu        1.9          const CIMObject& object);
137                      
138 kumpf           1.1      //
139                          //
140                          // CIM Request Messages
141                          //
142                          //
143                      
144                          //
145                          // CIMOperationRequestMessages
146                          //
147                      
148                          static void _serializeCIMGetInstanceRequestMessage(
149 mike            1.12         Buffer& out,
150 kumpf           1.1          CIMGetInstanceRequestMessage* message);
151                      
152                          static void _serializeCIMDeleteInstanceRequestMessage(
153 mike            1.12         Buffer& out,
154 kumpf           1.1          CIMDeleteInstanceRequestMessage* message);
155                      
156                          static void _serializeCIMCreateInstanceRequestMessage(
157 mike            1.12         Buffer& out,
158 kumpf           1.1          CIMCreateInstanceRequestMessage* message);
159                      
160                          static void _serializeCIMModifyInstanceRequestMessage(
161 mike            1.12         Buffer& out,
162 kumpf           1.1          CIMModifyInstanceRequestMessage* message);
163                      
164                          static void _serializeCIMEnumerateInstancesRequestMessage(
165 mike            1.12         Buffer& out,
166 kumpf           1.1          CIMEnumerateInstancesRequestMessage* message);
167                      
168                          static void _serializeCIMEnumerateInstanceNamesRequestMessage(
169 mike            1.12         Buffer& out,
170 kumpf           1.1          CIMEnumerateInstanceNamesRequestMessage* message);
171                      
172                          static void _serializeCIMExecQueryRequestMessage(
173 mike            1.12         Buffer& out,
174 kumpf           1.1          CIMExecQueryRequestMessage* message);
175                      
176                          static void _serializeCIMAssociatorsRequestMessage(
177 mike            1.12         Buffer& out,
178 kumpf           1.1          CIMAssociatorsRequestMessage* message);
179                      
180                          static void _serializeCIMAssociatorNamesRequestMessage(
181 mike            1.12         Buffer& out,
182 kumpf           1.1          CIMAssociatorNamesRequestMessage* message);
183                      
184                          static void _serializeCIMReferencesRequestMessage(
185 mike            1.12         Buffer& out,
186 kumpf           1.1          CIMReferencesRequestMessage* message);
187                      
188                          static void _serializeCIMReferenceNamesRequestMessage(
189 mike            1.12         Buffer& out,
190 kumpf           1.1          CIMReferenceNamesRequestMessage* message);
191                      
192                          static void _serializeCIMGetPropertyRequestMessage(
193 mike            1.12         Buffer& out,
194 kumpf           1.1          CIMGetPropertyRequestMessage* message);
195                      
196                          static void _serializeCIMSetPropertyRequestMessage(
197 mike            1.12         Buffer& out,
198 kumpf           1.1          CIMSetPropertyRequestMessage* message);
199                      
200                          static void _serializeCIMInvokeMethodRequestMessage(
201 mike            1.12         Buffer& out,
202 kumpf           1.1          CIMInvokeMethodRequestMessage* message);
203                      
204                          //
205                          // CIMIndicationRequestMessages
206                          //
207                      
208                          static void _serializeCIMCreateSubscriptionRequestMessage(
209 mike            1.12         Buffer& out,
210 kumpf           1.1          CIMCreateSubscriptionRequestMessage* message);
211                      
212                          static void _serializeCIMModifySubscriptionRequestMessage(
213 mike            1.12         Buffer& out,
214 kumpf           1.1          CIMModifySubscriptionRequestMessage* message);
215                      
216                          static void _serializeCIMDeleteSubscriptionRequestMessage(
217 mike            1.12         Buffer& out,
218 kumpf           1.1          CIMDeleteSubscriptionRequestMessage* message);
219                      
220                          //
221                          // Generic CIMRequestMessages
222                          //
223                      
224                          static void _serializeCIMExportIndicationRequestMessage(
225 mike            1.12         Buffer& out,
226 kumpf           1.1          CIMExportIndicationRequestMessage* message);
227                      
228                          static void _serializeCIMProcessIndicationRequestMessage(
229 mike            1.12         Buffer& out,
230 kumpf           1.1          CIMProcessIndicationRequestMessage* message);
231                      
232                          static void _serializeCIMDisableModuleRequestMessage(
233 mike            1.12         Buffer& out,
234 kumpf           1.1          CIMDisableModuleRequestMessage* message);
235                      
236                          static void _serializeCIMEnableModuleRequestMessage(
237 mike            1.12         Buffer& out,
238 kumpf           1.1          CIMEnableModuleRequestMessage* message);
239                      
240                          static void _serializeCIMStopAllProvidersRequestMessage(
241 mike            1.12         Buffer& out,
242 kumpf           1.1          CIMStopAllProvidersRequestMessage* message);
243                      
244 kumpf           1.2      static void _serializeCIMInitializeProviderRequestMessage(
245 mike            1.12         Buffer& out,
246 kumpf           1.2          CIMInitializeProviderRequestMessage* message);
247                      
248 kumpf           1.5      static void _serializeCIMInitializeProviderAgentRequestMessage(
249 mike            1.12         Buffer& out,
250 kumpf           1.5          CIMInitializeProviderAgentRequestMessage* message);
251                      
252 kumpf           1.6      static void _serializeCIMNotifyConfigChangeRequestMessage(
253 mike            1.12         Buffer& out,
254 kumpf           1.6          CIMNotifyConfigChangeRequestMessage* message);
255                      
256 carolann.graves 1.11     static void _serializeCIMSubscriptionInitCompleteRequestMessage(
257 mike            1.12         Buffer& out,
258 carolann.graves 1.11         CIMSubscriptionInitCompleteRequestMessage* message);
259                      
260 kumpf           1.2  
261 kumpf           1.1      //
262                          //
263                          // CIM Response Messages
264                          //
265                          //
266                      
267                          //
268                          // CIMOperationResponseMessages
269                          //
270                      
271                          static void _serializeCIMGetInstanceResponseMessage(
272 mike            1.12         Buffer& out,
273 kumpf           1.1          CIMGetInstanceResponseMessage* message);
274                      
275                          static void _serializeCIMDeleteInstanceResponseMessage(
276 mike            1.12         Buffer& out,
277 kumpf           1.1          CIMDeleteInstanceResponseMessage* message);
278                      
279                          static void _serializeCIMCreateInstanceResponseMessage(
280 mike            1.12         Buffer& out,
281 kumpf           1.1          CIMCreateInstanceResponseMessage* message);
282                      
283                          static void _serializeCIMModifyInstanceResponseMessage(
284 mike            1.12         Buffer& out,
285 kumpf           1.1          CIMModifyInstanceResponseMessage* message);
286                      
287                          static void _serializeCIMEnumerateInstancesResponseMessage(
288 mike            1.12         Buffer& out,
289 kumpf           1.1          CIMEnumerateInstancesResponseMessage* message);
290                      
291                          static void _serializeCIMEnumerateInstanceNamesResponseMessage(
292 mike            1.12         Buffer& out,
293 kumpf           1.1          CIMEnumerateInstanceNamesResponseMessage* message);
294                      
295                          static void _serializeCIMExecQueryResponseMessage(
296 mike            1.12         Buffer& out,
297 kumpf           1.1          CIMExecQueryResponseMessage* message);
298                      
299                          static void _serializeCIMAssociatorsResponseMessage(
300 mike            1.12         Buffer& out,
301 kumpf           1.1          CIMAssociatorsResponseMessage* message);
302                      
303                          static void _serializeCIMAssociatorNamesResponseMessage(
304 mike            1.12         Buffer& out,
305 kumpf           1.1          CIMAssociatorNamesResponseMessage* message);
306                      
307                          static void _serializeCIMReferencesResponseMessage(
308 mike            1.12         Buffer& out,
309 kumpf           1.1          CIMReferencesResponseMessage* message);
310                      
311                          static void _serializeCIMReferenceNamesResponseMessage(
312 mike            1.12         Buffer& out,
313 kumpf           1.1          CIMReferenceNamesResponseMessage* message);
314                      
315                          static void _serializeCIMGetPropertyResponseMessage(
316 mike            1.12         Buffer& out,
317 kumpf           1.1          CIMGetPropertyResponseMessage* message);
318                      
319                          static void _serializeCIMSetPropertyResponseMessage(
320 mike            1.12         Buffer& out,
321 kumpf           1.1          CIMSetPropertyResponseMessage* message);
322                      
323                          static void _serializeCIMInvokeMethodResponseMessage(
324 mike            1.12         Buffer& out,
325 kumpf           1.1          CIMInvokeMethodResponseMessage* message);
326                      
327                          //
328                          // CIMIndicationResponseMessages
329                          //
330                      
331                          static void _serializeCIMCreateSubscriptionResponseMessage(
332 mike            1.12         Buffer& out,
333 kumpf           1.1          CIMCreateSubscriptionResponseMessage* message);
334                      
335                          static void _serializeCIMModifySubscriptionResponseMessage(
336 mike            1.12         Buffer& out,
337 kumpf           1.1          CIMModifySubscriptionResponseMessage* message);
338                      
339                          static void _serializeCIMDeleteSubscriptionResponseMessage(
340 mike            1.12         Buffer& out,
341 kumpf           1.1          CIMDeleteSubscriptionResponseMessage* message);
342                      
343                          //
344                          // Generic CIMResponseMessages
345                          //
346                      
347                          static void _serializeCIMExportIndicationResponseMessage(
348 mike            1.12         Buffer& out,
349 kumpf           1.1          CIMExportIndicationResponseMessage* message);
350                      
351                          static void _serializeCIMProcessIndicationResponseMessage(
352 mike            1.12         Buffer& out,
353 kumpf           1.1          CIMProcessIndicationResponseMessage* message);
354                      
355                          static void _serializeCIMDisableModuleResponseMessage(
356 mike            1.12         Buffer& out,
357 kumpf           1.1          CIMDisableModuleResponseMessage* message);
358                      
359                          static void _serializeCIMEnableModuleResponseMessage(
360 mike            1.12         Buffer& out,
361 kumpf           1.1          CIMEnableModuleResponseMessage* message);
362                      
363                          static void _serializeCIMStopAllProvidersResponseMessage(
364 mike            1.12         Buffer& out,
365 kumpf           1.1          CIMStopAllProvidersResponseMessage* message);
366                      
367 kumpf           1.2      static void _serializeCIMInitializeProviderResponseMessage(
368 mike            1.12         Buffer& out,
369 kumpf           1.2          CIMInitializeProviderResponseMessage* message);
370                      
371 kumpf           1.5      static void _serializeCIMInitializeProviderAgentResponseMessage(
372 mike            1.12         Buffer& out,
373 kumpf           1.5          CIMInitializeProviderAgentResponseMessage* message);
374 kumpf           1.6  
375                          static void _serializeCIMNotifyConfigChangeResponseMessage(
376 mike            1.12         Buffer& out,
377 kumpf           1.6          CIMNotifyConfigChangeResponseMessage* message);
378 carolann.graves 1.11 
379                          static void _serializeCIMSubscriptionInitCompleteResponseMessage(
380 mike            1.12         Buffer& out,
381 carolann.graves 1.11         CIMSubscriptionInitCompleteResponseMessage* message);
382 kumpf           1.1  };
383                      
384                      PEGASUS_NAMESPACE_END
385                      
386                      #endif /* Pegasus_CIMMessageSerializer_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2