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

 1 chip  1.1.2.1 //%/////-*-c++-*-//////////////////////////////////////////////////////////////
 2               //
 3               // Copyright (c) 2000, 2001 The Open group, BMC Software, Tivoli Systems, IBM
 4               //
 5               // Permission is hereby granted, free of charge, to any person obtaining a copy
 6               // of this software and associated documentation files (the "Software"), to
 7               // deal in the Software without restriction, including without limitation the
 8               // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 9               // sell copies of the Software, and to permit persons to whom the Software is
10               // furnished to do so, subject to the following conditions:
11               //
12               // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
13               // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
14               // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
15               // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
16               // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
17               // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
18               // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
19               // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20               //
21               //==============================================================================
22 chip  1.1.2.1 //
23               // Author: Chip Vincent (cvincent@us.ibm.com)
24               //
25               // Modified By:
26               //
27               //%/////////////////////////////////////////////////////////////////////////////
28               
29               #ifndef Pegasus_ResponseHandler_h
30               #define Pegasus_ResponseHandler_h
31               
32               #include <Pegasus/Common/Config.h>
33 chip  1.1.2.3 #include <Pegasus/Common/Array.h>
34 mday  1.1.2.4 #include <Pegasus/Common/OperationContext.h>
35 chip  1.1.2.1 
36               PEGASUS_NAMESPACE_BEGIN
37               
38               template<class object_type>
39 mday  1.1.2.6 class PEGASUS_COMMON_LINKAGE ResponseHandler
40 chip  1.1.2.1 {
41               public:
42               //    enum ProcessingClass { POLL, SIGNAL };
43               //    enum FilteringClass { INDISCRETE, DISCRETIONARY };
44               
45 chip  1.1.2.2       /** ATTN:
46                     */
47 chip  1.1.2.1       ResponseHandler(void) {};
48 chip  1.1.2.2 
49                     /** ATTN:
50                     */
51 chip  1.1.2.1       virtual ~ResponseHandler(void) {};
52               
53 chip  1.1.2.2       /** ATTN:
54                     */
55 chip  1.1.2.1       virtual void deliver(const object_type & object) = 0;
56 chip  1.1.2.2 
57                     /** ATTN:
58                     */
59 chip  1.1.2.1       virtual void deliver(const Array<object_type> & objects) = 0;
60 chip  1.1.2.2 
61                     /** ATTN:
62                     */
63 chip  1.1.2.1       virtual void reserve(const Uint32 size) = 0;
64 chip  1.1.2.2 
65                     /** ATTN:
66                     */
67 chip  1.1.2.1       virtual void processing(void) = 0;
68 mday  1.1.2.4       
69                     virtual void processing(OperationContext *context) = 0;
70                     
71 chip  1.1.2.2       /** ATTN:
72                     */
73 chip  1.1.2.1       virtual void complete(void) = 0;
74 mday  1.1.2.4       
75                     virtual void complete(OperationContext *context) = 0;
76 chip  1.1.2.1 };
77               
78               PEGASUS_NAMESPACE_END
79               
80               #endif
81 chip  1.1.2.2 	

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2