1 chip 1.1 //%/////////////////////////////////////////////////////////////////////////////
2 //
|
3 kumpf 1.7 // 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 kumpf 1.7 //
|
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_CIMAssociationProvider_h
31 #define Pegasus_CIMAssociationProvider_h
32
33 #include <Pegasus/Common/Config.h>
34 chip 1.1 #include <Pegasus/Provider/CIMBaseProvider.h>
35
36 #include <Pegasus/Common/Array.h>
37 #include <Pegasus/Common/String.h>
|
38 kumpf 1.11 #include <Pegasus/Common/CIMName.h>
|
39 kumpf 1.5 #include <Pegasus/Common/CIMPropertyList.h>
|
40 kumpf 1.6 #include <Pegasus/Common/CIMObjectPath.h>
|
41 chip 1.1 #include <Pegasus/Common/CIMInstance.h>
|
42 kumpf 1.10 #include <Pegasus/Provider/Linkage.h>
|
43 chip 1.1
44 PEGASUS_NAMESPACE_BEGIN
45
46 /**
47 This class defines the set of methods implemented by an association provider. A providers that derives
48 from this class must implement all methods. The minimal method implementation simply throw the
49 NotSupported exception.
50 */
51 class PEGASUS_PROVIDER_LINKAGE CIMAssociationProvider : public virtual CIMBaseProvider
52 {
53 public:
|
54 chip 1.4 CIMAssociationProvider(void);
55 virtual ~CIMAssociationProvider(void);
|
56 chip 1.1
|
57 chip 1.4 /**
58
59 @param contex contains security and locale information relevant for the lifetime
60 of this operation.
61
62 @param objectName
63 @param associationClass
64 @param resultClass
65 @param role
66 @param resultRole
67 @param flags
68 @param propertyList
69
70 @param handler asynchronusly processes the results of this operation.
71
72 @exception NotSupported
73 @exception InvalidParameter
74 */
75 virtual void associators(
76 const OperationContext & context,
|
77 kumpf 1.6 const CIMObjectPath & objectName,
|
78 kumpf 1.11 const CIMName & associationClass,
79 const CIMName & resultClass,
|
80 chip 1.4 const String & role,
81 const String & resultRole,
82 const Uint32 flags,
|
83 kumpf 1.5 const CIMPropertyList & propertyList,
|
84 chip 1.4 ResponseHandler<CIMObject> & handler) = 0;
85
86 /**
87 @param contex contains security and locale information relevant for the lifetime
88 of this operation.
89
90 @param objectName
91 @param associationClass
92 @param resultClass
93 @param role
94 @param resultRole
95
96 @param handler asynchronusly processes the results of this operation.
97
98 @exception NotSupported
99 @exception InvalidParameter
100 */
101 virtual void associatorNames(
102 const OperationContext & context,
|
103 kumpf 1.6 const CIMObjectPath & objectName,
|
104 kumpf 1.11 const CIMName & associationClass,
105 const CIMName & resultClass,
|
106 chip 1.4 const String & role,
107 const String & resultRole,
|
108 kumpf 1.6 ResponseHandler<CIMObjectPath> & handler) = 0;
|
109 chip 1.4
110 /**
111 @param contex contains security and locale information relevant for the lifetime
112 of this operation.
113
114 @param objectName
115 @param resultClass
116 @param role
117 @param resultRole
118 @param flags
119 @param propertyList
120
121 @param handler asynchronusly processes the results of this operation.
122
123 @exception NotSupported
124 @exception InvalidParameter
125 */
126 virtual void references(
127 const OperationContext & context,
|
128 kumpf 1.6 const CIMObjectPath & objectName,
|
129 kumpf 1.11 const CIMName & resultClass,
|
130 chip 1.4 const String & role,
131 const Uint32 flags,
|
132 kumpf 1.5 const CIMPropertyList & propertyList,
|
133 chip 1.4 ResponseHandler<CIMObject> & handler) = 0;
134
135 /**
136 @param contex contains security and locale information relevant for the lifetime
137 of this operation.
138
139 @param objectName
140 @param resultClass
141 @param role
142
143 @param handler asynchronusly processes the results of this operation.
144
145 @exception NotSupported
146 @exception InvalidParameter
147 */
148 virtual void referenceNames(
149 const OperationContext & context,
|
150 kumpf 1.6 const CIMObjectPath & objectName,
|
151 kumpf 1.11 const CIMName & resultClass,
|
152 chip 1.4 const String & role,
|
153 kumpf 1.6 ResponseHandler<CIMObjectPath> & handler) = 0;
|
154 chip 1.1 };
155
156 PEGASUS_NAMESPACE_END
157
158 #endif
|