56 kumpf 1.38 CIMOperationRequestDecoder(
57 MessageQueueService* outputQueue,
58 Uint32 returnQueueId);
59
60 ~CIMOperationRequestDecoder();
61
62 void sendResponse(
63 Uint32 queueId,
64 Buffer& message,
65 Boolean closeConnect = false);
66
67 void sendIMethodError(
68 Uint32 queueId,
69 HttpMethod httpMethod,
70 const String& messageId,
71 const String& methodName,
72 const CIMException& cimException,
73 Boolean closeConnect = false);
74
75 void sendMethodError(
76 Uint32 queueId,
77 kumpf 1.38 HttpMethod httpMethod,
78 const String& messageId,
79 const String& methodName,
80 const CIMException& cimException,
81 Boolean closeConnect = false);
82
83 void sendHttpError(
84 Uint32 queueId,
85 const String& status,
86 const String& cimError = String::EMPTY,
87 const String& messageBody = String::EMPTY,
88 Boolean closeConnect = false);
89
90 virtual void handleEnqueue(Message *);
91
92 virtual void handleEnqueue();
93
94 void handleHTTPMessage(HTTPMessage* httpMessage);
95
96 void handleMethodCall(
97 Uint32 queueId,
98 kumpf 1.38 HttpMethod httpMethod,
99 char* content,
100 Uint32 contentLength,
101 const String& cimProtocolVersionInHeader,
102 const String& cimMethodInHeader,
103 const String& cimObjectInHeader,
104 const String& authType,
105 const String& userName,
106 const String& ipAddress,
107 const AcceptLanguageList& httpAcceptLanguages,
108 const ContentLanguageList& httpContentLanguages,
109 Boolean closeConnect);
110
111 CIMCreateClassRequestMessage* decodeCreateClassRequest(
112 Uint32 queueId,
113 XmlParser& parser,
114 const String& messageId,
115 const CIMNamespaceName& nameSpace);
116
117 CIMGetClassRequestMessage* decodeGetClassRequest(
118 Uint32 queueId,
119 kumpf 1.38 XmlParser& parser,
120 const String& messageId,
121 const CIMNamespaceName& nameSpace);
122
123 CIMModifyClassRequestMessage* decodeModifyClassRequest(
124 Uint32 queueId,
125 XmlParser& parser,
126 const String& messageId,
127 const CIMNamespaceName& nameSpace);
128
129 CIMEnumerateClassNamesRequestMessage* decodeEnumerateClassNamesRequest(
130 Uint32 queueId,
131 XmlParser& parser,
132 const String& messageId,
133 const CIMNamespaceName& nameSpace);
134
135 CIMEnumerateClassesRequestMessage* decodeEnumerateClassesRequest(
136 Uint32 queueId,
137 XmlParser& parser,
138 const String& messageId,
139 const CIMNamespaceName& nameSpace);
140 kumpf 1.38
141 CIMDeleteClassRequestMessage* decodeDeleteClassRequest(
142 Uint32 queueId,
143 XmlParser& parser,
144 const String& messageId,
145 const CIMNamespaceName& nameSpace);
146
147 CIMCreateInstanceRequestMessage* decodeCreateInstanceRequest(
148 Uint32 queueId,
149 XmlParser& parser,
150 const String& messageId,
151 const CIMNamespaceName& nameSpace);
152
153 CIMGetInstanceRequestMessage* decodeGetInstanceRequest(
154 Uint32 queueId,
155 XmlParser& parser,
156 const String& messageId,
157 const CIMNamespaceName& nameSpace);
158
159 CIMModifyInstanceRequestMessage* decodeModifyInstanceRequest(
160 Uint32 queueId,
161 kumpf 1.38 XmlParser& parser,
162 const String& messageId,
163 const CIMNamespaceName& nameSpace);
164
165 CIMEnumerateInstanceNamesRequestMessage*
166 decodeEnumerateInstanceNamesRequest(
167 Uint32 queueId,
168 XmlParser& parser,
169 const String& messageId,
170 const CIMNamespaceName& nameSpace);
171
172 CIMEnumerateInstancesRequestMessage* decodeEnumerateInstancesRequest(
173 Uint32 queueId,
174 XmlParser& parser,
175 const String& messageId,
176 const CIMNamespaceName& nameSpace);
177
178 CIMDeleteInstanceRequestMessage* decodeDeleteInstanceRequest(
179 Uint32 queueId,
180 XmlParser& parser,
181 const String& messageId,
182 kumpf 1.38 const CIMNamespaceName& nameSpace);
183
184 CIMSetQualifierRequestMessage* decodeSetQualifierRequest(
185 Uint32 queueId,
186 XmlParser& parser,
187 const String& messageId,
188 const CIMNamespaceName& nameSpace);
189
190 CIMGetQualifierRequestMessage* decodeGetQualifierRequest(
191 Uint32 queueId,
192 XmlParser& parser,
193 const String& messageId,
194 const CIMNamespaceName& nameSpace);
195
196 CIMEnumerateQualifiersRequestMessage* decodeEnumerateQualifiersRequest(
197 Uint32 queueId,
198 XmlParser& parser,
199 const String& messageId,
200 const CIMNamespaceName& nameSpace);
201
202 CIMDeleteQualifierRequestMessage* decodeDeleteQualifierRequest(
203 kumpf 1.38 Uint32 queueId,
204 XmlParser& parser,
205 const String& messageId,
206 const CIMNamespaceName& nameSpace);
207
208 CIMReferenceNamesRequestMessage* decodeReferenceNamesRequest(
209 Uint32 queueId,
210 XmlParser& parser,
211 const String& messageId,
212 const CIMNamespaceName& nameSpace);
213
214 CIMReferencesRequestMessage* decodeReferencesRequest(
215 Uint32 queueId,
216 XmlParser& parser,
217 const String& messageId,
218 const CIMNamespaceName& nameSpace);
219
220 CIMAssociatorNamesRequestMessage* decodeAssociatorNamesRequest(
221 Uint32 queueId,
222 XmlParser& parser,
223 const String& messageId,
224 kumpf 1.38 const CIMNamespaceName& nameSpace);
225
226 CIMAssociatorsRequestMessage* decodeAssociatorsRequest(
227 Uint32 queueId,
228 XmlParser& parser,
229 const String& messageId,
230 const CIMNamespaceName& nameSpace);
231
232 CIMGetPropertyRequestMessage* decodeGetPropertyRequest(
233 Uint32 queueId,
234 XmlParser& parser,
235 const String& messageId,
236 const CIMNamespaceName& nameSpace);
237
238 CIMSetPropertyRequestMessage* decodeSetPropertyRequest(
239 Uint32 queueId,
240 XmlParser& parser,
241 const String& messageId,
242 const CIMNamespaceName& nameSpace);
243
244 CIMExecQueryRequestMessage* decodeExecQueryRequest(
245 kumpf 1.38 Uint32 queueId,
246 XmlParser& parser,
247 const String& messageId,
248 const CIMNamespaceName& nameSpace);
249
250 CIMInvokeMethodRequestMessage* decodeInvokeMethodRequest(
251 Uint32 queueId,
252 XmlParser& parser,
253 const String& messageId,
254 const CIMObjectPath& reference,
255 const String& cimMethodName);
256
257 /** Sets the flag to indicate whether or not the CIMServer is
258 shutting down.
259 */
260 void setServerTerminating(Boolean flag);
261
262 private:
|