1 karl 1.16 //%2006////////////////////////////////////////////////////////////////////////
|
2 mday 1.2 //
|
3 karl 1.9 // 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 karl 1.5 // IBM Corp.; EMC Corporation, The Open Group.
|
7 karl 1.9 // 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.16 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
12 // EMC Corporation; Symantec Corporation; The Open Group.
|
13 mday 1.2 //
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 //
21 // 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 mday 1.2 #include "BinaryMessageHandler.h"
35 #include <Pegasus/Common/Thread.h>
36
37 PEGASUS_NAMESPACE_BEGIN
38
|
39 kumpf 1.24 BinaryMessageHandler::BinaryMessageHandler(MessageQueueService* output_q)
|
40 mday 1.2 : Base(PEGASUS_QUEUENAME_BINARY_HANDLER),
41 _outputQueue(output_q),
|
42 mike 1.19 _msg_q()
|
43 mday 1.2 {
44 }
45
|
46 kumpf 1.24 BinaryMessageHandler::~BinaryMessageHandler()
|
47 mday 1.2 {
48 }
49
|
50 kumpf 1.24 Boolean BinaryMessageHandler::messageOK(const Message* msg)
|
51 mday 1.2 {
|
52 kumpf 1.24 return Base::messageOK(msg);
|
53 mday 1.2 }
54
|
55 kumpf 1.24 void BinaryMessageHandler::handleEnqueue()
|
56 mday 1.2 {
|
57 kumpf 1.24 Message* msg = dequeue();
58 handleEnqueue(msg);
|
59 mday 1.2 }
60
|
61 kumpf 1.24 void BinaryMessageHandler::handleEnqueue(Message* message)
|
62 mday 1.2 {
|
63 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
64 "BinaryMessageHandler::handleEnqueue(Message*)");
65 PEGASUS_ASSERT(message != 0);
66
67 AsyncRequest* asyncRequest;
68 AsyncOpNode* op;
|
69 mday 1.2
|
70 kumpf 1.27 message->put_async(0);
|
71 mday 1.2
|
72 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
|
73 kumpf 1.24 "Converting legacy message to AsyncLegacyOperationStart");
74 op = this->get_op();
75 asyncRequest = new AsyncLegacyOperationStart(
76 op,
77 this->getQueueId(),
78 message,
79 this->getQueueId());
80 op->_flags |= ASYNC_OPFLAGS_FIRE_AND_FORGET;
81
82 _handle_async_request(asyncRequest);
83 PEG_METHOD_EXIT();
|
84 mday 1.2 }
85
|
86 kumpf 1.24 void BinaryMessageHandler::_handle_async_request(AsyncRequest* request)
|
87 mday 1.2 {
|
88 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
89 "BinaryMessageHandler::_handle_async_request");
|
90 mday 1.2
|
91 kumpf 1.24 PEGASUS_ASSERT(request != 0 && request->op != 0 );
|
92 mday 1.2
|
93 kumpf 1.26 if (request->getType() == ASYNC_ASYNC_LEGACY_OP_START ||
94 request->getType() == ASYNC_ASYNC_LEGACY_OP_RESULT)
|
95 kumpf 1.24 {
|
96 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
|
97 kumpf 1.24 "Processing ASYNC_LEGACY_OP_* Message.");
98 request->op->processing();
99
100 try
101 {
102 _msg_q.enqueue(request->op);
103 }
104 catch (ListFull&)
105 {
|
106 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
|
107 kumpf 1.24 "List Full.");
108 Base::_handle_async_request(request);
109 PEG_METHOD_EXIT();
110 return;
111 }
112 catch (...)
113 {
|
114 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
|
115 kumpf 1.24 "List Error.");
116 Base::_handle_async_request(request);
117 PEG_METHOD_EXIT();
118 return;
119 }
120
|
121 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
|
122 kumpf 1.24 "Allocating pooled thread to handle binary message.");
123 if (_thread_pool->allocate_and_awaken(
124 (void*)this, BinaryMessageHandler::handle_binary_message) !=
125 PEGASUS_THREAD_OK)
126 {
|
127 marek 1.29 PEG_TRACE((
128 TRC_BINARY_MSG_HANDLER,
|
129 marek 1.30 Tracer::LEVEL1,
|
130 marek 1.29 "Not enough threads to handle binary message."
131 "Could not allocate thread for %s. "
132 "Queue has %d messages waiting. ",
|
133 konrad.r 1.14 getQueueName(),
|
134 marek 1.25 _msg_q.count()));
|
135 kumpf 1.24 }
136 }
|
137 kumpf 1.26 else if (request->getType() == ASYNC_CIMSERVICE_STOP)
|
138 kumpf 1.24 {
|
139 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
|
140 kumpf 1.24 "Handling CIMServer Stop Message");
141 Base::_handle_async_request(request);
142 }
143 else
144 {
145 // pass all other operations to the default handler
|
146 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
|
147 kumpf 1.24 "Passing message to parent.");
|
148 kumpf 1.3 #ifdef BINARYMESSAGEHANDLER_DEBUG
|
149 kumpf 1.24 PEGASUS_STD(cout) << "Unexpected Message: type " <<
|
150 kumpf 1.26 MessageTypeToString(request->getType()) << PEGASUS_STD(endl);
|
151 kumpf 1.3 #endif
|
152 mday 1.2
|
153 kumpf 1.24 Base::_handle_async_request(request);
154 }
|
155 mday 1.2
|
156 kumpf 1.24 PEG_METHOD_EXIT();
|
157 mday 1.2 }
158
|
159 mike 1.22 ThreadReturnType PEGASUS_THREAD_CDECL
|
160 kumpf 1.12 BinaryMessageHandler::handle_binary_message(void* parm)
|
161 mday 1.2 {
|
162 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
163 "BinaryMessageHandler::handle_binary_message");
|
164 kumpf 1.12
|
165 kumpf 1.24 BinaryMessageHandler* myself =
166 reinterpret_cast<BinaryMessageHandler*>(parm);
167 PEGASUS_ASSERT(myself != 0);
168
169 AsyncOpNode* op;
170 try
171 {
172 op = myself->_msg_q.dequeue();
173 }
174 catch (...)
175 {
|
176 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL2,
|
177 kumpf 1.24 "Internal DQueue Error.");
178 PEG_METHOD_EXIT();
179 return 0;
180 }
181
182 PEGASUS_ASSERT(op != 0);
183
184 // we only receive ASYNC_LEGACY_OP_START and
185 // ASYNC_LEGACY_OP_RESULT messages
186
187 Message* legacy = 0;
188 AsyncMessage* msg = 0;
189
190 try
191 {
192 // if there is a response, dispatch the response
193 if (op->_response.get() != 0)
194 {
195 msg = static_cast<AsyncMessage*>(op->_response.get());
196 legacy =
197 static_cast<AsyncLegacyOperationResult*>(msg)->get_result();
198 kumpf 1.24 }
199 else
200 {
201 // there is no response so there has to be a request
202 if (op->_request.get() == 0)
203 {
|
204 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL2,
|
205 kumpf 1.24 "Received OpNode with no messages.");
206 PEG_METHOD_EXIT();
207 return 0;
208 }
209
210 // dispatch the request
211 msg = static_cast<AsyncMessage*>(op->_request.get());
212 legacy =
213 static_cast<AsyncLegacyOperationStart*>(msg)->get_action();
214 }
215 if (msg && legacy)
216 {
|
217 kumpf 1.27 legacy->put_async(0);
|
218 kumpf 1.24
219 switch(legacy->getType())
220 {
221 case CIM_CREATE_CLASS_REQUEST_MESSAGE:
222 myself->handleCreateClassRequest(
223 op, (CIMCreateClassRequestMessage*)legacy);
224 break;
225 case CIM_CREATE_INSTANCE_REQUEST_MESSAGE:
226 myself->handleCreateInstanceRequest(
227 op, (CIMCreateInstanceRequestMessage*)legacy);
228 break;
229 case CIM_MODIFY_CLASS_REQUEST_MESSAGE:
230 myself->handleModifyClassRequest(
231 op, (CIMModifyClassRequestMessage*)legacy);
232 break;
|
233 kumpf 1.12 case CIM_MODIFY_INSTANCE_REQUEST_MESSAGE:
|
234 kumpf 1.24 myself->handleModifyInstanceRequest(
235 op, (CIMModifyInstanceRequestMessage*)legacy);
236 break;
237 case CIM_ENUMERATE_CLASSES_REQUEST_MESSAGE:
238 myself->handleEnumerateClassesRequest(
239 op, (CIMEnumerateClassesRequestMessage*)legacy);
240 break;
|
241 kumpf 1.12 case CIM_ENUMERATE_CLASS_NAMES_REQUEST_MESSAGE:
|
242 kumpf 1.24 myself->handleEnumerateClassNamesRequest(
243 op, (CIMEnumerateClassNamesRequestMessage*)legacy);
244 break;
|
245 kumpf 1.12 case CIM_ENUMERATE_INSTANCES_REQUEST_MESSAGE:
|
246 kumpf 1.24 myself->handleEnumerateInstancesRequest(
247 op, (CIMEnumerateInstancesRequestMessage*)legacy);
248 break;
|
249 kumpf 1.12 case CIM_ENUMERATE_INSTANCE_NAMES_REQUEST_MESSAGE:
|
250 kumpf 1.24 myself->handleEnumerateInstanceNamesRequest(
251 op, (CIMEnumerateInstanceNamesRequestMessage*)legacy);
252 break;
|
253 kumpf 1.12 case CIM_EXEC_QUERY_REQUEST_MESSAGE:
|
254 kumpf 1.24 myself->handleExecQueryRequest(
255 op, (CIMExecQueryRequestMessage*)legacy);
256 break;
|
257 kumpf 1.12 case CIM_ASSOCIATORS_REQUEST_MESSAGE:
|
258 kumpf 1.24 myself->handleAssociatorsRequest(
259 op, (CIMAssociatorsRequestMessage*)legacy);
260 break;
|
261 kumpf 1.12 case CIM_ASSOCIATOR_NAMES_REQUEST_MESSAGE:
|
262 kumpf 1.24 myself->handleAssociatorNamesRequest(
263 op, (CIMAssociatorNamesRequestMessage*)legacy);
264 break;
|
265 kumpf 1.12 case CIM_REFERENCES_REQUEST_MESSAGE:
|
266 kumpf 1.24 myself->handleReferencesRequest(
267 op, (CIMReferencesRequestMessage*)legacy);
268 break;
|
269 kumpf 1.12 case CIM_REFERENCE_NAMES_REQUEST_MESSAGE:
|
270 kumpf 1.24 myself->handleReferenceNamesRequest(
271 op, (CIMReferenceNamesRequestMessage*)legacy);
272 break;
|
273 kumpf 1.12 case CIM_GET_PROPERTY_REQUEST_MESSAGE:
|
274 kumpf 1.24 myself->handleGetPropertyRequest(
275 op, (CIMGetPropertyRequestMessage*)legacy);
276 break;
|
277 kumpf 1.18 case CIM_SET_PROPERTY_REQUEST_MESSAGE:
|
278 kumpf 1.24 myself->handleSetPropertyRequest(
279 op, (CIMSetPropertyRequestMessage*)legacy);
280 break;
|
281 kumpf 1.12 case CIM_GET_QUALIFIER_REQUEST_MESSAGE:
|
282 kumpf 1.24 myself->handleGetQualifierRequest(
283 op, (CIMGetQualifierRequestMessage*)legacy);
284 break;
|
285 kumpf 1.12 case CIM_SET_QUALIFIER_REQUEST_MESSAGE:
|
286 kumpf 1.24 myself->handleSetQualifierRequest(
287 op, (CIMSetQualifierRequestMessage*)legacy);
288 break;
|
289 kumpf 1.12 case CIM_DELETE_QUALIFIER_REQUEST_MESSAGE:
|
290 kumpf 1.24 myself->handleDeleteQualifiersRequest(
291 op, (CIMDeleteQualifierRequestMessage*)legacy);
292 break;
|
293 kumpf 1.12 case CIM_ENUMERATE_QUALIFIERS_REQUEST_MESSAGE:
|
294 kumpf 1.24 myself->handleEnumerateQualifiersRequest(
295 op, (CIMEnumerateQualifiersRequestMessage*)legacy);
296 break;
|
297 kumpf 1.12 case CIM_INVOKE_METHOD_REQUEST_MESSAGE:
|
298 kumpf 1.24 myself->handleInvokeMethodRequest(
299 op, (CIMInvokeMethodRequestMessage*)legacy);
300 break;
|
301 kumpf 1.12 //**** response messages ****//
302 case CIM_GET_CLASS_RESPONSE_MESSAGE:
|
303 kumpf 1.24 myself->handleGetClassResponse(
304 op, (CIMGetClassResponseMessage*)legacy);
305 break;
|
306 kumpf 1.12 case CIM_GET_INSTANCE_RESPONSE_MESSAGE:
|
307 kumpf 1.24 myself->handleGetInstanceResponse(
308 op, (CIMGetInstanceResponseMessage*)legacy);
309 break;
|
310 kumpf 1.12 case CIM_DELETE_CLASS_RESPONSE_MESSAGE:
|
311 kumpf 1.24 myself->handleDeleteClassResponse(
312 op, (CIMDeleteClassResponseMessage*)legacy);
313 break;
|
314 kumpf 1.12 case CIM_DELETE_INSTANCE_RESPONSE_MESSAGE:
|
315 kumpf 1.24 myself->handleDeleteInstanceResponse(
316 op, (CIMDeleteInstanceResponseMessage*)legacy);
317 break;
|
318 kumpf 1.12 case CIM_CREATE_CLASS_RESPONSE_MESSAGE:
|
319 kumpf 1.24 myself->handleCreateClassResponse(
320 op, (CIMCreateClassResponseMessage*)legacy);
321 break;
|
322 kumpf 1.12 case CIM_CREATE_INSTANCE_RESPONSE_MESSAGE:
|
323 kumpf 1.24 myself->handleCreateInstanceResponse(
324 op, (CIMCreateInstanceResponseMessage*)legacy);
325 break;
|
326 kumpf 1.12 case CIM_MODIFY_CLASS_RESPONSE_MESSAGE:
|
327 kumpf 1.24 myself->handleModifyClassResponse(
328 op, (CIMModifyClassResponseMessage*)legacy);
329 break;
|
330 kumpf 1.12 case CIM_MODIFY_INSTANCE_RESPONSE_MESSAGE:
|
331 kumpf 1.24 myself->handleModifyInstanceResponse(
332 op, (CIMModifyInstanceResponseMessage*)legacy);
333 break;
|
334 kumpf 1.12 case CIM_ENUMERATE_CLASSES_RESPONSE_MESSAGE:
|
335 kumpf 1.24 myself->handleEnumerateClassesResponse(
336 op, (CIMEnumerateClassesResponseMessage*)legacy);
337 break;
|
338 kumpf 1.12 case CIM_ENUMERATE_CLASS_NAMES_RESPONSE_MESSAGE:
|
339 kumpf 1.24 myself->handleEnumerateClassNamesResponse(
340 op, (CIMEnumerateClassNamesResponseMessage*)legacy);
341 break;
|
342 kumpf 1.12 case CIM_ENUMERATE_INSTANCES_RESPONSE_MESSAGE:
|
343 kumpf 1.24 myself->handleEnumerateInstancesResponse(
344 op, (CIMEnumerateInstancesResponseMessage*)legacy);
345 break;
|
346 kumpf 1.12 case CIM_ENUMERATE_INSTANCE_NAMES_RESPONSE_MESSAGE:
|
347 kumpf 1.24 myself->handleEnumerateInstanceNamesResponse(
348 op, (CIMEnumerateInstanceNamesResponseMessage*)legacy);
349 break;
|
350 kumpf 1.12 case CIM_EXEC_QUERY_RESPONSE_MESSAGE:
|
351 kumpf 1.24 myself->handleExecQueryResponse(
352 op, (CIMExecQueryResponseMessage*)legacy);
353 break;
|
354 kumpf 1.12 case CIM_ASSOCIATORS_RESPONSE_MESSAGE:
|
355 kumpf 1.24 myself->handleAssociatorsResponse(
356 op, (CIMAssociatorsResponseMessage*)legacy);
357 break;
|
358 kumpf 1.12 case CIM_ASSOCIATOR_NAMES_RESPONSE_MESSAGE:
|
359 kumpf 1.24 myself->handleAssociatorNamesResponse(
360 op, (CIMAssociatorNamesResponseMessage*)legacy);
361 break;
|
362 kumpf 1.12 case CIM_REFERENCES_RESPONSE_MESSAGE:
|
363 kumpf 1.24 myself->handleReferencesResponse(
364 op, (CIMReferencesResponseMessage*)legacy);
365 break;
|
366 kumpf 1.12 case CIM_REFERENCE_NAMES_RESPONSE_MESSAGE:
|
367 kumpf 1.24 myself->handleReferenceNamesResponse(
368 op, (CIMReferenceNamesResponseMessage*)legacy);
369 break;
|
370 kumpf 1.12 case CIM_GET_PROPERTY_RESPONSE_MESSAGE:
|
371 kumpf 1.24 myself->handleGetPropertyResponse(
372 op, (CIMGetPropertyResponseMessage*)legacy);
373 break;
|
374 kumpf 1.12 case CIM_SET_PROPERTY_RESPONSE_MESSAGE:
|
375 kumpf 1.24 myself->handleSetPropertyResponse(
376 op, (CIMSetPropertyResponseMessage*)legacy);
377 break;
|
378 kumpf 1.12 case CIM_GET_QUALIFIER_RESPONSE_MESSAGE:
|
379 kumpf 1.24 myself->handleGetQualifierResponse(
380 op, (CIMGetQualifierResponseMessage*)legacy);
381 break;
|
382 kumpf 1.12 case CIM_SET_QUALIFIER_RESPONSE_MESSAGE:
|
383 kumpf 1.24 myself->handleSetQualifierResponse(
384 op, (CIMSetQualifierResponseMessage*)legacy);
385 break;
|
386 kumpf 1.12 case CIM_DELETE_QUALIFIER_RESPONSE_MESSAGE:
|
387 kumpf 1.24 myself->handleDeleteQualifierResponse(
388 op, (CIMDeleteQualifierResponseMessage*)legacy);
389 break;
|
390 kumpf 1.12 case CIM_ENUMERATE_QUALIFIERS_RESPONSE_MESSAGE:
|
391 kumpf 1.24 myself->handleEnumerateQualifiersResponse(
392 op, (CIMEnumerateQualifiersResponseMessage*)legacy);
393 break;
|
394 kumpf 1.12 case CIM_INVOKE_METHOD_RESPONSE_MESSAGE:
|
395 kumpf 1.24 myself->handleInvokeMethodResponse(
396 op, (CIMInvokeMethodResponseMessage*)legacy);
397 break;
|
398 kumpf 1.12
399 // unexpected requests
400 case CIM_PROCESS_INDICATION_REQUEST_MESSAGE:
|
401 kumpf 1.17 case CIM_HANDLE_INDICATION_REQUEST_MESSAGE:
|
402 kumpf 1.18 case CIM_NOTIFY_PROVIDER_REGISTRATION_REQUEST_MESSAGE:
|
403 kumpf 1.12 case CIM_NOTIFY_PROVIDER_TERMINATION_REQUEST_MESSAGE:
404 case CIM_NOTIFY_PROVIDER_ENABLE_REQUEST_MESSAGE:
405 case CIM_CREATE_SUBSCRIPTION_REQUEST_MESSAGE:
406 case CIM_MODIFY_SUBSCRIPTION_REQUEST_MESSAGE:
407 case CIM_DELETE_SUBSCRIPTION_REQUEST_MESSAGE:
408 case CIM_SUBSCRIPTION_INIT_COMPLETE_REQUEST_MESSAGE:
409 case CIM_DISABLE_MODULE_REQUEST_MESSAGE:
410 case CIM_ENABLE_MODULE_REQUEST_MESSAGE:
411
412 case CIM_NOTIFY_CONFIG_CHANGE_REQUEST_MESSAGE:
413
414 case CIM_STOP_ALL_PROVIDERS_REQUEST_MESSAGE:
415 case CIM_GET_CLASS_REQUEST_MESSAGE:
416 case CIM_GET_INSTANCE_REQUEST_MESSAGE:
417 case CIM_EXPORT_INDICATION_REQUEST_MESSAGE:
418 case CIM_DELETE_CLASS_REQUEST_MESSAGE:
419 case CIM_DELETE_INSTANCE_REQUEST_MESSAGE:
|
420 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
|
421 kumpf 1.24 "Received Unexpected legacy request message.");
422 myself->_handleRequest(op, legacy);
423 break;
|
424 kumpf 1.12
425 // unexpected replies
426 case CIM_PROCESS_INDICATION_RESPONSE_MESSAGE:
427 case CIM_NOTIFY_PROVIDER_REGISTRATION_RESPONSE_MESSAGE:
428 case CIM_NOTIFY_PROVIDER_TERMINATION_RESPONSE_MESSAGE:
429 case CIM_HANDLE_INDICATION_RESPONSE_MESSAGE:
430 case CIM_CREATE_SUBSCRIPTION_RESPONSE_MESSAGE:
431 case CIM_MODIFY_SUBSCRIPTION_RESPONSE_MESSAGE:
432 case CIM_DELETE_SUBSCRIPTION_RESPONSE_MESSAGE:
433 case CIM_SUBSCRIPTION_INIT_COMPLETE_RESPONSE_MESSAGE:
434 case CIM_DISABLE_MODULE_RESPONSE_MESSAGE:
435 case CIM_ENABLE_MODULE_RESPONSE_MESSAGE:
436 case CIM_STOP_ALL_PROVIDERS_RESPONSE_MESSAGE:
437 case CIM_NOTIFY_PROVIDER_ENABLE_RESPONSE_MESSAGE:
438 case CIM_NOTIFY_CONFIG_CHANGE_RESPONSE_MESSAGE:
|
439 kumpf 1.24 break;
|
440 kumpf 1.18 case CIM_EXPORT_INDICATION_RESPONSE_MESSAGE:
|
441 kumpf 1.12 default:
|
442 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
|
443 kumpf 1.24 "Received Unexpected legacy response message.");
444 myself->_handleResponse(op, legacy);
445 break;
446 }
447 }
448 else
449 {
|
450 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
|
451 kumpf 1.24 "Damaged or uninitialized AsyncOpNode received.");
452 }
453 }
454 catch (const Exception& e)
455 {
456 PEG_TRACE_STRING(TRC_DISCARDED_DATA, Tracer::LEVEL2,
457 "Caught exception: \"" + e.getMessage() +
458 "\". Exiting handle_binary_message.");
459 }
460 catch (...)
461 {
|
462 marek 1.25 PEG_TRACE_CSTRING(TRC_DISCARDED_DATA, Tracer::LEVEL2,
|
463 kumpf 1.24 "Caught unrecognized exception. Exiting handle_binary_message.");
464 }
465
466 PEG_METHOD_EXIT();
467 return 0;
468 }
469
470 // requests always go to the output queue
471 void BinaryMessageHandler::_handleRequest(
472 AsyncOpNode* op,
473 Message* msg) throw()
474 {
475 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
476 "BinaryMessageHandler::_handleRequest(AsyncOpNode*, Message*)");
477
478 AsyncRequest* async_request =
479 static_cast<AsyncRequest*>(op->removeRequest());
480
|
481 kumpf 1.27 msg->put_async(0);
|
482 kumpf 1.24 try
483 {
484 _outputQueue->enqueue(msg);
485 }
486 catch (...)
487 {
488 // Should this exception really just be ignored?
489 // It seems like binary_message_handler should catch it.
|
490 marek 1.25 PEG_TRACE_CSTRING(TRC_DISCARDED_DATA, Tracer::LEVEL2,
|
491 kumpf 1.24 "Unrecognized exception caught and ignored by _handleRequest().");
492 }
|
493 mday 1.2
|
494 kumpf 1.24 delete async_request;
|
495 mday 1.2
|
496 kumpf 1.24 _complete_op_node(op, ASYNC_OPSTATE_COMPLETE, 0, 0);
497 PEG_METHOD_EXIT();
|
498 mday 1.2 }
499
500 // responses have their destination queue id in the message
|
501 kumpf 1.24 void BinaryMessageHandler::_handleResponse(
502 AsyncOpNode* op,
503 Message* msg) throw()
504 {
505 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
506 "BinaryMessageHandler::_handleResponse(AsyncOpNode*, Message*)");
507
508 if (op->_response.get() != 0)
509 {
510 AsyncReply* asyncReply =
511 static_cast<AsyncReply*>(op->removeResponse());
512 delete asyncReply;
513 }
|
514 kumpf 1.27 msg->put_async(0);
|
515 kumpf 1.24
516 MessageQueue* dest =
517 MessageQueue::lookup(((CIMRequestMessage*)msg)->queueIds.top());
518 if (dest == 0)
519 {
|
520 marek 1.25 PEG_TRACE_CSTRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
|
521 kumpf 1.24 "Bad or non-existent Queue ID for desination in legacy message.");
522 delete msg;
523 }
524 else
525 {
526 try
527 {
528 dest->enqueue(msg);
529 }
530 catch (...)
531 {
532 // Should this exception really just be ignored?
533 // It seems like binary_message_handler should catch it.
|
534 marek 1.25 PEG_TRACE_CSTRING(TRC_DISCARDED_DATA, Tracer::LEVEL2,
|
535 kumpf 1.24 "Unrecognized exception caught and ignored by "
536 "_handleResponse().");
537 }
538 }
539
|
540 mday 1.2 _complete_op_node(op, ASYNC_OPSTATE_COMPLETE, 0, 0);
541 PEG_METHOD_EXIT();
542 }
543
544 void BinaryMessageHandler::handleCreateClassRequest(
|
545 kumpf 1.24 AsyncOpNode* op,
546 CIMCreateClassRequestMessage* msg) throw()
|
547 mday 1.2 {
|
548 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
549 "BinaryMessageHandler::handleCreateClassRequest()");
550 _handleRequest(op, msg);
551 PEG_METHOD_EXIT();
|
552 mday 1.2 }
553
554 void BinaryMessageHandler::handleGetClassRequest(
|
555 kumpf 1.24 AsyncOpNode* op,
556 CIMGetClassRequestMessage* msg) throw()
|
557 mday 1.2 {
|
558 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
559 "BinaryMessageHandler::handleGetClassRequest()");
560 _handleRequest(op, msg);
561 PEG_METHOD_EXIT();
|
562 mday 1.2 }
563
564 void BinaryMessageHandler::handleModifyClassRequest(
|
565 kumpf 1.24 AsyncOpNode* op,
566 CIMModifyClassRequestMessage* msg) throw()
|
567 mday 1.2 {
|
568 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
569 "BinaryMessageHandler::handleModifyClassRequest()");
570 _handleRequest(op, msg);
571 PEG_METHOD_EXIT();
|
572 mday 1.2 }
573
574 void BinaryMessageHandler::handleEnumerateClassNamesRequest(
|
575 kumpf 1.24 AsyncOpNode* op,
576 CIMEnumerateClassNamesRequestMessage* msg) throw()
|
577 mday 1.2 {
|
578 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
579 "BinaryMessageHandler::handleEnumerateClassNamesRequest()");
580 _handleRequest(op, msg);
581 PEG_METHOD_EXIT();
|
582 mday 1.2 }
583
584 void BinaryMessageHandler::handleEnumerateClassesRequest(
|
585 kumpf 1.24 AsyncOpNode* op,
586 CIMEnumerateClassesRequestMessage* msg) throw()
|
587 mday 1.2 {
|
588 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
589 "BinaryMessageHandler::handleEnumerateClassRequest()");
590 _handleRequest(op, msg);
591 PEG_METHOD_EXIT();
|
592 mday 1.2 }
593
594
595 void BinaryMessageHandler::handleDeleteClassRequest(
|
596 kumpf 1.24 AsyncOpNode* op,
597 CIMDeleteClassRequestMessage* msg) throw()
|
598 mday 1.2 {
|
599 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
600 "BinaryMessageHandler::handleDeleteClassRequest()");
601 _handleRequest(op, msg);
602 PEG_METHOD_EXIT();
|
603 mday 1.2 }
604
605 void BinaryMessageHandler::handleCreateInstanceRequest(
|
606 kumpf 1.24 AsyncOpNode* op,
607 CIMCreateInstanceRequestMessage* msg) throw()
|
608 mday 1.2 {
|
609 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
610 "BinaryMessageHandler::handleCreateInstanceRequest()");
611 _handleRequest(op, msg);
612 PEG_METHOD_EXIT();
|
613 mday 1.2 }
614
615 void BinaryMessageHandler::handleGetInstanceRequest(
|
616 kumpf 1.24 AsyncOpNode* op,
617 CIMGetInstanceRequestMessage* msg) throw()
|
618 mday 1.2 {
|
619 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
620 "BinaryMessageHandler::handleGetInstanceRequest()");
621 _handleRequest(op, msg);
622 PEG_METHOD_EXIT();
|
623 mday 1.2 }
624
625 void BinaryMessageHandler::handleModifyInstanceRequest(
|
626 kumpf 1.24 AsyncOpNode* op,
627 CIMModifyInstanceRequestMessage* msg) throw()
|
628 mday 1.2 {
|
629 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
630 "BinaryMessageHandler::handleModifyInstanceRequest()");
631 _handleRequest(op, msg);
632 PEG_METHOD_EXIT();
|
633 mday 1.2 }
634
635 void BinaryMessageHandler::handleEnumerateInstanceNamesRequest(
|
636 kumpf 1.24 AsyncOpNode* op,
637 CIMEnumerateInstanceNamesRequestMessage* msg) throw()
|
638 mday 1.2 {
|
639 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
640 "BinaryMessageHandler::handleEnumerateInstanceNamesRequest()");
641 _handleRequest(op, msg);
642 PEG_METHOD_EXIT();
|
643 mday 1.2 }
644
645 void BinaryMessageHandler::handleEnumerateInstancesRequest(
|
646 kumpf 1.24 AsyncOpNode* op,
647 CIMEnumerateInstancesRequestMessage* msg) throw()
|
648 mday 1.2 {
|
649 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
650 "BinaryMessageHandler::handleEnumerateInstancesRequest()");
651 _handleRequest(op, msg);
652 PEG_METHOD_EXIT();
|
653 mday 1.2 }
654
655 void BinaryMessageHandler::handleDeleteInstanceRequest(
|
656 kumpf 1.24 AsyncOpNode* op,
657 CIMDeleteInstanceRequestMessage* msg) throw()
|
658 mday 1.2 {
|
659 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
660 "BinaryMessageHandler::handleDeleteInstanceRequest()");
661 _handleRequest(op, msg);
662 PEG_METHOD_EXIT();
|
663 mday 1.2 }
|
664 kumpf 1.24
|
665 mday 1.2 void BinaryMessageHandler::handleSetQualifierRequest(
|
666 kumpf 1.24 AsyncOpNode* op,
667 CIMSetQualifierRequestMessage* msg) throw()
|
668 mday 1.2 {
|
669 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
670 "BinaryMessageHandler::handleSetQualifierRequest()");
671 _handleRequest(op, msg);
672 PEG_METHOD_EXIT();
|
673 mday 1.2 }
|
674 kumpf 1.24
|
675 mday 1.2 void BinaryMessageHandler::handleGetQualifierRequest(
|
676 kumpf 1.24 AsyncOpNode* op,
677 CIMGetQualifierRequestMessage* msg) throw()
|
678 mday 1.2 {
|
679 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
680 "BinaryMessageHandler::handleGetQualifierRequest()");
681 _handleRequest(op, msg);
682 PEG_METHOD_EXIT();
|
683 mday 1.2 }
|
684 kumpf 1.24
|
685 mday 1.2 void BinaryMessageHandler::handleEnumerateQualifiersRequest(
|
686 kumpf 1.24 AsyncOpNode* op,
687 CIMEnumerateQualifiersRequestMessage* msg) throw()
|
688 mday 1.2 {
|
689 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
690 "BinaryMessageHandler::handleEnumerateQualifiersRequest()");
691 _handleRequest(op, msg);
692 PEG_METHOD_EXIT();
|
693 mday 1.2 }
|
694 kumpf 1.24
|
695 mday 1.2 void BinaryMessageHandler::handleDeleteQualifiersRequest(
|
696 kumpf 1.24 AsyncOpNode* op,
697 CIMDeleteQualifierRequestMessage* msg) throw()
|
698 mday 1.2 {
|
699 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
700 "BinaryMessageHandler::handleDeleteQualifiersRequest()");
701 _handleRequest(op, msg);
702 PEG_METHOD_EXIT();
|
703 mday 1.2 }
|
704 kumpf 1.24
|
705 mday 1.2 void BinaryMessageHandler::handleReferenceNamesRequest(
|
706 kumpf 1.24 AsyncOpNode* op,
707 CIMReferenceNamesRequestMessage* msg) throw()
|
708 mday 1.2 {
|
709 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
710 "BinaryMessageHandler::handleReferenceNamesRequest()");
711 _handleRequest(op, msg);
712 PEG_METHOD_EXIT();
|
713 mday 1.2 }
714
715 void BinaryMessageHandler::handleReferencesRequest(
|
716 kumpf 1.24 AsyncOpNode* op,
717 CIMReferencesRequestMessage* msg) throw()
|
718 mday 1.2 {
|
719 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
720 "BinaryMessageHandler::handleReferencesRequest()");
721 _handleRequest(op, msg);
722 PEG_METHOD_EXIT();
|
723 mday 1.2 }
724
725 void BinaryMessageHandler::handleAssociatorNamesRequest(
|
726 kumpf 1.24 AsyncOpNode* op,
727 CIMAssociatorNamesRequestMessage* msg) throw()
|
728 mday 1.2 {
|
729 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
730 "BinaryMessageHandler::handleAssociatorNamesRequest()");
731 _handleRequest(op, msg);
732 PEG_METHOD_EXIT();
|
733 mday 1.2 }
734
735 void BinaryMessageHandler::handleAssociatorsRequest(
|
736 kumpf 1.24 AsyncOpNode* op,
737 CIMAssociatorsRequestMessage* msg) throw()
|
738 mday 1.2 {
|
739 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
740 "BinaryMessageHandler::handleAssociatorsRequest()");
741 _handleRequest(op, msg);
742 PEG_METHOD_EXIT();
|
743 mday 1.2 }
744
745 void BinaryMessageHandler::handleGetPropertyRequest(
|
746 kumpf 1.24 AsyncOpNode* op,
747 CIMGetPropertyRequestMessage* msg) throw()
|
748 mday 1.2 {
|
749 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
750 "BinaryMessageHandler::handleGetPropertyRequest()");
751 _handleRequest(op, msg);
752 PEG_METHOD_EXIT();
|
753 mday 1.2 }
754
755 void BinaryMessageHandler::handleSetPropertyRequest(
|
756 kumpf 1.24 AsyncOpNode* op,
757 CIMSetPropertyRequestMessage* msg) throw()
|
758 mday 1.2 {
|
759 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
760 "BinaryMessageHandler::handleSetPropertyRequest()");
761 _handleRequest(op, msg);
762 PEG_METHOD_EXIT();
|
763 mday 1.2 }
764
765 void BinaryMessageHandler::handleExecQueryRequest(
|
766 kumpf 1.24 AsyncOpNode* op,
767 CIMExecQueryRequestMessage* msg) throw()
|
768 mday 1.2 {
|
769 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
770 "BinaryMessageHandler::handleExecQueryRequest()");
771 _handleRequest(op, msg);
772 PEG_METHOD_EXIT();
|
773 mday 1.2 }
|
774 kumpf 1.24
|
775 mday 1.2 void BinaryMessageHandler::handleInvokeMethodRequest(
|
776 kumpf 1.24 AsyncOpNode* op,
777 CIMInvokeMethodRequestMessage* msg) throw()
|
778 mday 1.2 {
|
779 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
780 "BinaryMessageHandler::handleInvokeMethodRequest()");
781 _handleRequest(op, msg);
782 PEG_METHOD_EXIT();
|
783 mday 1.2 }
|
784 kumpf 1.24
|
785 mday 1.2 // **** Response Messages **** //
|
786 kumpf 1.24
|
787 mday 1.2 void BinaryMessageHandler::handleCreateClassResponse(
|
788 kumpf 1.24 AsyncOpNode* op,
789 CIMCreateClassResponseMessage* msg) throw()
|
790 mday 1.2 {
|
791 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
792 "BinaryMessageHandler::handleCreateClassResponse()");
793 _handleResponse(op, msg);
794 PEG_METHOD_EXIT();
|
795 mday 1.2 }
796
797 void BinaryMessageHandler::handleGetClassResponse(
|
798 kumpf 1.24 AsyncOpNode* op,
799 CIMGetClassResponseMessage* msg) throw()
|
800 mday 1.2 {
|
801 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
802 "BinaryMessageHandler::handleGetClassResponse()");
803 _handleResponse(op, msg);
804 PEG_METHOD_EXIT();
|
805 mday 1.2 }
806
807 void BinaryMessageHandler::handleModifyClassResponse(
|
808 kumpf 1.24 AsyncOpNode* op,
809 CIMModifyClassResponseMessage* msg) throw()
|
810 mday 1.2 {
|
811 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
812 "BinaryMessageHandler::handleModifyClassResponse()");
813 _handleResponse(op, msg);
814 PEG_METHOD_EXIT();
|
815 mday 1.2 }
|
816 kumpf 1.24
|
817 mday 1.2 void BinaryMessageHandler::handleEnumerateClassNamesResponse(
|
818 kumpf 1.24 AsyncOpNode* op,
819 CIMEnumerateClassNamesResponseMessage* msg) throw()
|
820 mday 1.2 {
|
821 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
822 "BinaryMessageHandler::handleEnumerateClassNamesResponse()");
823 _handleResponse(op, msg);
824 PEG_METHOD_EXIT();
|
825 mday 1.2 }
826
827 void BinaryMessageHandler::handleEnumerateClassesResponse(
|
828 kumpf 1.24 AsyncOpNode* op,
829 CIMEnumerateClassesResponseMessage* msg) throw()
|
830 mday 1.2 {
|
831 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
832 "BinaryMessageHandler::handleEnumerateClassesResponse()");
833 _handleResponse(op, msg);
834 PEG_METHOD_EXIT();
|
835 mday 1.2 }
836
837 void BinaryMessageHandler::handleDeleteClassResponse(
|
838 kumpf 1.24 AsyncOpNode* op,
839 CIMDeleteClassResponseMessage* msg) throw()
|
840 mday 1.2 {
|
841 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
842 "BinaryMessageHandler::handleDeleteClassResponse()");
843 _handleResponse(op, msg);
844 PEG_METHOD_EXIT();
|
845 mday 1.2 }
846
847 void BinaryMessageHandler::handleCreateInstanceResponse(
|
848 kumpf 1.24 AsyncOpNode* op,
849 CIMCreateInstanceResponseMessage* msg) throw()
|
850 mday 1.2 {
|
851 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
852 "BinaryMessageHandler::handleCreateInstanceResponse()");
853 _handleResponse(op, msg);
854 PEG_METHOD_EXIT();
|
855 mday 1.2 }
856
857 void BinaryMessageHandler::handleGetInstanceResponse(
|
858 kumpf 1.24 AsyncOpNode* op,
859 CIMGetInstanceResponseMessage* msg) throw()
|
860 mday 1.2 {
|
861 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
862 "BinaryMessageHandler::handleGetInstanceResponse()");
863 _handleResponse(op, msg);
864 PEG_METHOD_EXIT();
|
865 mday 1.2 }
866
867 void BinaryMessageHandler::handleModifyInstanceResponse(
|
868 kumpf 1.24 AsyncOpNode* op,
869 CIMModifyInstanceResponseMessage* msg) throw()
|
870 mday 1.2 {
|
871 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
872 "BinaryMessageHandler::handleModifyInstanceResponse()");
873 _handleResponse(op, msg);
874 PEG_METHOD_EXIT();
|
875 mday 1.2 }
876
877 void BinaryMessageHandler::handleEnumerateInstanceNamesResponse(
|
878 kumpf 1.24 AsyncOpNode* op,
879 CIMEnumerateInstanceNamesResponseMessage* msg) throw()
|
880 mday 1.2 {
|
881 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
882 "BinaryMessageHandler::handleEnumerateInstanceNamesResponse()");
883 _handleResponse(op, msg);
884 PEG_METHOD_EXIT();
|
885 mday 1.2 }
886
887 void BinaryMessageHandler::handleEnumerateInstancesResponse(
|
888 kumpf 1.24 AsyncOpNode* op,
889 CIMEnumerateInstancesResponseMessage* msg) throw()
|
890 mday 1.2 {
|
891 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
892 "BinaryMessageHandler::handleEnumerateInstancesResponse()");
893 _handleResponse(op, msg);
894 PEG_METHOD_EXIT();
|
895 mday 1.2 }
896
897 void BinaryMessageHandler::handleDeleteInstanceResponse(
|
898 kumpf 1.24 AsyncOpNode* op,
899 CIMDeleteInstanceResponseMessage* msg) throw()
|
900 mday 1.2 {
|
901 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
902 "BinaryMessageHandler::handleDeleteInstanceResponse()");
903 _handleResponse(op, msg);
904 PEG_METHOD_EXIT();
|
905 mday 1.2 }
906
907 void BinaryMessageHandler::handleGetPropertyResponse(
|
908 kumpf 1.24 AsyncOpNode* op,
909 CIMGetPropertyResponseMessage* msg) throw()
|
910 mday 1.2 {
|
911 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
912 "BinaryMessageHandler::handleGetPropertyResponse()");
913 _handleResponse(op, msg);
914 PEG_METHOD_EXIT();
|
915 mday 1.2 }
916
917 void BinaryMessageHandler::handleSetPropertyResponse(
|
918 kumpf 1.24 AsyncOpNode* op,
919 CIMSetPropertyResponseMessage* msg) throw()
|
920 mday 1.2 {
|
921 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
922 "BinaryMessageHandler::handleSetPropertyResponse()");
923 _handleResponse(op, msg);
924 PEG_METHOD_EXIT();
|
925 mday 1.2 }
926
927
928 void BinaryMessageHandler::handleSetQualifierResponse(
|
929 kumpf 1.24 AsyncOpNode* op,
930 CIMSetQualifierResponseMessage* msg) throw()
|
931 mday 1.2 {
|
932 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
933 "BinaryMessageHandler::handleSetQualifierResponse()");
934 _handleResponse(op, msg);
935 PEG_METHOD_EXIT();
|
936 mday 1.2 }
937
938 void BinaryMessageHandler::handleGetQualifierResponse(
|
939 kumpf 1.24 AsyncOpNode* op,
940 CIMGetQualifierResponseMessage* msg) throw()
|
941 mday 1.2 {
|
942 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
943 "BinaryMessageHandler::handleGetQualifierResponse()");
944 _handleResponse(op, msg);
945 PEG_METHOD_EXIT();
|
946 mday 1.2 }
|
947 kumpf 1.24
|
948 mday 1.2 void BinaryMessageHandler::handleEnumerateQualifiersResponse(
|
949 kumpf 1.24 AsyncOpNode* op,
950 CIMEnumerateQualifiersResponseMessage* msg) throw()
|
951 mday 1.2 {
|
952 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
953 "BinaryMessageHandler::handleEnumerateQualifiersResponse()");
954 _handleResponse(op, msg);
955 PEG_METHOD_EXIT();
|
956 mday 1.2 }
957
958 void BinaryMessageHandler::handleDeleteQualifierResponse(
|
959 kumpf 1.24 AsyncOpNode* op,
960 CIMDeleteQualifierResponseMessage* msg) throw()
|
961 mday 1.2 {
|
962 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
963 "BinaryMessageHandler::handleDeleteQualifierResponse()");
964 _handleResponse(op, msg);
965 PEG_METHOD_EXIT();
|
966 mday 1.2 }
967
968 void BinaryMessageHandler::handleReferenceNamesResponse(
|
969 kumpf 1.24 AsyncOpNode* op,
970 CIMReferenceNamesResponseMessage* msg) throw()
|
971 mday 1.2 {
|
972 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
973 "BinaryMessageHandler::handleReferenceNamesResponse()");
974 _handleResponse(op, msg);
975 PEG_METHOD_EXIT();
|
976 mday 1.2 }
977
978 void BinaryMessageHandler::handleReferencesResponse(
|
979 kumpf 1.24 AsyncOpNode* op,
980 CIMReferencesResponseMessage* msg) throw()
|
981 mday 1.2 {
|
982 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
983 "BinaryMessageHandler::handleReferencesResponse()");
984 _handleResponse(op, msg);
985 PEG_METHOD_EXIT();
|
986 mday 1.2 }
987
988 void BinaryMessageHandler::handleAssociatorNamesResponse(
|
989 kumpf 1.24 AsyncOpNode* op,
990 CIMAssociatorNamesResponseMessage* msg) throw()
|
991 mday 1.2 {
|
992 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
993 "BinaryMessageHandler::handleAssociatorNamesResponse()");
994 _handleResponse(op, msg);
995 PEG_METHOD_EXIT();
|
996 mday 1.2 }
997
998 void BinaryMessageHandler::handleAssociatorsResponse(
|
999 kumpf 1.24 AsyncOpNode* op,
1000 CIMAssociatorsResponseMessage* msg) throw()
|
1001 mday 1.2 {
|
1002 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
1003 "BinaryMessageHandler::handleAssociatorsResponse()");
1004 _handleResponse(op, msg);
1005 PEG_METHOD_EXIT();
|
1006 mday 1.2 }
1007
1008 void BinaryMessageHandler::handleExecQueryResponse(
|
1009 kumpf 1.24 AsyncOpNode* op,
1010 CIMExecQueryResponseMessage* msg) throw()
|
1011 mday 1.2 {
|
1012 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
1013 "BinaryMessageHandler::handleExecQueryResponse()");
1014 _handleResponse(op, msg);
1015 PEG_METHOD_EXIT();
|
1016 mday 1.2 }
1017
1018
1019 void BinaryMessageHandler::handleInvokeMethodResponse(
|
1020 kumpf 1.24 AsyncOpNode* op,
1021 CIMInvokeMethodResponseMessage* msg) throw()
|
1022 mday 1.2 {
|
1023 kumpf 1.24 PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
1024 "BinaryMessageHandler::handleInvokeMethodResponse()");
1025 _handleResponse(op, msg);
1026 PEG_METHOD_EXIT();
|
1027 mday 1.2 }
1028
1029 PEGASUS_NAMESPACE_END
|