/usr/include/cmpi/CmpiBroker.h is in libcmpicppimpl0-dev 1.0.5-0ubuntu2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 | /*
*
* $Id: CmpiBroker.h,v 1.3 2008/07/09 19:36:59 tyreld Exp $
*
* (C) Copyright IBM Corp. 2003, 2005, 2008
*
* THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE
* ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE
* CONSTITUTES RECIPIENTS ACCEPTANCE OF THE AGREEMENT.
*
* You can obtain a current copy of the Eclipse Public License from
* http://www.opensource.org/licenses/eclipse-1.0.txt
*
* Author: Adrian Schuur <schuur@de.ibm.com>
* Contributors: Heidi Neumann, heidineu@de.ibm.com
* Angel Nunez Mencias, anunez@de.ibm.com
* Viktor Mihajlovski, mihajlov@de.ibm.com
*
* Description: CMPI Mgmt Broker Definitions
*
*/
#ifndef _CmpiBroker_h_
#define _CmpiBroker_h_
#include "cmpidt.h"
#include "cmpift.h"
class CmpiInstance;
class CmpiObject;
class CmpiEnumeration;
class CmpiArgs;
#include "Linkage.h"
#include "CmpiObject.h"
#include "CmpiString.h"
#include "CmpiInstance.h"
#include "CmpiContext.h"
#include "CmpiObjectPath.h"
#include "CmpiBaseMI.h"
#include "CmpiEnumeration.h"
/** This class encapsulates services provided by the CIM Object Manager
*/
class CMPI_PROVIDER_LINKAGE CmpiBroker : public CmpiObject {
public:
/** constructor to encapsulate CMPIBroker.
*/
CmpiBroker(CMPIBroker* b);
/** getEnc - Gets the encapsulated CMPIBroker.
*/
CMPIBroker *getEnc() const;
/** This function prepares the CMPI run time system to accept
a thread that will be using CMPI services. The returned
CMPIContext object must be used by the subsequent attachThread()
and detachThread() invocations.
@param ctx Old Context object
@return New Context object to be used by thread to be attached.
*/
CmpiContext prepareAttachThread
(const CmpiContext& ctx);
/** This function informs the CMPI run time system that the current
thread with Context will begin using CMPI services.
@param ctx Context object
*/
void attachThread
(const CmpiContext& ctx);
/** This function informs the CMPI run time system that the current thread
will not be using CMPI services anymore. The Context object will be
freed during this operation.
@param ctx Context object
*/
void detachThread
(const CmpiContext& ctx);
// class 0 services
/** This function requests delivery of an Indication. The CIMOM will
locate pertinent subscribers and notify them about the event.
@param ctx Context object
@param ns Namespace
@param ind Indication Instance
*/
void deliverIndication
(const CmpiContext& ctx, const char* ns,const CmpiInstance& ind);
/** Enumerate Instance Names of the class (and subclasses) defined by <op>.
@param ctx Context object
@param op ObjectPath containing namespace and classname components.
@return Enumeration of ObjectPathes.
*/
CmpiEnumeration enumInstanceNames
(const CmpiContext& ctx, const CmpiObjectPath& op);
/** Get Instance using <op> as reference. Instance structure can be
controled using the CMPIInvocationFlags entry in <ctx>.
@param ctx Context object
@param op ObjectPath containing namespace, classname and key components.
@param properties If not NULL, the members of the array define one or more Property
names. Each returned Object MUST NOT include elements for any Properties
missing from this list
@return The Instance.
*/
CmpiInstance getInstance
(const CmpiContext& ctx, const CmpiObjectPath& op,
const char** properties);
/** Create Instance from <inst> using <op> as reference.
@param ctx Context object
@param op ObjectPath containing namespace, classname and key components.
@param inst Complete instance.
@return The assigned instance reference.
*/
CmpiObjectPath createInstance
(const CmpiContext& ctx, const CmpiObjectPath& op,
const CmpiInstance& inst);
/** Replace an existing Instance from <inst> using <op> as reference.
@param ctx Context object
@param op ObjectPath containing namespace, classname and key components.
@param inst Complete instance.
*/
void setInstance
(const CmpiContext& ctx, const CmpiObjectPath& op,
const CmpiInstance& inst, const char** properties);
/** Delete an existing Instance using <op> as reference.
@param ctx Context object
@param op ObjectPath containing namespace, classname and key components.
*/
void deleteInstance
(const CmpiContext& ctx, const CmpiObjectPath& op);
/** Query the enumeration of instances of the class (and subclasses) defined
by <op> using <query> expression.
@param ctx Context object
@param op ObjectPath containing namespace and classname components.
@param query Query expression
@param lang Query Language
@return Resulting eumeration of Instances.
*/
CmpiEnumeration execQuery
(const CmpiContext& ctx, const CmpiObjectPath& op,
const char* query, const char* lang);
/** Enumerate Instances of the class (and subclasses) defined by <op>.
Instance structure and inheritance scope can be controled using the
CMPIInvocationFlags entry in <ctx>.
@param ctx Context object
@param op ObjectPath containing namespace and classname components.
@param properties If not NULL, the members of the array define one or more Property
names. Each returned Object MUST NOT include elements for any Properties
missing from this list
@return Enumeration of Instances.
*/
CmpiEnumeration enumInstances
(const CmpiContext& ctx, const CmpiObjectPath& op,
const char** properties);
/** Enumerate instances associated with the Instance defined by the <op>.
@param ctx Context object
@param op Source ObjectPath containing namespace, classname and key components.
@param assocClass If not NULL, MUST be a valid Association Class name.
It acts as a filter on the returned set of Objects by mandating that
each returned Object MUST be associated to the source Object via an
Instance of this Class or one of its subclasses.
@param resultClass If not NULL, MUST be a valid Class name.
It acts as a filter on the returned set of Objects by mandating that
each returned Object MUST be either an Instance of this Class (or one
of its subclasses).
@param role If not NULL, MUST be a valid Property name.
It acts as a filter on the returned set of Objects by mandating
that each returned Object MUST be associated to the source Object
via an Association in which the source Object plays the specified role
(i.e. the name of the Property in the Association Class that refers
to the source Object MUST match the value of this parameter).
@param resultRole If not NULL, MUST be a valid Property name.
It acts as a filter on the returned set of Objects by mandating
that each returned Object MUST be associated to the source Object
via an Association in which the returned Object plays the specified role
(i.e. the name of the Property in the Association Class that refers to
the returned Object MUST match the value of this parameter).
@param properties If not NULL, the members of the array define one or more Property
names. Each returned Object MUST NOT include elements for any Properties
missing from this list
@return Enumeration of Instances.
*/
CmpiEnumeration associators
(const CmpiContext& ctx, const CmpiObjectPath& op,
const char* assocClass, const char* resultClass,
const char* role, const char* resultRole,
const char** properties);
/** Enumerate ObjectPaths associated with the Instance defined by <op>.
@param ctx Context object
@param op Source ObjectPath containing namespace, classname and key components.
@param assocClass If not NULL, MUST be a valid Association Class name.
It acts as a filter on the returned set of Objects by mandating that
each returned Object MUST be associated to the source Object via an
Instance of this Class or one of its subclasses.
@param resultClass If not NULL, MUST be a valid Class name.
It acts as a filter on the returned set of Objects by mandating that
each returned Object MUST be either an Instance of this Class (or one
of its subclasses).
@param role If not NULL, MUST be a valid Property name.
It acts as a filter on the returned set of Objects by mandating
that each returned Object MUST be associated to the source Object
via an Association in which the source Object plays the specified role
(i.e. the name of the Property in the Association Class that refers
to the source Object MUST match the value of this parameter).
@param resultRole If not NULL, MUST be a valid Property name.
It acts as a filter on the returned set of Objects by mandating
that each returned Object MUST be associated to the source Object
via an Association in which the returned Object plays the specified role
(i.e. the name of the Property in the Association Class that refers to
the returned Object MUST match the value of this parameter).
@return Enumeration of ObjectPaths.
*/
CmpiEnumeration associatorNames
(const CmpiContext& ctx, const CmpiObjectPath& op,
const char* assocClass, const char* resultClass,
const char* role, const char* resultRole);
/** Enumerates the association instances that refer to the instance defined by
<op>.
@param ctx Context object
@param op Source ObjectPath containing namespace, classname and key components.
@param resultClass If not NULL, MUST be a valid Class name.
It acts as a filter on the returned set of Objects by mandating that
each returned Object MUST be either an Instance of this Class (or one
of its subclasses).
@param role If not NULL, MUST be a valid Property name.
It acts as a filter on the returned set of Objects by mandating
that each returned Object MUST be associated to the source Object
via an Association in which the source Object plays the specified role
(i.e. the name of the Property in the Association Class that refers
to the source Object MUST match the value of this parameter).
@param properties If not NULL, the members of the array define one or more Property
names. Each returned Object MUST NOT include elements for any Properties
missing from this list
@return Enumeration of ObjectPaths.
*/
CmpiEnumeration references
(const CmpiContext& ctx, const CmpiObjectPath& op,
const char* resultClass, const char* role,
const char** properties);
/** Enumerates the association ObjectPaths that refer to the instance defined by
<op>.
@param ctx Context object
@param op Source ObjectPath containing namespace, classname and key components.
@param resultClass If not NULL, MUST be a valid Class name.
It acts as a filter on the returned set of Objects by mandating that
each returned Object MUST be either an Instance of this Class (or one
of its subclasses).
@param role If not NULL, MUST be a valid Property name.
It acts as a filter on the returned set of Objects by mandating
that each returned Object MUST be associated to the source Object
via an Association in which the source Object plays the specified role
(i.e. the name of the Property in the Association Class that refers
to the source Object MUST match the value of this parameter).
@return Enumeration of ObjectPaths.
*/
CmpiEnumeration referenceNames
(const CmpiContext& ctx, const CmpiObjectPath& op,
const char* resultClass, const char* role);
/** Invoke a named, extrinsic method of an Instance
defined by the <op> parameter.
@param ctx Context object
@param op ObjectPath containing namespace, classname and key components.
@param method Method name
@param in Input parameters.
@param out Output parameters.
@return Method return value.
*/
CmpiData invokeMethod
(const CmpiContext& ctx, const CmpiObjectPath& op,
const char* method, const CmpiArgs& in, CmpiArgs& out);
/** Set the named property value of an Instance defined by the <op> parameter.
@param ctx Context object
@param op ObjectPath containing namespace, classname and key components.
@param name Property name
@param data Property value.
*/
void setProperty
(const CmpiContext& ctx, const CmpiObjectPath& op,
const char* name, const CmpiData& data);
/** Get the named property value of an Instance defined by the <op> parameter.
@param ctx Context object
@param op ObjectPath containing namespace, classname and key components.
@param name Property name
@return Property value.
*/
CmpiData getProperty
(const CmpiContext& ctx, const CmpiObjectPath& op,
const char* name);
};
#endif
|