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

  1 a.dunfey 1.9.8.1 //%2006////////////////////////////////////////////////////////////////////////
  2 schuur   1.1     //
  3 karl     1.5     // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
  4                  // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
  5                  // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
  6 schuur   1.1     // IBM Corp.; EMC Corporation, The Open Group.
  7 karl     1.5     // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
  8                  // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
  9 karl     1.7     // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 10                  // EMC Corporation; VERITAS Software Corporation; The Open Group.
 11 a.dunfey 1.9.8.1 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 12                  // EMC Corporation; Symantec Corporation; The Open Group.
 13 schuur   1.1     //
 14                  // Permission is hereby granted, free of charge, to any person obtaining a copy
 15                  // of this software and associated documentation files (the "Software"), to
 16                  // deal in the Software without restriction, including without limitation the
 17                  // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 18                  // sell copies of the Software, and to permit persons to whom the Software is
 19                  // furnished to do so, subject to the following conditions:
 20 a.dunfey 1.9.8.1 // 
 21 schuur   1.1     // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 22                  // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 23                  // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 24                  // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 25                  // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 26                  // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 27                  // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 28                  // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 29                  //
 30                  //==============================================================================
 31                  //
 32                  // Author: Chip Vincent (cvincent@us.ibm.com)
 33                  //
 34 chip     1.8     // Modified By:
 35                  //      Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
 36                  //      Dave Rosckes (rosckes@us.ibm.com)
 37                  //      Brian G. Campbell, EMC (campbell_brian@emc.com) - PEP140/phase2
 38 schuur   1.1     //
 39                  //%/////////////////////////////////////////////////////////////////////////////
 40                  
 41                  #ifndef Pegasus_SimpleResponseHandler_h
 42                  #define Pegasus_SimpleResponseHandler_h
 43                  
 44                  #include <Pegasus/Common/Config.h>
 45                  #include <Pegasus/Common/ResponseHandler.h>
 46                  
 47                  #include <Pegasus/ProviderManager2/Linkage.h>
 48                  
 49                  PEGASUS_NAMESPACE_BEGIN
 50                  
 51 kumpf    1.3     //
 52                  // ValueResponseHandler (used internally to implement property operations)
 53                  //
 54                  class PEGASUS_PPM_LINKAGE ValueResponseHandler : virtual public ResponseHandler
 55                  {
 56                  public:
 57                      virtual void deliver(const CIMValue & value) = 0;
 58                  
 59                      virtual void deliver(const Array<CIMValue> & values) = 0;
 60                  };
 61                  
 62                  
 63                  //
 64                  // SimpleResponseHandler
 65                  //
 66 schuur   1.1     class PEGASUS_PPM_LINKAGE SimpleResponseHandler : virtual public ResponseHandler
 67                  {
 68                  public:
 69 chip     1.9         SimpleResponseHandler(void);
 70                      virtual ~SimpleResponseHandler(void);
 71 schuur   1.1     
 72 chip     1.9         virtual void processing(void);
 73                  
 74                      virtual void complete(void);
 75 schuur   1.1     
 76 chip     1.8         // return the number of objects in this handler
 77 chip     1.9         virtual Uint32 size(void) const;
 78 brian.campbell 1.6     
 79 chip           1.8         // clear any objects in this handler
 80 chip           1.9         virtual void clear(void);
 81 brian.campbell 1.6     
 82 a.dunfey       1.9.8.1     ContentLanguageList getLanguages(void);
 83 schuur         1.1     
 84 brian.campbell 1.6     protected:
 85 chip           1.8         virtual void send(Boolean isComplete);
 86 schuur         1.1     
 87                        };
 88                        
 89                        class PEGASUS_PPM_LINKAGE SimpleInstanceResponseHandler : public SimpleResponseHandler, public InstanceResponseHandler
 90                        {
 91                        public:
 92 chip           1.9         SimpleInstanceResponseHandler(void);
 93                        
 94                            virtual void processing(void);
 95                        
 96                            virtual void complete(void);
 97                        
 98                            virtual Uint32 size(void) const;
 99                        
100                            virtual void clear(void);
101                        
102                            virtual void deliver(const CIMInstance & instance);
103                        
104                            virtual void deliver(const Array<CIMInstance> & instances);
105                        
106                            const Array<CIMInstance> getObjects(void) const;
107 schuur         1.1     
108                        private:
109                            Array<CIMInstance> _objects;
110                        
111                        };
112                        
113                        class PEGASUS_PPM_LINKAGE SimpleObjectPathResponseHandler : public SimpleResponseHandler, public ObjectPathResponseHandler
114                        {
115                        public:
116 chip           1.9         SimpleObjectPathResponseHandler(void);
117                        
118                            virtual void processing(void);
119                        
120                            virtual void complete(void);
121                        
122                            virtual Uint32 size(void) const;
123                        
124                            virtual void clear(void);
125                        
126                            virtual void deliver(const CIMObjectPath & objectPath);
127                        
128                            virtual void deliver(const Array<CIMObjectPath> & objectPaths);
129                        
130                            const Array<CIMObjectPath> getObjects(void) const;
131 schuur         1.1     
132                        private:
133                            Array<CIMObjectPath> _objects;
134                        
135                        };
136                        
137                        class PEGASUS_PPM_LINKAGE SimpleMethodResultResponseHandler : public SimpleResponseHandler, public MethodResultResponseHandler
138                        {
139                        public:
140 chip           1.9         SimpleMethodResultResponseHandler(void);
141                        
142                            virtual void processing(void);
143                        
144                            virtual void complete(void);
145 chip           1.8     
146                            // NOTE: this is the total size (count) of ALL parameters!
147 chip           1.9         virtual Uint32 size(void) const;
148                        
149                            virtual void clear(void);
150                        
151                            virtual void deliverParamValue(const CIMParamValue & outParamValue);
152                        
153                            virtual void deliverParamValue(const Array<CIMParamValue> & outParamValues);
154                        
155                            virtual void deliver(const CIMValue & returnValue);
156                        
157                            const Array<CIMParamValue> getParamValues(void) const;
158                        
159                            const CIMValue getReturnValue(void) const;
160 schuur         1.1     
161                        private:
162                            Array<CIMParamValue> _objects;
163                        
164                            CIMValue _returnValue;
165                        
166                        };
167                        
168                        class PEGASUS_PPM_LINKAGE SimpleIndicationResponseHandler : public SimpleResponseHandler, public IndicationResponseHandler
169                        {
170                        public:
171 chip           1.9         SimpleIndicationResponseHandler(void);
172                        
173                            virtual void processing(void);
174                        
175                            virtual void complete(void);
176                        
177                            virtual Uint32 size(void) const;
178                        
179                            virtual void clear(void);
180                        
181                            virtual void deliver(const CIMIndication & indication);
182                        
183                            virtual void deliver(const Array<CIMIndication> & indications);
184 schuur         1.1     
185                            virtual void deliver(
186                                const OperationContext & context,
187 chip           1.9             const CIMIndication & indication);
188 schuur         1.1     
189                            virtual void deliver(
190                                const OperationContext & context,
191 chip           1.9             const Array<CIMIndication> & indications);
192                        
193                            const Array<CIMIndication> getObjects(void) const;
194 schuur         1.1     
195 chip           1.8         // ATTN: why is this variable public?
196 schuur         1.1         CIMInstance _provider;
197                        
198                        private:
199                            Array<CIMIndication> _objects;
200                        
201                        };
202                        
203                        class PEGASUS_PPM_LINKAGE SimpleObjectResponseHandler : public SimpleResponseHandler, public ObjectResponseHandler
204                        {
205                        public:
206 chip           1.9         SimpleObjectResponseHandler(void);
207                        
208                            virtual void processing(void);
209                        
210                            virtual void complete(void);
211                        
212                            virtual Uint32 size(void) const;
213                        
214                            virtual void clear(void);
215                        
216                            virtual void deliver(const CIMObject & object);
217                        
218                            virtual void deliver(const Array<CIMObject> & objects);
219                        
220                            const Array<CIMObject> getObjects(void) const;
221 schuur         1.1     
222                        private:
223                            Array<CIMObject> _objects;
224                        
225                        };
226                        
227                        class PEGASUS_PPM_LINKAGE SimpleInstance2ObjectResponseHandler : public SimpleResponseHandler, public InstanceResponseHandler
228                        {
229                        public:
230 chip           1.9         SimpleInstance2ObjectResponseHandler(void);
231                        
232                            virtual void processing(void);
233                        
234                            virtual void complete(void);
235                        
236                            virtual Uint32 size(void) const;
237                        
238                            virtual void clear(void);
239                        
240                            virtual void deliver(const CIMInstance & object);
241                        
242                            virtual void deliver(const Array<CIMInstance> & objects);
243                        
244                            const Array<CIMObject> getObjects(void) const;
245 schuur         1.1     
246                        private:
247                            Array<CIMObject> _objects;
248                        
249                        };
250                        
251                        class PEGASUS_PPM_LINKAGE SimpleValueResponseHandler : public SimpleResponseHandler, public ValueResponseHandler
252                        {
253                        public:
254 chip           1.9         SimpleValueResponseHandler(void);
255                        
256                            virtual void processing(void);
257                        
258                            virtual void complete(void);
259                        
260                            virtual Uint32 size(void) const;
261                        
262                            virtual void clear(void);
263                        
264                            virtual void deliver(const CIMValue & value);
265                        
266                            virtual void deliver(const Array<CIMValue> & values);
267                        
268                            const Array<CIMValue> getObjects(void) const;
269 schuur         1.1     
270                        private:
271                            Array<CIMValue> _objects;
272                        
273                        };
274                        
275                        PEGASUS_NAMESPACE_END
276                        
277                        #endif

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2