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

  1 mike  1.1.2.1 //%/////////////////////////////////////////////////////////////////////////////
  2               //
  3 kumpf 1.1.2.5 // Copyright (c) 2000, 2001 BMC Software, Hewlett-Packard Company, IBM,
  4               // The Open Group, Tivoli Systems
  5 mike  1.1.2.1 //
  6               // Permission is hereby granted, free of charge, to any person obtaining a copy
  7               // of this software and associated documentation files (the "Software"), to
  8               // deal in the Software without restriction, including without limitation the
  9               // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 10               // sell copies of the Software, and to permit persons to whom the Software is
 11               // furnished to do so, subject to the following conditions:
 12               //
 13               // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 14               // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 15               // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 16               // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 17               // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 18               // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 19               // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 20               // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 21               //
 22               //==============================================================================
 23               //
 24               // Author: Mike Brasher (mbrasher@bmc.com)
 25               //
 26 kumpf 1.1.2.5 // Modified By: Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com)
 27 mike  1.1.2.1 //
 28               //%/////////////////////////////////////////////////////////////////////////////
 29               
 30 mike  1.1.2.3 #ifndef Pegasus_CIMOperationResponseDecoder_h
 31               #define Pegasus_CIMOperationResponseDecoder_h
 32 mike  1.1.2.1 
 33               #include <fstream>
 34               #include <Pegasus/Common/Config.h>
 35               #include <Pegasus/Common/MessageQueue.h>
 36               #include <Pegasus/Common/HTTPMessage.h>
 37 kumpf 1.1.2.7 #include <Pegasus/Common/CIMMessage.h>
 38 mike  1.1.2.4 #include <Pegasus/Client/Linkage.h>
 39 mike  1.1.2.1 
 40               PEGASUS_NAMESPACE_BEGIN
 41               
 42 mike  1.1.2.2 class XmlParser;
 43               
 44 mike  1.1.2.1 /** This class receives HTTP messages and decodes them into CIM Operation 
 45                   Responses messages which it places on its output queue.
 46               */
 47               class PEGASUS_CLIENT_LINKAGE CIMOperationResponseDecoder : public MessageQueue
 48               {
 49               public:
 50               
 51                   /** Constuctor.
 52               	@param outputQueue queue to receive decoded HTTP messages.
 53                   */
 54                   CIMOperationResponseDecoder(MessageQueue* outputQueue);
 55               
 56                   /** Destructor. */
 57                   ~CIMOperationResponseDecoder();
 58               
 59                   /** This method is called when a message is enqueued on this queue. */
 60                   virtual void handleEnqueue();
 61               
 62                   /** Returns the queue name. */
 63                   virtual const char* getQueueName() const;
 64               
 65 mike  1.1.2.1 private:
 66               
 67 mike  1.1.2.2     void _handleHTTPMessage(
 68               	HTTPMessage* message);
 69               
 70                   void _handleMethodResponse(
 71               	char* content);
 72               
 73 kumpf 1.1.2.6     CIMCreateClassResponseMessage* _decodeCreateClassResponse(
 74 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
 75 mike  1.1.2.1 
 76 kumpf 1.1.2.6     CIMGetClassResponseMessage* _decodeGetClassResponse(
 77 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
 78 mike  1.1.2.1 
 79 kumpf 1.1.2.6     CIMModifyClassResponseMessage* _decodeModifyClassResponse(
 80 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
 81 mike  1.1.2.1 
 82 kumpf 1.1.2.6     CIMEnumerateClassNamesResponseMessage* _decodeEnumerateClassNamesResponse(
 83 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
 84 mike  1.1.2.1 
 85 kumpf 1.1.2.6     CIMEnumerateClassesResponseMessage* _decodeEnumerateClassesResponse(
 86 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
 87 mike  1.1.2.1 
 88 kumpf 1.1.2.6     CIMDeleteClassResponseMessage* _decodeDeleteClassResponse(
 89 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
 90 mike  1.1.2.1 
 91 kumpf 1.1.2.6     CIMCreateInstanceResponseMessage* _decodeCreateInstanceResponse(
 92 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
 93 mike  1.1.2.1 
 94 kumpf 1.1.2.6     CIMGetInstanceResponseMessage* _decodeGetInstanceResponse(
 95 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
 96 mike  1.1.2.1 
 97 kumpf 1.1.2.6     CIMModifyInstanceResponseMessage* _decodeModifyInstanceResponse(
 98 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
 99 mike  1.1.2.1 
100 kumpf 1.1.2.6     CIMEnumerateInstanceNamesResponseMessage* _decodeEnumerateInstanceNamesResponse(
101 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
102 mike  1.1.2.1 
103 kumpf 1.1.2.6     CIMEnumerateInstancesResponseMessage* _decodeEnumerateInstancesResponse(
104 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
105 mike  1.1.2.1 
106 kumpf 1.1.2.6     CIMDeleteInstanceResponseMessage* _decodeDeleteInstanceResponse(
107 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
108 mike  1.1.2.1 
109 kumpf 1.1.2.8     CIMGetPropertyResponseMessage* _decodeGetPropertyResponse(
110               	XmlParser& parser, const String& messageId);
111               
112                   CIMSetPropertyResponseMessage* _decodeSetPropertyResponse(
113               	XmlParser& parser, const String& messageId);
114               
115 kumpf 1.1.2.6     CIMSetQualifierResponseMessage* _decodeSetQualifierResponse(
116 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
117 mike  1.1.2.1 
118 kumpf 1.1.2.6     CIMGetQualifierResponseMessage* _decodeGetQualifierResponse(
119 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
120 mike  1.1.2.1 
121 kumpf 1.1.2.6     CIMEnumerateQualifiersResponseMessage* _decodeEnumerateQualifiersResponse(
122 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
123 mike  1.1.2.1 
124 kumpf 1.1.2.6     CIMDeleteQualifierResponseMessage* _decodeDeleteQualifierResponse(
125 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
126 mike  1.1.2.1 
127 kumpf 1.1.2.6     CIMReferenceNamesResponseMessage* _decodeReferenceNamesResponse(
128 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
129 mike  1.1.2.1 
130 kumpf 1.1.2.6     CIMReferencesResponseMessage* _decodeReferencesResponse(
131 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
132 mike  1.1.2.1 
133 kumpf 1.1.2.6     CIMAssociatorNamesResponseMessage* _decodeAssociatorNamesResponse(
134 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
135 mike  1.1.2.1 
136 kumpf 1.1.2.6     CIMAssociatorsResponseMessage* _decodeAssociatorsResponse(
137 mike  1.1.2.2 	XmlParser& parser, const String& messageId);
138 kumpf 1.1.2.5 
139 kumpf 1.1.2.6     CIMInvokeMethodResponseMessage* _decodeInvokeMethodResponse(
140 kumpf 1.1.2.5 	XmlParser& parser, const String& messageId, const String& methodName);
141 mike  1.1.2.1 
142                   MessageQueue* _outputQueue;
143               };
144               
145               PEGASUS_NAMESPACE_END
146               
147 mike  1.1.2.3 #endif /* Pegasus_CIMOperationResponseDecoder_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2