(file) Return to MessageQueueService.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / _cimom / Attic

Diff for /pegasus/src/Pegasus/_cimom/Attic/MessageQueueService.cpp between version 1.1 and 1.2

version 1.1, 2002/01/02 22:05:46 version 1.2, 2002/01/03 01:43:59
Line 39 
Line 39 
  
 } }
  
   Message *MessageQueueService::openEnvelope(const Message *msg)
   {
      Uint32 mask = msg->getMask();
      if( mask & message_mask::ha_async )
      {
         AsyncOpNode *op;
   
         if( mask & message_mask::ha_request)
         {
            op = (static_cast<AsyncRequest *>(const_cast<Message *>(msg)))->op;
            return const_cast<Message *>(op->get_request());
         }
         else if (mask & message_mask::ha_reply)
         {
            op = (static_cast<AsyncReply *>(const_cast<Message *>(msg)))->op;
            return const_cast<Message *>(op->get_response()) ;
         }
      }
      return 0;
   }
   
  
 Boolean MessageQueueService::register_service(String name, Uint32 capabilities, Uint32 mask) Boolean MessageQueueService::register_service(String name, Uint32 capabilities, Uint32 mask)
 { {
Line 84 
Line 105 
 Boolean MessageQueueService::SendMessage(Message *msg, Uint32 dst_queue) Boolean MessageQueueService::SendMessage(Message *msg, Uint32 dst_queue)
 { {
  
      AsyncOpNode *op = _get_op();
      if(op == 0 )
         throw NullPointer();
   
      op->put_request(msg);
   
    ServiceAsyncOpStart *envelope =    ServiceAsyncOpStart *envelope =
       new ServiceAsyncOpStart(Message::getNextKey(),       new ServiceAsyncOpStart(Message::getNextKey(),
                               QueueIdStack(_queueId, _queueId),                               QueueIdStack(_queueId, _queueId),
                               0,                                op,
                               dst_queue,                               dst_queue,
                               get_next_xid());                               get_next_xid());
  
    Boolean accepted = _meta_dispatcher->accept_async(static_cast<Message *>(envelope));    Boolean accepted = _meta_dispatcher->accept_async(static_cast<Message *>(envelope));
    if (accepted == false)    if (accepted == false)
      {
       delete msg;       delete msg;
         _cache_op(op);
      }
    return accepted;    return accepted;
 } }
  


Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2