(file) Return to CIMOMHandle.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Provider

Diff for /pegasus/src/Pegasus/Provider/CIMOMHandle.cpp between version 1.39 and 1.40

version 1.39, 2003/04/09 16:28:55 version 1.40, 2003/04/16 00:17:14
Line 54 
Line 54 
 PEGASUS_NAMESPACE_BEGIN PEGASUS_NAMESPACE_BEGIN
  
  
 const String TimeoutContainer::NAME = "TimeoutContainer";  
   
 TimeoutContainer::TimeoutContainer(const OperationContext::Container & container)  
 {  
    const TimeoutContainer * p = dynamic_cast<const TimeoutContainer *>(&container);  
    if(p == 0)  
    {  
       throw DynamicCastFailedException();  
    }  
    _value = p->_value;  
 }  
   
 TimeoutContainer::TimeoutContainer(Uint32 timeout)  
 {  
    _value = timeout;  
 }  
   
 String TimeoutContainer::getName(void) const  
 {  
    return (NAME);  
 }  
   
 OperationContext::Container * TimeoutContainer::clone(void) const  
 {  
    return (new TimeoutContainer(_value));  
 }  
   
 void TimeoutContainer::destroy(void)  
 {  
    delete this;  
 }  
   
 Uint32 TimeoutContainer::getTimeOut(void) const  
 {  
    return _value;  
 }  
   
   
  
 class CIMOMHandle; class CIMOMHandle;
 class cimom_handle_op_semaphore; class cimom_handle_op_semaphore;
Line 140 
Line 102 
       virtual void handleEnqueue(Message *);       virtual void handleEnqueue(Message *);
       virtual void handleEnqueue(void);       virtual void handleEnqueue(void);
  
       Message *do_request(Message *, Uint32 response_type, const OperationContext & context)        Message *do_request(Message *, Uint32 response_type, const OperationContext & context) ;
          throw();  
  
       static PEGASUS_THREAD_RETURN PEGASUS_THREAD_CDECL _dispatch(void *);       static PEGASUS_THREAD_RETURN PEGASUS_THREAD_CDECL _dispatch(void *);
       MessageQueue * q_exists(Uint32 qid) const       MessageQueue * q_exists(Uint32 qid) const
Line 480 
Line 441 
 Message *CIMOMHandle::_cimom_handle_rep::do_request(Message *request, Message *CIMOMHandle::_cimom_handle_rep::do_request(Message *request,
                                                     Uint32 response_type,                                                     Uint32 response_type,
                                                     const OperationContext & context)                                                     const OperationContext & context)
    throw()  
 { {
    PEG_METHOD_ENTER(TRC_CIMOM_HANDLE,    PEG_METHOD_ENTER(TRC_CIMOM_HANDLE,
                     "CIMOMHandle::_cimom_handle_rep::do_request(Message *, Uint32, Uint32)");                     "CIMOMHandle::_cimom_handle_rep::do_request(Message *, Uint32, Uint32)");
Line 489 
Line 449 
    {    {
       _recursion.try_lock(pegasus_thread_self());       _recursion.try_lock(pegasus_thread_self());
    }    }
    catch(AlreadyLocked & )     catch(IPCException &)
    {  
       PEG_TRACE_STRING(TRC_CIMOM_HANDLE, Tracer::LEVEL4,  
                        "AlreadyLocked Exception, throwing Deadlock");  
       throw Deadlock(pegasus_thread_self());  
    }  
    catch(Deadlock & )  
    {    {
       PEG_TRACE_STRING(TRC_CIMOM_HANDLE, Tracer::LEVEL4,       PEG_TRACE_STRING(TRC_CIMOM_HANDLE, Tracer::LEVEL4,
                        "Deadlock Exception");                         "IPC Exception, throwing CIMException");
       throw;        throw CIMException(CIM_ERR_ACCESS_DENIED, "Recursive Use of CIMOMHandle Attempted");
    }    }
   
    catch(...)    catch(...)
    {    {
       PEG_TRACE_STRING(TRC_CIMOM_HANDLE, Tracer::LEVEL4,       PEG_TRACE_STRING(TRC_CIMOM_HANDLE, Tracer::LEVEL4,


Legend:
Removed from v.1.39  
changed lines
  Added in v.1.40

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2