(file) Return to ProviderMessageHandler.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / ProviderManager2 / Default

Diff for /pegasus/src/Pegasus/ProviderManager2/Default/ProviderMessageHandler.h between version 1.1 and 1.6

version 1.1, 2006/08/29 17:48:56 version 1.6, 2008/12/01 17:50:58
Line 1 
Line 1 
 //%2006////////////////////////////////////////////////////////////////////////  //%LICENSE////////////////////////////////////////////////////////////////
 // //
 // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development  // Licensed to The Open Group (TOG) under one or more contributor license
 // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.  // agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
 // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;  // this work for additional information regarding copyright ownership.
 // IBM Corp.; EMC Corporation, The Open Group.  // Each contributor licenses this file to you under the OpenPegasus Open
 // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;  // Source License; you may not use this file except in compliance with the
 // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.  // License.
 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;  
 // EMC Corporation; VERITAS Software Corporation; The Open Group.  
 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;  
 // EMC Corporation; Symantec Corporation; The Open Group.  
 //  
 // Permission is hereby granted, free of charge, to any person obtaining a copy  
 // of this software and associated documentation files (the "Software"), to  
 // deal in the Software without restriction, including without limitation the  
 // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or  
 // sell copies of the Software, and to permit persons to whom the Software is  
 // furnished to do so, subject to the following conditions:  
 //  
 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN  
 // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED  
 // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT  
 // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR  
 // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT  
 // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN  
 // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION  
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  
 // //
 //==============================================================================  // Permission is hereby granted, free of charge, to any person obtaining a
   // copy of this software and associated documentation files (the "Software"),
   // to deal in the Software without restriction, including without limitation
   // the rights to use, copy, modify, merge, publish, distribute, sublicense,
   // and/or sell copies of the Software, and to permit persons to whom the
   // Software is furnished to do so, subject to the following conditions:
   //
   // The above copyright notice and this permission notice shall be included
   // in all copies or substantial portions of the Software.
   //
   // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
   // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
   // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
   // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
   // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
   // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
   // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
   //
   //////////////////////////////////////////////////////////////////////////
 // //
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
  
Line 47 
Line 45 
 { {
 public: public:
     ProviderMessageHandler(     ProviderMessageHandler(
           const String& moduleName,
         const String& name,         const String& name,
         CIMProvider* provider,         CIMProvider* provider,
         PEGASUS_INDICATION_CALLBACK_T indicationCallback,         PEGASUS_INDICATION_CALLBACK_T indicationCallback,
Line 56 
Line 55 
     virtual ~ProviderMessageHandler();     virtual ~ProviderMessageHandler();
  
     String getName() const;     String getName() const;
       CIMProvider* getProvider();
     void setProvider(CIMProvider* provider);     void setProvider(CIMProvider* provider);
     void initialize(CIMOMHandle& cimom);     void initialize(CIMOMHandle& cimom);
     void terminate();     void terminate();
Line 64 
Line 64 
     CIMResponseMessage* processMessage(CIMRequestMessage* request);     CIMResponseMessage* processMessage(CIMRequestMessage* request);
  
 private: private:
       OperationContext _createProviderOperationContext(
           const OperationContext& context);
   
     CIMResponseMessage* _handleGetInstanceRequest(     CIMResponseMessage* _handleGetInstanceRequest(
         CIMRequestMessage* message);         CIMRequestMessage* message);
     CIMResponseMessage* _handleEnumerateInstancesRequest(     CIMResponseMessage* _handleEnumerateInstancesRequest(
Line 121 
Line 124 
     void _disableIndications();     void _disableIndications();
  
     String _name;     String _name;
       String _fullyQualifiedProviderName;
     CIMProvider* _provider;     CIMProvider* _provider;
     PEGASUS_INDICATION_CALLBACK_T _indicationCallback;     PEGASUS_INDICATION_CALLBACK_T _indicationCallback;
     PEGASUS_RESPONSE_CHUNK_CALLBACK_T _responseChunkCallback;     PEGASUS_RESPONSE_CHUNK_CALLBACK_T _responseChunkCallback;
Line 133 
Line 137 
  
  
 /** /**
     Encapsulates the incrementing/decrementing of the _currentOperations      Encapsulates the calling of operationBegin() and operationEnd() for a
     for a ProviderMessageHandler so it won't be unloaded during operations.      ProviderMessageHandler to help ensure an accurate count of provider
       operations.
 */ */
 class ProviderOperationCounter  class PEGASUS_DEFPM_LINKAGE ProviderOperationCounter
 { {
 public: public:
     ProviderOperationCounter(ProviderMessageHandler* p)     ProviderOperationCounter(ProviderMessageHandler* p)
         : _provider(p)         : _provider(p)
     {     {
         PEGASUS_ASSERT(_provider != 0);         PEGASUS_ASSERT(_provider != 0);
         _provider->status._currentOperations++;          _provider->status.operationBegin();
     }     }
  
     ProviderOperationCounter(const ProviderOperationCounter& p)     ProviderOperationCounter(const ProviderOperationCounter& p)
         : _provider(p._provider)         : _provider(p._provider)
     {     {
         PEGASUS_ASSERT(_provider != 0);         PEGASUS_ASSERT(_provider != 0);
         _provider->status._currentOperations++;          _provider->status.operationBegin();
     }     }
  
     ~ProviderOperationCounter()     ~ProviderOperationCounter()
     {     {
         _provider->status._currentOperations--;          _provider->status.operationEnd();
     }     }
  
     ProviderMessageHandler& GetProvider()     ProviderMessageHandler& GetProvider()


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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2