13 s.soni 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 //
21 // 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: <Subodh Soni> (<ssubodh@in.ibm.com>)
33 //
34 s.soni 1.1 // Modified By:
35 //
36 //%/////////////////////////////////////////////////////////////////////////////
37
38 #ifndef Pegasus_ExceptionsTest_H
39 #define Pegasus_ExceptionsTest_H
40
41 #include <Pegasus/Common/Config.h>
42 #include <Pegasus/Provider/CIMInstanceProvider.h>
43
44 PEGASUS_NAMESPACE_BEGIN
45
46 class ExceptionsTest :
47 public CIMInstanceProvider
48 {
49 public:
50 ExceptionsTest(void);
51 virtual ~ExceptionsTest(void);
52
53 // CIMProvider interface
54 virtual void initialize(CIMOMHandle & cimom);
55 s.soni 1.1 virtual void terminate(void);
56
57 // CIMInstanceProvider interface
58 virtual void getInstance(
59 const OperationContext & context,
60 const CIMObjectPath & ref,
61 const Boolean includeQualifiers,
62 const Boolean includeClassOrigin,
63 const CIMPropertyList & propertyList,
64 InstanceResponseHandler & handler);
65
66 virtual void enumerateInstances(
67 const OperationContext & context,
68 const CIMObjectPath & ref,
69 const Boolean includeQualifiers,
70 const Boolean includeClassOrigin,
71 const CIMPropertyList & propertyList,
72 InstanceResponseHandler & handler);
73
74 virtual void enumerateInstanceNames(
75 const OperationContext & context,
76 s.soni 1.1 const CIMObjectPath & ref,
77 ObjectPathResponseHandler & handler);
78
79 virtual void modifyInstance(
80 const OperationContext & context,
81 const CIMObjectPath & ref,
82 const CIMInstance & obj,
83 const Boolean includeQualifiers,
84 const CIMPropertyList & propertyList,
85 ResponseHandler & handler);
86
87 virtual void createInstance(
88 const OperationContext & context,
89 const CIMObjectPath & ref,
90 const CIMInstance & obj,
91 ObjectPathResponseHandler & handler);
92
93 virtual void deleteInstance(
94 const OperationContext & context,
95 const CIMObjectPath & ref,
96 ResponseHandler & handler);
97 s.soni 1.1
98 protected:
99 Array<CIMObjectPath> _instanceNames;
100 Array<CIMObjectPath> _instanceNames_second;
101 Array<CIMObjectPath> _instanceNames_third;
102 Array<CIMInstance> _instances;
103 Array<CIMInstance> _instances_second;
104 Array<CIMInstance> _instances_third;
105 };
106
107 PEGASUS_NAMESPACE_END
108
109 #endif /* Pegasus_ExceptionsTest_H */
|