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

Diff for /pegasus/src/Pegasus/ProviderManager2/OperationResponseHandler.h between version 1.28.8.2 and 1.35

version 1.28.8.2, 2006/03/07 18:45:56 version 1.35, 2008/12/01 17:50:50
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  // Permission is hereby granted, free of charge, to any person obtaining a
 // of this software and associated documentation files (the "Software"), to  // copy of this software and associated documentation files (the "Software"),
 // deal in the Software without restriction, including without limitation the  // to deal in the Software without restriction, including without limitation
 // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or  // the rights to use, copy, modify, merge, publish, distribute, sublicense,
 // sell copies of the Software, and to permit persons to whom the Software is  // and/or sell copies of the Software, and to permit persons to whom the
 // furnished to do so, subject to the following conditions:  // Software is furnished to do so, subject to the following conditions:
 // //
 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN  // The above copyright notice and this permission notice shall be included
 // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED  // in all copies or substantial portions of the Software.
 // "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.  
 // //
 //==============================================================================  // 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.
 // //
 // Author: Chip Vincent (cvincent@us.ibm.com)  //////////////////////////////////////////////////////////////////////////
 //  
 // Modified By:  
 //      Carol Ann Krug Graves, Hewlett-Packard Company (carolann_graves@hp.com)  
 //      Dave Rosckes (rosckes@us.ibm.com)  
 //      Yi Zhou, Hewlett-Packard Company (yi_zhou@hp.com)  
 //      Adrian Schuur (schuur@de.ibm.com)  
 //      Seema Gupta (gseema@in.ibm.com) for PEP135  
 //      Brian G. Campbell, EMC (campbell_brian@emc.com) - PEP140/phase2  
 // //
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
  
Line 79 
Line 67 
         CIMResponseMessage* response,         CIMResponseMessage* response,
         PEGASUS_RESPONSE_CHUNK_CALLBACK_T responseChunkCallback);         PEGASUS_RESPONSE_CHUNK_CALLBACK_T responseChunkCallback);
  
     virtual ~OperationResponseHandler(void);      virtual ~OperationResponseHandler();
  
     CIMRequestMessage * getRequest(void) const;      CIMRequestMessage* getRequest() const;
  
     CIMResponseMessage * getResponse(void) const;      CIMResponseMessage* getResponse() const;
  
     virtual void setStatus(     virtual void setStatus(
         const Uint32 code,         const Uint32 code,
Line 94 
Line 82 
         const ContentLanguageList & langs,         const ContentLanguageList & langs,
         const String & message = String::EMPTY);         const String & message = String::EMPTY);
  
       virtual void setCIMException(const CIMException& cimException);
   
 protected: protected:
     // the default for all derived handlers. Some handlers may not apply     // the default for all derived handlers. Some handlers may not apply
     // async behavior because their callers cannot handle partial responses.     // async behavior because their callers cannot handle partial responses.
     virtual Boolean isAsync(void) const;      virtual Boolean isAsync() const;
  
     // send (deliver) asynchronously     // send (deliver) asynchronously
     virtual void send(Boolean isComplete);     virtual void send(Boolean isComplete);
  
     // transfer any objects from handler to response. this does not clear()     // transfer any objects from handler to response. this does not clear()
     virtual void transfer(void);      virtual void transfer();
  
     // validate whatever is necessary before the transfer     // validate whatever is necessary before the transfer
     virtual void validate(void);      virtual void validate();
  
     virtual String getClass(void) const;      virtual String getClass() const;
  
     Uint32 getResponseObjectTotal(void) const;      Uint32 getResponseObjectTotal() const;
  
     // there can be many objects per message (or none at all - i.e complete())     // there can be many objects per message (or none at all - i.e complete())
     Uint32 getResponseMessageTotal(void) const;      Uint32 getResponseMessageTotal() const;
  
     Uint32 getResponseObjectThreshold(void) const;      Uint32 getResponseObjectThreshold() const;
  
     CIMRequestMessage * _request;     CIMRequestMessage * _request;
     CIMResponseMessage * _response;     CIMResponseMessage * _response;
