1 kumpf 1.2 //%/////////////////////////////////////////////////////////////////////////////
|
2 chip 1.1 //
|
3 kumpf 1.2 // Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM,
4 // The Open Group, Tivoli Systems
|
5 chip 1.1 //
6 // Permission is hereby granted, free of charge, to any person obtaining a copy
7 // of this software and associated documentation files (the "Software"), to
8 // deal in the Software without restriction, including without limitation the
9 // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
10 // sell copies of the Software, and to permit persons to whom the Software is
11 // furnished to do so, subject to the following conditions:
|
12 chip 1.3 //
|
13 chip 1.1 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
14 // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
15 // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
16 // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
17 // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
18 // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
19 // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21 //
22 //==============================================================================
23 //
24 // Author: Chip Vincent (cvincent@us.ibm.com)
25 //
26 // Modified By:
27 //
28 //%/////////////////////////////////////////////////////////////////////////////
29
30 #ifndef Pegasus_ResponseHandlerRep_h
31 #define Pegasus_ResponseHandlerRep_h
32
33 #include <Pegasus/Common/Config.h>
34 chip 1.1 #include <Pegasus/Common/Sharable.h>
|
35 chip 1.5
|
36 chip 1.6 #include <Pegasus/Common/CIMObject.h>
|
37 chip 1.5 #include <Pegasus/Common/CIMClass.h>
38 #include <Pegasus/Common/CIMInstance.h>
39 #include <Pegasus/Common/CIMIndication.h>
40 #include <Pegasus/Common/CIMValue.h>
41 #include <Pegasus/Common/CIMObjectPath.h>
|
42 kumpf 1.12 #include <Pegasus/Provider/Linkage.h>
|
43 chip 1.1
44 PEGASUS_NAMESPACE_BEGIN
45
|
46 chip 1.11 // this class specified the default behavior for a response handler of the
47 // supported types. Subclasses of ResponseHandler may insert subclasses of
48 // this class to customize ResponseHandler behavior.
|
49 chip 1.1 template<class T>
|
50 kumpf 1.9 class PEGASUS_PROVIDER_LINKAGE ResponseHandlerRep : public Sharable
|
51 chip 1.1 {
52 public:
|
53 kumpf 1.9 ResponseHandlerRep(void)
54 {
55 }
|
56 chip 1.10
|
57 kumpf 1.9 virtual ~ResponseHandlerRep(void)
58 {
59 }
|
60 chip 1.1
|
61 chip 1.10 virtual void processing(void)
62 {
|
63 chip 1.11 // do nothing
|
64 chip 1.10 }
|
65 chip 1.1
|
66 chip 1.10 virtual void complete(void)
67 {
|
68 chip 1.11 // do nothing
|
69 chip 1.10 }
|
70 chip 1.6
71 virtual void deliver(const CIMObject & object)
72 {
|
73 chip 1.11 // do nothing
|
74 chip 1.6 }
75
76 virtual void deliver(const Array<CIMObject> & objects)
77 {
|
78 chip 1.11 // call deliver for each object in the array
|
79 chip 1.10 for(Uint32 i = 0, n = objects.size(); i < n; i++)
80 {
81 deliver(objects[i]);
82 }
|
83 chip 1.6 }
|
84 chip 1.4
|
85 chip 1.5 virtual void deliver(const CIMClass & object)
86 {
|
87 chip 1.11 // do nothing
|
88 chip 1.5 }
89
90 virtual void deliver(const Array<CIMClass> & objects)
91 {
|
92 chip 1.11 // call deliver for each object in the array
|
93 chip 1.10 for(Uint32 i = 0, n = objects.size(); i < n; i++)
94 {
95 deliver(objects[i]);
96 }
|
97 chip 1.5 }
98
99 virtual void deliver(const CIMInstance & object)
100 {
|
101 chip 1.11 // do nothing
|
102 chip 1.5 }
103
104 virtual void deliver(const Array<CIMInstance> & objects)
105 {
|
106 chip 1.11 // call deliver for each object in the array
|
107 chip 1.10 for(Uint32 i = 0, n = objects.size(); i < n; i++)
108 {
109 deliver(objects[i]);
110 }
|
111 chip 1.5 }
112
113 virtual void deliver(const CIMIndication & object)
114 {
|
115 chip 1.11 // do nothing
|
116 chip 1.5 }
117
118 virtual void deliver(const Array<CIMIndication> & objects)
119 {
|
120 chip 1.11 // call deliver for each object in the array
|
121 chip 1.10 for(Uint32 i = 0, n = objects.size(); i < n; i++)
122 {
123 deliver(objects[i]);
124 }
|
125 chip 1.5 }
126
127 virtual void deliver(const CIMValue & object)
128 {
|
129 chip 1.11 // do nothing
|
130 chip 1.5 }
131
132 virtual void deliver(const Array<CIMValue> & objects)
133 {
|
134 chip 1.11 // call deliver for each object in the array
|
135 chip 1.10 for(Uint32 i = 0, n = objects.size(); i < n; i++)
136 {
137 deliver(objects[i]);
138 }
|
139 chip 1.5 }
140
141 virtual void deliver(const CIMObjectPath & object)
142 {
|
143 chip 1.11 // do nothing
|
144 chip 1.5 }
145
146 virtual void deliver(const Array<CIMObjectPath> & objects)
147 {
|
148 chip 1.11 // call deliver for each object in the array
|
149 chip 1.10 for(Uint32 i = 0, n = objects.size(); i < n; i++)
150 {
151 deliver(objects[i]);
152 }
|
153 chip 1.5 }
|
154 chip 1.1
155 };
156
157 PEGASUS_NAMESPACE_END
158
159 #endif
|