void CIMOperationResponseEncoder::enqueue(Message* message) { try { handleEnqueue(message); } catch(PEGASUS_STD(bad_alloc)&) { MessageLoaderParms parms( "Server.CIMOperationResponseEncoder.OUT_OF_MEMORY", "A System error has occurred. Please retry the CIM Operation " "at a later time."); Logger::put_l( Logger::ERROR_LOG, System::CIMSERVER, Logger::SEVERE, parms); CIMResponseMessage* response = dynamic_cast<CIMResponseMessage*>(message); Uint32 queueId = response->queueIds.top(); MessageQueue* queue = MessageQueue::lookup(queueId); HTTPConnection* httpQueue = dynamic_cast<HTTPConnection*>(queue); PEGASUS_ASSERT(httpQueue); // Handle internal error on this connection. httpQueue->handleInternalServerError( response->getIndex(), response->isComplete()); delete message; } }