Line 128 
Line 118 
  
 }; };
  
 class PEGASUS_PPM_LINKAGE GetInstanceResponseHandler : public OperationResponseHandler, public SimpleInstanceResponseHandler  class PEGASUS_PPM_LINKAGE GetInstanceResponseHandler :
       public OperationResponseHandler, public SimpleInstanceResponseHandler
 { {
 public: public:
     GetInstanceResponseHandler(     GetInstanceResponseHandler(
Line 142 
Line 133 
         SimpleInstanceResponseHandler::deliver(cimInstanceArray);         SimpleInstanceResponseHandler::deliver(cimInstanceArray);
     }     }
  
     virtual void complete(void);      virtual void complete();
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
     virtual void transfer(void);      virtual void transfer();
  
     virtual void validate(void);      virtual void validate();
  
 private: private:
     ObjectNormalizer _normalizer;     ObjectNormalizer _normalizer;
  
 }; };
  
 class PEGASUS_PPM_LINKAGE EnumerateInstancesResponseHandler : public OperationResponseHandler, public SimpleInstanceResponseHandler  class PEGASUS_PPM_LINKAGE EnumerateInstancesResponseHandler :
       public OperationResponseHandler, public SimpleInstanceResponseHandler
 { {
 public: public:
     EnumerateInstancesResponseHandler(     EnumerateInstancesResponseHandler(
Line 171 
Line 163 
     }     }
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
     virtual void transfer(void);      virtual void transfer();
  
 private: private:
     ObjectNormalizer _normalizer;     ObjectNormalizer _normalizer;
  
 }; };
  
 class PEGASUS_PPM_LINKAGE EnumerateInstanceNamesResponseHandler : public OperationResponseHandler, public SimpleObjectPathResponseHandler  class PEGASUS_PPM_LINKAGE EnumerateInstanceNamesResponseHandler :
       public OperationResponseHandler, public SimpleObjectPathResponseHandler
 { {
 public: public:
     EnumerateInstanceNamesResponseHandler(     EnumerateInstanceNamesResponseHandler(
Line 195 
Line 188 
     }     }
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
     virtual void transfer(void);      virtual void transfer();
  
 private: private:
     ObjectNormalizer _normalizer;     ObjectNormalizer _normalizer;
  
 }; };
  
 class PEGASUS_PPM_LINKAGE CreateInstanceResponseHandler : public OperationResponseHandler, public SimpleObjectPathResponseHandler  class PEGASUS_PPM_LINKAGE CreateInstanceResponseHandler :
       public OperationResponseHandler, public SimpleObjectPathResponseHandler
 { {
 public: public:
     CreateInstanceResponseHandler(     CreateInstanceResponseHandler(
Line 218 
Line 212 
         SimpleObjectPathResponseHandler::deliver(cimObjectPathArray);         SimpleObjectPathResponseHandler::deliver(cimObjectPathArray);
     }     }
  
     virtual void complete(void);      virtual void complete();
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
     virtual void transfer(void);      virtual void transfer();
  
 }; };
  
 class PEGASUS_PPM_LINKAGE ModifyInstanceResponseHandler : public OperationResponseHandler, public SimpleResponseHandler  class PEGASUS_PPM_LINKAGE ModifyInstanceResponseHandler :
       public OperationResponseHandler, public SimpleResponseHandler
 { {
 public: public:
     ModifyInstanceResponseHandler(     ModifyInstanceResponseHandler(
Line 236 
Line 231 
         PEGASUS_RESPONSE_CHUNK_CALLBACK_T responseChunkCallback);         PEGASUS_RESPONSE_CHUNK_CALLBACK_T responseChunkCallback);
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
 }; };
  
 class PEGASUS_PPM_LINKAGE DeleteInstanceResponseHandler : public OperationResponseHandler, public SimpleResponseHandler  class PEGASUS_PPM_LINKAGE DeleteInstanceResponseHandler :
       public OperationResponseHandler, public SimpleResponseHandler
 { {
 public: public:
     DeleteInstanceResponseHandler(     DeleteInstanceResponseHandler(
Line 249 
Line 245 
         PEGASUS_RESPONSE_CHUNK_CALLBACK_T responseChunkCallback);         PEGASUS_RESPONSE_CHUNK_CALLBACK_T responseChunkCallback);
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
 }; };
  
 class PEGASUS_PPM_LINKAGE GetPropertyResponseHandler : public OperationResponseHandler, public SimpleValueResponseHandler  class PEGASUS_PPM_LINKAGE GetPropertyResponseHandler :
       public OperationResponseHandler, public SimpleValueResponseHandler
 { {
 public: public:
     GetPropertyResponseHandler(     GetPropertyResponseHandler(
Line 268 
Line 265 
     }     }
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
     virtual void transfer(void);      virtual void transfer();
  
     virtual void validate(void);      virtual void validate();
  
 }; };
  
 class PEGASUS_PPM_LINKAGE SetPropertyResponseHandler : public OperationResponseHandler, public SimpleResponseHandler  class PEGASUS_PPM_LINKAGE SetPropertyResponseHandler :
       public OperationResponseHandler, public SimpleResponseHandler
 { {
 public: public:
     SetPropertyResponseHandler(     SetPropertyResponseHandler(
Line 285 
Line 283 
         PEGASUS_RESPONSE_CHUNK_CALLBACK_T responseChunkCallback);         PEGASUS_RESPONSE_CHUNK_CALLBACK_T responseChunkCallback);
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
 }; };
  
 class PEGASUS_PPM_LINKAGE ExecQueryResponseHandler : public OperationResponseHandler, public SimpleInstance2ObjectResponseHandler  class PEGASUS_PPM_LINKAGE ExecQueryResponseHandler :
       public OperationResponseHandler,
       public SimpleInstance2ObjectResponseHandler
 { {
 public: public:
     ExecQueryResponseHandler(     ExecQueryResponseHandler(
Line 304 
Line 304 
     }     }
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
     virtual void transfer(void);      virtual void transfer();
  
     virtual Boolean isAsync(void) const;      virtual Boolean isAsync() const;
  
 }; };
  
 class PEGASUS_PPM_LINKAGE AssociatorsResponseHandler : public OperationResponseHandler, public SimpleObjectResponseHandler  class PEGASUS_PPM_LINKAGE AssociatorsResponseHandler :
       public OperationResponseHandler, public SimpleObjectResponseHandler
 { {
 public: public:
     AssociatorsResponseHandler(     AssociatorsResponseHandler(
Line 327 
Line 328 
     }     }
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
     virtual void transfer(void);      virtual void transfer();
  
 }; };
  
 class PEGASUS_PPM_LINKAGE AssociatorNamesResponseHandler : public OperationResponseHandler, public SimpleObjectPathResponseHandler  class PEGASUS_PPM_LINKAGE AssociatorNamesResponseHandler :
       public OperationResponseHandler, public SimpleObjectPathResponseHandler
 { {
 public: public:
     AssociatorNamesResponseHandler(     AssociatorNamesResponseHandler(
Line 348 
Line 350 
     }     }
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
     virtual void transfer(void);      virtual void transfer();
  
 }; };
  
 class PEGASUS_PPM_LINKAGE ReferencesResponseHandler : public OperationResponseHandler, public SimpleObjectResponseHandler  class PEGASUS_PPM_LINKAGE ReferencesResponseHandler :
       public OperationResponseHandler, public SimpleObjectResponseHandler
 { {
 public: public:
     ReferencesResponseHandler(     ReferencesResponseHandler(
Line 369 
Line 372 
     }     }
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
     virtual void transfer(void);      virtual void transfer();
  
 }; };
  
 class PEGASUS_PPM_LINKAGE ReferenceNamesResponseHandler : public OperationResponseHandler, public SimpleObjectPathResponseHandler  class PEGASUS_PPM_LINKAGE ReferenceNamesResponseHandler :
       public OperationResponseHandler, public SimpleObjectPathResponseHandler
 { {
 public: public:
     ReferenceNamesResponseHandler(     ReferenceNamesResponseHandler(
Line 390 
Line 394 
     }     }
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
     virtual void transfer(void);      virtual void transfer();
  
 }; };
  
 class PEGASUS_PPM_LINKAGE InvokeMethodResponseHandler : public OperationResponseHandler, public SimpleMethodResultResponseHandler  class PEGASUS_PPM_LINKAGE InvokeMethodResponseHandler :
       public OperationResponseHandler, public SimpleMethodResultResponseHandler
 { {
 public: public:
     InvokeMethodResponseHandler(     InvokeMethodResponseHandler(
Line 415 
Line 420 
     virtual void deliver(const CIMValue & cimValue);     virtual void deliver(const CIMValue & cimValue);
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
     virtual void transfer(void);      virtual void transfer();
  
 }; };
  
 typedef void (*PEGASUS_INDICATION_CALLBACK_T)( typedef void (*PEGASUS_INDICATION_CALLBACK_T)(
     CIMProcessIndicationRequestMessage*);     CIMProcessIndicationRequestMessage*);
  
 class PEGASUS_PPM_LINKAGE EnableIndicationsResponseHandler : public OperationResponseHandler, public SimpleIndicationResponseHandler  class PEGASUS_PPM_LINKAGE EnableIndicationsResponseHandler :
       public OperationResponseHandler, public SimpleIndicationResponseHandler
 { {
 public: public:
     EnableIndicationsResponseHandler(     EnableIndicationsResponseHandler(
         CIMRequestMessage* request,         CIMRequestMessage* request,
         CIMResponseMessage* response,         CIMResponseMessage* response,
         CIMInstance& provider,          const CIMInstance& provider,
         PEGASUS_INDICATION_CALLBACK_T indicationCallback,         PEGASUS_INDICATION_CALLBACK_T indicationCallback,
         PEGASUS_RESPONSE_CHUNK_CALLBACK_T responseChunkCallback);         PEGASUS_RESPONSE_CHUNK_CALLBACK_T responseChunkCallback);
  
     virtual void deliver(const CIMIndication & cimIndication);     virtual void deliver(const CIMIndication & cimIndication);
  
     virtual void deliver(const OperationContext & context, const CIMIndication & cimIndication);      virtual void deliver(
           const OperationContext& context,
           const CIMIndication& cimIndication);
  
     virtual void deliver(const Array<CIMIndication> & cimIndications);     virtual void deliver(const Array<CIMIndication> & cimIndications);
  
     virtual void deliver(const OperationContext & context, const Array<CIMIndication> & cimIndications);      virtual void deliver(
           const OperationContext& context,
           const Array<CIMIndication>& cimIndications);
  
 protected: protected:
     virtual String getClass(void) const;      virtual String getClass() const;
  
     virtual Boolean isAsync(void) const;      virtual Boolean isAsync() const;
  
 private: private:
     PEGASUS_INDICATION_CALLBACK_T _indicationCallback;     PEGASUS_INDICATION_CALLBACK_T _indicationCallback;


Legend:
Removed from v.1.28.8.2  
changed lines
  Added in v.1.35

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2