OW_NAMESPACE::CIMRepository Class Reference

#include <OW_CIMRepository.hpp>

Inheritance diagram for OW_NAMESPACE::CIMRepository:

Inheritance graph
[legend]
Collaboration diagram for OW_NAMESPACE::CIMRepository:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 CIMRepository ()
 Create a new CIMRepository object.
virtual ~CIMRepository ()
 Destroy this CIMRepository object.
virtual void open (const String &path)
 Open
Exceptions:
IOException. 

virtual void close ()
 Close this RepositoryIFC.
virtual String getName () const
 Every service may have a name.
virtual void init (const ServiceEnvironmentIFCRef &env)
 init() will be called to give the derived class an opportunity to initialize itself.
virtual void shutdown ()
 The service must shutdown completely before returning from this function.
virtual void createNameSpace (const String &ns, OperationContext &context)
 Create a cim namespace.
virtual void deleteNameSpace (const String &ns, OperationContext &context)
 Delete a specified namespace.
virtual void enumNameSpace (StringResultHandlerIFC &result, OperationContext &context)
 Gets a list of the namespaces.
virtual CIMQualifierType getQualifierType (const String &ns, const String &qualifierName, OperationContext &context)
 Get an existing qualifier type from the repository.
virtual void enumQualifierTypes (const String &ns, CIMQualifierTypeResultHandlerIFC &result, OperationContext &context)
 Enumerate the qualifier types in a name space.
virtual void deleteQualifierType (const String &ns, const String &qualName, OperationContext &context)
 Delete an existing qualifier type from the repository.
virtual void setQualifierType (const String &ns, const CIMQualifierType &qt, OperationContext &context)
 Updates the specified CIM qualifier type in the specified namespace.
virtual CIMClass getClass (const String &ns, const String &className, WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, OperationContext &context)
 Gets an existing class from a store.
virtual CIMClass deleteClass (const String &ns, const String &className, OperationContext &context)
 Delete an existing class from the store.
virtual void createClass (const String &ns, const CIMClass &cimClass, OperationContext &context)
 creates a class in the store
virtual CIMClass modifyClass (const String &ns, const CIMClass &cc, OperationContext &context)
 set a class in the store - note children are not affected
virtual void enumClasses (const String &ns, const String &className, CIMClassResultHandlerIFC &result, WBEMFlags::EDeepFlag deep, WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, OperationContext &context)
 Enumerates the class specified by the CIMObjectPath.
virtual void enumClassNames (const String &ns, const String &className, StringResultHandlerIFC &result, WBEMFlags::EDeepFlag deep, OperationContext &context)
 Enumerates the class specified by the CIMObjectPath.
virtual void enumInstances (const String &ns, const String &className, CIMInstanceResultHandlerIFC &result, WBEMFlags::EDeepFlag deep, WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, WBEMFlags::EEnumSubclassesFlag enumSubclasses, OperationContext &context)
 Retrieve an enumeration of instances (CIMInstance) for a particular class.
virtual void enumInstanceNames (const String &ns, const String &className, CIMObjectPathResultHandlerIFC &result, WBEMFlags::EDeepFlag deep, OperationContext &context)
 Retrieve an enumeration of instances object paths (CIMObjectPath) for a particular class.
virtual CIMInstance getInstance (const String &ns, const CIMObjectPath &instanceName, WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, OperationContext &context)
 Retrieve a specific instance.
virtual CIMInstance getInstance (const String &ns, const CIMObjectPath &instanceName, WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, CIMClass *pOutClass, OperationContext &context)
virtual CIMInstance deleteInstance (const String &ns, const CIMObjectPath &cop, OperationContext &context)
 Delete an existing instance from the store.
virtual CIMObjectPath createInstance (const String &ns, const CIMInstance &ci, OperationContext &context)
 Creates a instance in the store.
virtual CIMInstance modifyInstance (const String &ns, const CIMInstance &modifiedInstance, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, const StringArray *propertyList, OperationContext &context)
 Update an instance.
virtual void setProperty (const String &ns, const CIMObjectPath &name, const String &propertyName, const CIMValue &cv, OperationContext &context)
 Set a property value on an CIMInstance.
virtual CIMValue getProperty (const String &ns, const CIMObjectPath &name, const String &propertyName, OperationContext &context)
 Get the specified CIM instance property.
virtual CIMValue invokeMethod (const String &ns, const CIMObjectPath &path, const String &methodName, const CIMParamValueArray &inParams, CIMParamValueArray &outParams, OperationContext &context)
 Invokes a method.
virtual void associatorNames (const String &ns, const CIMObjectPath &path, CIMObjectPathResultHandlerIFC &result, const String &assocClass, const String &resultClass, const String &role, const String &resultRole, OperationContext &context)
 This method is used to enumerate the names of CIM Objects (Classes or Instances) that are associated to a particular CIM Object.
virtual void associators (const String &ns, const CIMObjectPath &path, CIMInstanceResultHandlerIFC &result, const String &assocClass, const String &resultClass, const String &role, const String &resultRole, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, OperationContext &context)
 This operation is used to enumerate CIM Objects (Classes or Instances) that are associated to a particular source CIM Object.
virtual void associatorsClasses (const String &ns, const CIMObjectPath &path, CIMClassResultHandlerIFC &result, const String &assocClass, const String &resultClass, const String &role, const String &resultRole, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, OperationContext &context)
 This operation is used to enumerate CIMClasses that are associated to a particular source CIM Object.
virtual void referenceNames (const String &ns, const CIMObjectPath &path, CIMObjectPathResultHandlerIFC &result, const String &resultClass, const String &role, OperationContext &context)
 This operation is used to enumerate the association objects that refer to a particular target CIM Object (Class or Instance).
virtual void references (const String &ns, const CIMObjectPath &path, CIMInstanceResultHandlerIFC &result, const String &resultClass, const String &role, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, OperationContext &context)
 This operation is used to enumerate the association objects that refer to a particular target CIM Object (Class or Instance).
virtual void referencesClasses (const String &ns, const CIMObjectPath &path, CIMClassResultHandlerIFC &result, const String &resultClass, const String &role, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, OperationContext &context)
 This operation is used to enumerate the association objects that refer to a particular target CIM Class.
virtual void execQuery (const String &ns, CIMInstanceResultHandlerIFC &result, const String &query, const String &queryLanguage, OperationContext &context)
 
Exceptions:
CIMException CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_SUPPORTED CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER CIM_ERR_QUERY_LANGUAGE_NOT_SUPPORTED CIM_ERR_INVALID_QUERY CIM_ERR_FAILED

virtual void beginOperation (WBEMFlags::EOperationFlag op, OperationContext &context)
virtual void endOperation (WBEMFlags::EOperationFlag op, OperationContext &context, WBEMFlags::EOperationResultFlag result)
ServiceEnvironmentIFCRef getEnvironment () const

Static Public Attributes

static const char *const INST_REPOS_NAME = "instances"
static const char *const META_REPOS_NAME = "schema"
static const char *const NS_REPOS_NAME = "namespaces"
static const char *const CLASS_ASSOC_REPOS_NAME = "classassociation"
static const char *const INST_ASSOC_REPOS_NAME = "instassociation"

Private Member Functions

CIMClass _getClass (const String &ns, const CIMName &className)
CIMClass _instGetClass (const String &ns, const CIMName &className)
void checkGetClassRvalAndThrow (CIMException::ErrNoType rval, const String &ns, const CIMName &className)
void checkGetClassRvalAndThrowInst (CIMException::ErrNoType rval, const String &ns, const CIMName &className)
void _commonAssociators (const String &ns, const CIMObjectPath &path_, const CIMName &assocClassName, const CIMName &resultClass, const CIMName &role, const CIMName &resultRole, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, CIMInstanceResultHandlerIFC *piresult, CIMObjectPathResultHandlerIFC *popresult, CIMClassResultHandlerIFC *pcresult, OperationContext &context)
void _commonReferences (const String &ns, const CIMObjectPath &path_, const CIMName &resultClass, const CIMName &role, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, CIMInstanceResultHandlerIFC *piresult, CIMObjectPathResultHandlerIFC *popresult, CIMClassResultHandlerIFC *pcresult, OperationContext &context)
void _getAssociationClasses (const String &ns, const CIMName &assocClassName, const CIMName &className, CIMClassResultHandlerIFC &result, const CIMName &role, OperationContext &context)
void _staticReferences (const CIMObjectPath &path, const SortedVectorSet< CIMName > *refClasses, const CIMName &role, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, CIMInstanceResultHandlerIFC &result, OperationContext &context)
void _staticReferenceNames (const CIMObjectPath &path, const SortedVectorSet< CIMName > *refClasses, const CIMName &role, CIMObjectPathResultHandlerIFC &result)
void _staticReferencesClass (const CIMObjectPath &path, const SortedVectorSet< CIMName > *resultClasses, const CIMName &role, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, CIMObjectPathResultHandlerIFC *popresult, CIMClassResultHandlerIFC *pcresult, OperationContext &context)
void _staticAssociators (const CIMObjectPath &path, const SortedVectorSet< CIMName > *passocClasses, const SortedVectorSet< CIMName > *presultClasses, const CIMName &role, const CIMName &resultRole, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, CIMInstanceResultHandlerIFC &result, OperationContext &context)
void _staticAssociatorNames (const CIMObjectPath &path, const SortedVectorSet< CIMName > *passocClasses, const SortedVectorSet< CIMName > *presultClasses, const CIMName &role, const CIMName &resultRole, CIMObjectPathResultHandlerIFC &result)
void _staticAssociatorsClass (const CIMObjectPath &path, const SortedVectorSet< CIMName > *assocClassNames, const SortedVectorSet< CIMName > *resultClasses, const CIMName &role, const CIMName &resultRole, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList, CIMObjectPathResultHandlerIFC *popresult, CIMClassResultHandlerIFC *pcresult, OperationContext &context)
void _validatePropagatedKeys (OperationContext &context, const String &ns, const CIMInstance &ci, const CIMClass &theClass)

Private Attributes

GenericHDBRepository m_nStore
InstanceRepository m_iStore
MetaRepository m_mStore
AssocDb m_classAssocDb
AssocDb m_instAssocDb
ServiceEnvironmentIFCRef m_env
LoggerRef m_logger
bool m_checkReferentialIntegrity
RWLocker m_schemaLock
RWLocker m_instanceLock

Friends

class CIMServer
class CIMRepositoryImpl::instEnumerator

Detailed Description

Definition at line 57 of file OW_CIMRepository.hpp.


Constructor & Destructor Documentation

OW_NAMESPACE::CIMRepository::CIMRepository  ) 
 

Create a new CIMRepository object.

Definition at line 69 of file OW_CIMRepository.cpp.

OW_NAMESPACE::CIMRepository::~CIMRepository  )  [virtual]
 

Destroy this CIMRepository object.

Definition at line 74 of file OW_CIMRepository.cpp.

References close().


Member Function Documentation

void OW_NAMESPACE::CIMRepository::_commonAssociators const String ns,
const CIMObjectPath path_,
const CIMName assocClassName,
const CIMName resultClass,
const CIMName role,
const CIMName resultRole,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
CIMInstanceResultHandlerIFC piresult,
CIMObjectPathResultHandlerIFC popresult,
CIMClassResultHandlerIFC pcresult,
OperationContext context
[private]
 

Definition at line 1391 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::String::c_str(), OW_NAMESPACE::CIMException::INVALID_NAMESPACE, m_nStore, OW_NAMESPACE::GenericHDBRepository::nameSpaceExists(), ns, OW_THROWCIMMSG, and OW_NAMESPACE::CIMObjectPath::setNameSpace().

Referenced by associatorNames(), associators(), and associatorsClasses().

void OW_NAMESPACE::CIMRepository::_commonReferences const String ns,
const CIMObjectPath path_,
const CIMName resultClass,
const CIMName role,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
CIMInstanceResultHandlerIFC piresult,
CIMObjectPathResultHandlerIFC popresult,
CIMClassResultHandlerIFC pcresult,
OperationContext context
[private]
 

Definition at line 1177 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::String::c_str(), OW_NAMESPACE::CIMException::INVALID_NAMESPACE, m_nStore, OW_NAMESPACE::GenericHDBRepository::nameSpaceExists(), ns, OW_THROWCIMMSG, and OW_NAMESPACE::CIMObjectPath::setNameSpace().

Referenced by referenceNames(), references(), and referencesClasses().

void OW_NAMESPACE::CIMRepository::_getAssociationClasses const String ns,
const CIMName assocClassName,
const CIMName className,
CIMClassResultHandlerIFC result,
const CIMName role,
OperationContext context
[private]
 

Definition at line 1668 of file OW_CIMRepository.cpp.

References _staticReferencesClass(), OW_NAMESPACE::CIMNULL, className, context, cop, OW_NAMESPACE::WBEMFlags::E_DEEP, OW_NAMESPACE::WBEMFlags::E_EXCLUDE_CLASS_ORIGIN, OW_NAMESPACE::WBEMFlags::E_INCLUDE_CLASS_ORIGIN, OW_NAMESPACE::WBEMFlags::E_INCLUDE_QUALIFIERS, OW_NAMESPACE::WBEMFlags::E_NOT_LOCAL_ONLY, OW_NAMESPACE::MetaRepository::enumClass(), OW_NAMESPACE::CIMException::FAILED, OW_NAMESPACE::MetaRepository::getCIMClass(), OW_NAMESPACE::ResultHandlerIFC< T >::handle(), m_mStore, ns, OW_THROWCIM, result, OW_NAMESPACE::CIMException::SUCCESS, and OW_NAMESPACE::CIMName::toString().

CIMClass OW_NAMESPACE::CIMRepository::_getClass const String ns,
const CIMName className
[private]
 

Definition at line 336 of file OW_CIMRepository.cpp.

References checkGetClassRvalAndThrow(), OW_NAMESPACE::CIMNULL, className, OW_NAMESPACE::WBEMFlags::E_INCLUDE_CLASS_ORIGIN, OW_NAMESPACE::WBEMFlags::E_INCLUDE_QUALIFIERS, OW_NAMESPACE::WBEMFlags::E_NOT_LOCAL_ONLY, OW_NAMESPACE::MetaRepository::getCIMClass(), m_mStore, ns, and theClass.

Referenced by _staticAssociatorsClass(), _staticReferencesClass(), createClass(), deleteClass(), and modifyClass().

CIMClass OW_NAMESPACE::CIMRepository::_instGetClass const String ns,
const CIMName className
[private]
 

Definition at line 345 of file OW_CIMRepository.cpp.

References checkGetClassRvalAndThrowInst(), OW_NAMESPACE::CIMNULL, className, OW_NAMESPACE::WBEMFlags::E_INCLUDE_CLASS_ORIGIN, OW_NAMESPACE::WBEMFlags::E_INCLUDE_QUALIFIERS, OW_NAMESPACE::WBEMFlags::E_NOT_LOCAL_ONLY, OW_NAMESPACE::MetaRepository::getCIMClass(), m_mStore, ns, and theClass.

Referenced by createInstance(), OW_NAMESPACE::CIMRepositoryImpl::instEnumerator::doHandle(), enumInstanceNames(), enumInstances(), getInstance(), getProperty(), and setProperty().

void OW_NAMESPACE::CIMRepository::_staticAssociatorNames const CIMObjectPath path,
const SortedVectorSet< CIMName > *  passocClasses,
const SortedVectorSet< CIMName > *  presultClasses,
const CIMName role,
const CIMName resultRole,
CIMObjectPathResultHandlerIFC result
[private]
 

Definition at line 1542 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::AssocDbHandle::getAllEntries(), OW_NAMESPACE::AssocDb::getHandle(), handler, m_instAssocDb, and result.

void OW_NAMESPACE::CIMRepository::_staticAssociators const CIMObjectPath path,
const SortedVectorSet< CIMName > *  passocClasses,
const SortedVectorSet< CIMName > *  presultClasses,
const CIMName role,
const CIMName resultRole,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
CIMInstanceResultHandlerIFC result,
OperationContext context
[private]
 

Definition at line 1462 of file OW_CIMRepository.cpp.

References context, OW_NAMESPACE::ServiceEnvironmentIFC::E_NO_LOCKING, OW_NAMESPACE::ServiceEnvironmentIFC::E_USE_PROVIDERS, OW_NAMESPACE::AssocDbHandle::getAllEntries(), OW_NAMESPACE::AssocDb::getHandle(), handler, m_env, m_instAssocDb, propertyList, and result.

void OW_NAMESPACE::CIMRepository::_staticAssociatorsClass const CIMObjectPath path,
const SortedVectorSet< CIMName > *  assocClassNames,
const SortedVectorSet< CIMName > *  resultClasses,
const CIMName role,
const CIMName resultRole,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
CIMObjectPathResultHandlerIFC popresult,
CIMClassResultHandlerIFC pcresult,
OperationContext context
[private]
 

Definition at line 1556 of file OW_CIMRepository.cpp.

References _getClass(), context, OW_NAMESPACE::AssocDbHandle::getAllEntries(), OW_NAMESPACE::CIMObjectPath::getClassName(), OW_NAMESPACE::AssocDb::getHandle(), OW_NAMESPACE::CIMObjectPath::getNameSpace(), OW_NAMESPACE::CIMClass::getSuperClass(), handler, m_classAssocDb, ns, OW_ASSERT, propertyList, OW_NAMESPACE::CIMObjectPath::setClassName(), and theClass.

void OW_NAMESPACE::CIMRepository::_staticReferenceNames const CIMObjectPath path,
const SortedVectorSet< CIMName > *  refClasses,
const CIMName role,
CIMObjectPathResultHandlerIFC result
[private]
 

Definition at line 1380 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::AssocDbHandle::getAllEntries(), OW_NAMESPACE::AssocDb::getHandle(), handler, m_instAssocDb, and result.

void OW_NAMESPACE::CIMRepository::_staticReferences const CIMObjectPath path,
const SortedVectorSet< CIMName > *  refClasses,
const CIMName role,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
CIMInstanceResultHandlerIFC result,
OperationContext context
[private]
 

Definition at line 1365 of file OW_CIMRepository.cpp.

References context, OW_NAMESPACE::ServiceEnvironmentIFC::E_NO_LOCKING, OW_NAMESPACE::ServiceEnvironmentIFC::E_USE_PROVIDERS, OW_NAMESPACE::AssocDbHandle::getAllEntries(), OW_NAMESPACE::AssocDb::getHandle(), handler, m_env, m_instAssocDb, propertyList, and result.

void OW_NAMESPACE::CIMRepository::_staticReferencesClass const CIMObjectPath path,
const SortedVectorSet< CIMName > *  resultClasses,
const CIMName role,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
CIMObjectPathResultHandlerIFC popresult,
CIMClassResultHandlerIFC pcresult,
OperationContext context
[private]
 

Definition at line 1599 of file OW_CIMRepository.cpp.

References _getClass(), context, OW_NAMESPACE::AssocDbHandle::getAllEntries(), OW_NAMESPACE::CIMObjectPath::getClassName(), OW_NAMESPACE::AssocDb::getHandle(), OW_NAMESPACE::CIMObjectPath::getNameSpace(), OW_NAMESPACE::CIMClass::getSuperClass(), handler, m_classAssocDb, m_logger, ns, OW_ASSERT, OW_LOG_DEBUG, propertyList, OW_NAMESPACE::CIMObjectPath::setClassName(), theClass, and OW_NAMESPACE::CIMObjectPath::toString().

Referenced by _getAssociationClasses().

void OW_NAMESPACE::CIMRepository::_validatePropagatedKeys OperationContext context,
const String ns,
const CIMInstance ci,
const CIMClass theClass
[private]
 

Definition at line 1755 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::CIMClass::getKeys(), OW_NAMESPACE::Array< T >::size(), and theClass.

Referenced by createInstance().

void OW_NAMESPACE::CIMRepository::associatorNames const String ns,
const CIMObjectPath path,
CIMObjectPathResultHandlerIFC result,
const String assocClass,
const String resultClass,
const String role,
const String resultRole,
OperationContext context
[virtual]
 

This method is used to enumerate the names of CIM Objects (Classes or Instances) that are associated to a particular CIM Object.

Parameters:
ns The namespace containing the CIM Objects to be enumerated.
objectName Defines the source CIM Object whose associated Objects are to be returned. This may be either a Class name or Instance name (modelpath).
result A callback object that will handle the CIMObjectPaths as they are received.
assocClass The AssocClass input parameter, if not empty (""), MUST be a valid CIM 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.
resultClass The ResultClass input parameter, if not empty (""), MUST be valid CIM 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) or be this Class (or one of its subclasses).
role The Role input parameter, if not empty (""), 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).
resultRole The ResultRole input parameter, if not empty (""), 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).
Exceptions:
CIMException - as defined in the associators method

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 1102 of file OW_CIMRepository.cpp.

References _commonAssociators(), context, OW_NAMESPACE::WBEMFlags::E_EXCLUDE_CLASS_ORIGIN, OW_NAMESPACE::WBEMFlags::E_EXCLUDE_QUALIFIERS, ns, and result.

void OW_NAMESPACE::CIMRepository::associators const String ns,
const CIMObjectPath path,
CIMInstanceResultHandlerIFC result,
const String assocClass,
const String resultClass,
const String role,
const String resultRole,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
OperationContext context
[virtual]
 

This operation is used to enumerate CIM Objects (Classes or Instances) that are associated to a particular source CIM Object.

Parameters:
ns The namspace.
path Defines the path of the source CIM Object whose associated Objects are to be returned. This may be a path to either a Class name or Instance name (model path).
result A callback object that will handle the CIMInstances as they are received.
assocClass The AssocClass input parameter, if not empty (""), MUST be a valid CIM 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.
resultClass The ResultClass input parameter, if not empty (""), MUST be a valid CIM 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) or be this Class (or one of its subclasses).
role The Role input parameter, if not empty (""), 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).
resultRole The ResultRole input parameter, if not empty (""), 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).
includeQualifiers If set to E_INCLUDE_QUALIFIERS then all Qualifiers for each Object (including Qualifiers on the Object and on any returned Properties) MUST be included as QUALIFIER elements in the response. If set to E_EXCLUDE_QUALIFIERS, then no qualifier elements will be present in the returned object(s).
includeClassOrigin If set to E_INCLUDE_CLASS_ORIGIN, then the CLASSORIGIN attribute MUST be present on all appropriate elements in each returned Object. If set to E_EXCLUDE_CLASS_ORIGIN, no CLASSORIGIN attributes are present in each returned Object.
propertyList If the PropertyList input parameter is 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. If the PropertyList input parameter is an empty array this signifies that no Properties are included in each returned Object. If the PropertyList input parameter is NULL this specifies that all Properties (subject to the conditions expressed by the other parameters) are included in each returned Object.
If the PropertyList contains duplicate elements, the Server MUST ignore the duplicates but otherwise process the request normally. If the PropertyList contains elements which are invalid Property names for any target Object, the Server MUST ignore such entries but otherwise process the request normally.

Clients SHOULD NOT explicitly specify properties in the PropertyList parameter unless they have specified a non-empty ("") value for the ResultClass parameter.

Exceptions:
CIMException. The following IDs can be expected: CIM_ERR_ACCESS_DENIED, CIM_ERR_NOT_SUPPORTED, CIM_ERR_INVALID_NAMESPACE, CIM_ERR_INVALID_PARAMETER (including missing, duplicate, unrecognized or otherwise incorrect parameters), CIM_ERR_FAILED (some other unspecified error occurred).

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 1072 of file OW_CIMRepository.cpp.

References _commonAssociators(), context, ns, propertyList, and result.

void OW_NAMESPACE::CIMRepository::associatorsClasses const String ns,
const CIMObjectPath path,
CIMClassResultHandlerIFC result,
const String assocClass,
const String resultClass,
const String role,
const String resultRole,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
OperationContext context
[virtual]
 

This operation is used to enumerate CIMClasses that are associated to a particular source CIM Object.

Parameters:
ns The namspace.
path Defines the path of the source CIM Object whose associated Objects are to be returned. This may be a path to either a Class name or Instance name (model path).
result A callback object that will handle the CIMClasses as they are received.
assocClass The AssocClass input parameter, if not empty (""), MUST be a valid CIM 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.
resultClass The ResultClass input parameter, if not empty (""), MUST be a valid CIM 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) or be this Class (or one of its subclasses).
role The Role input parameter, if not empty (""), 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).
resultRole The ResultRole input parameter, if not empty (""), 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).
includeQualifiers If set to E_INCLUDE_QUALIFIERS then all Qualifiers for each Object (including Qualifiers on the Object and on any returned Properties) MUST be included as elements in the response.If set to E_EXCLUDE_QUALIFIERS, then no qualifiers will be present in the returned object(s).
includeClassOrigin If the IncludeClassOrigin input parameter is set to E_INCLUDE_ORIGIN, then the CLASSORIGIN attribute MUST be present on all appropriate elements in each returned Object. If set to E_EXCLUDE_ORIGIN, no CLASSORIGIN attributes are present in each returned Object.
propertyList If the PropertyList input parameter is 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. If the PropertyList input parameter is an empty array this signifies that no Properties are included in each returned Object. If the PropertyList input parameter is NULL this specifies that all Properties (subject to the conditions expressed by the other parameters) are included in each returned Object.
If the PropertyList contains duplicate elements, the Server MUST ignore the duplicates but otherwise process the request normally. If the PropertyList contains elements which are invalid Property names for any target Object, the Server MUST ignore such entries but otherwise process the request normally.

Clients SHOULD NOT explicitly specify properties in the PropertyList parameter unless they have specified a non-empty ("") value for the ResultClass parameter.

Exceptions:
CIMException. The following IDs can be expected: CIM_ERR_ACCESS_DENIED, CIM_ERR_NOT_SUPPORTED, CIM_ERR_INVALID_NAMESPACE, CIM_ERR_INVALID_PARAMETER (including missing, duplicate, unrecognized or otherwise incorrect parameters), CIM_ERR_FAILED (some other unspecified error occurred)

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 1087 of file OW_CIMRepository.cpp.

References _commonAssociators(), context, ns, propertyList, and result.

void OW_NAMESPACE::CIMRepository::beginOperation WBEMFlags::EOperationFlag  op,
OperationContext context
[virtual]
 

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 1864 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::OperationContext::BYPASS_LOCKERKEY, context, and OW_NAMESPACE::OperationContext::keyHasData().

void OW_NAMESPACE::CIMRepository::checkGetClassRvalAndThrow CIMException::ErrNoType  rval,
const String ns,
const CIMName className
[private]
 

Definition at line 1699 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::String::c_str(), className, OW_NAMESPACE::CIMException::INVALID_NAMESPACE, m_nStore, OW_NAMESPACE::GenericHDBRepository::nameSpaceExists(), ns, OW_THROWCIMMSG, OW_NAMESPACE::CIMException::SUCCESS, and OW_NAMESPACE::toString().

Referenced by _getClass(), and getClass().

void OW_NAMESPACE::CIMRepository::checkGetClassRvalAndThrowInst CIMException::ErrNoType  rval,
const String ns,
const CIMName className
[private]
 

Definition at line 1716 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::String::c_str(), className, OW_NAMESPACE::CIMException::INVALID_CLASS, OW_NAMESPACE::CIMException::INVALID_NAMESPACE, m_nStore, OW_NAMESPACE::GenericHDBRepository::nameSpaceExists(), ns, OW_THROWCIMMSG, OW_NAMESPACE::CIMException::SUCCESS, and OW_NAMESPACE::toString().

Referenced by _instGetClass().

void OW_NAMESPACE::CIMRepository::close  )  [virtual]
 

Close this RepositoryIFC.

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 126 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::AssocDb::close(), OW_NAMESPACE::GenericHDBRepository::close(), m_classAssocDb, m_instAssocDb, m_iStore, m_mStore, and m_nStore.

Referenced by open(), shutdown(), and ~CIMRepository().

void OW_NAMESPACE::CIMRepository::createClass const String ns,
const CIMClass cimClass,
OperationContext context
[virtual]
 

creates a class in the store

Parameters:
path The path for the class to create
cimClass The class to create
aclInfo ACL object describing user making request.
Exceptions:
CIMException CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_SUPPORTED CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER CIM_ERR_ALREADY_EXISTS CIM_ERR_INVALID_SUPERCLASS CIM_ERR_FAILED

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 448 of file OW_CIMRepository.cpp.

References _getClass(), cimClass, OW_NAMESPACE::CIMClass::getAllProperties(), OW_NAMESPACE::CIMException::getErrNo(), i, OW_NAMESPACE::CIMException::INVALID_PARAMETER, OW_NAMESPACE::CIMException::NOT_FOUND, ns, OW_THROWCIMMSG, and type.

CIMObjectPath OW_NAMESPACE::CIMRepository::createInstance const String ns,
const CIMInstance ci,
OperationContext context
[virtual]
 

Creates a instance in the store.

Parameters:
cop The CIMObectPath that specifies the instance
ci The instance that is to be stored with that object path
aclInfo ACL object describing user making request.
Exceptions:
CIMException CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_SUPPORTED CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER CIM_ERR_ALREADY_EXISTS CIM_ERR_INVALID_CLASS CIM_ERR_FAILED

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 860 of file OW_CIMRepository.cpp.

References _instGetClass(), _validatePropagatedKeys(), OW_NAMESPACE::CIMNULL, context, OW_NAMESPACE::ServiceEnvironmentIFC::E_NO_LOCKING, OW_NAMESPACE::ServiceEnvironmentIFC::E_USE_PROVIDERS, OW_NAMESPACE::CIMInstance::getClassName(), OW_NAMESPACE::CIMInstance::getProperties(), OW_NAMESPACE::CIMException::INVALID_PARAMETER, OW_NAMESPACE::CIMClass::isAssociation(), m_checkReferentialIntegrity, m_env, m_logger, ns, OW_LOG_DEBUG, OW_THROWCIMMSG, OW_THROWCIMMSG_SUBEX, OW_NAMESPACE::CIMDataType::REFERENCE, theClass, OW_NAMESPACE::CIMInstance::toMOF(), and OW_NAMESPACE::CIMObjectPath::toString().

void OW_NAMESPACE::CIMRepository::createNameSpace const String ns,
OperationContext context
[virtual]
 

Create a cim namespace.

Parameters:
ns The namespace to be created.
aclInfo ignored
Exceptions:
CIMException If the namespace already exists.

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 178 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::String::empty(), OW_NAMESPACE::CIMException::INVALID_PARAMETER, ns, and OW_THROWCIM.

CIMClass OW_NAMESPACE::CIMRepository::deleteClass const String ns,
const String className,
OperationContext context
[virtual]
 

Delete an existing class from the store.

Parameters:
ns The namespace containing the class to delete.
className The class to delete
aclInfo ACL object describing user making request.
Returns:
an CIMClass representing the class which was deleted.
Exceptions:
CIMException CIM_ERR_CLASS_HAS_CHILDREN CIM_ERR_CLASS_HAS_INSTANCES CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_FOUND CIM_ERR_NOT_SUPPORTED CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER CIM_ERR_FAILED

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 406 of file OW_CIMRepository.cpp.

References _getClass(), className, OW_NAMESPACE::WBEMFlags::E_DEEP, OW_NAMESPACE::WBEMFlags::E_EXCLUDE_CLASS_ORIGIN, OW_NAMESPACE::WBEMFlags::E_EXCLUDE_QUALIFIERS, OW_NAMESPACE::WBEMFlags::E_LOCAL_ONLY, enumClasses(), OW_NAMESPACE::CIMException::FAILED, m_classAssocDb, m_iStore, m_logger, m_mStore, ns, OW_ASSERT, OW_LOG_DEBUG, and OW_THROWCIM_SUBEX.

CIMInstance OW_NAMESPACE::CIMRepository::deleteInstance const String ns,
const CIMObjectPath cop,
OperationContext context
[virtual]
 

Delete an existing instance from the store.

Parameters:
cop The CIMObectPath that specifies the instance
aclInfo ACL object describing user making request.
Exceptions:
CIMException CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_FOUND CIM_ERR_NOT_SUPPORTED CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER CIM_ERR_INVALID_CLASS CIM_ERR_FAILED

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 811 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::CIMNULL, cop, OW_NAMESPACE::WBEMFlags::E_INCLUDE_CLASS_ORIGIN, OW_NAMESPACE::WBEMFlags::E_INCLUDE_QUALIFIERS, OW_NAMESPACE::WBEMFlags::E_NOT_LOCAL_ONLY, OW_NAMESPACE::CIMException::FAILED, OW_NAMESPACE::AssocDb::getHandle(), getInstance(), hdl, OW_NAMESPACE::CIMClass::isAssociation(), m_instAssocDb, m_logger, ns, OW_LOG_DEBUG, OW_THROWCIMMSG, OW_NAMESPACE::CIMObjectPath::setNameSpace(), theClass, and OW_NAMESPACE::CIMObjectPath::toString().

void OW_NAMESPACE::CIMRepository::deleteNameSpace const String ns,
OperationContext context
[virtual]
 

Delete a specified namespace.

Parameters:
ns The namespace to delete.
aclInfo ignored
Exceptions:
CIMException If the namespace does not exist.

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 216 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::String::empty(), OW_NAMESPACE::CIMException::INVALID_PARAMETER, ns, and OW_THROWCIM.

void OW_NAMESPACE::CIMRepository::deleteQualifierType const String ns,
const String qualName,
OperationContext context
[virtual]
 

Delete an existing qualifier type from the repository.

Parameters:
ns The name space.
qualName The qualifier type name
aclInfo ignored
Exceptions:
CIMException 

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 275 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::MetaRepository::deleteQualifierType(), m_mStore, m_nStore, OW_NAMESPACE::GenericHDBRepository::nameSpaceExists(), OW_NAMESPACE::CIMException::NOT_FOUND, ns, and OW_THROWCIMMSG.

void OW_NAMESPACE::CIMRepository::endOperation WBEMFlags::EOperationFlag  op,
OperationContext context,
WBEMFlags::EOperationResultFlag  result
[virtual]
 

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 1922 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::OperationContext::BYPASS_LOCKERKEY, context, and OW_NAMESPACE::OperationContext::keyHasData().

void OW_NAMESPACE::CIMRepository::enumClasses const String ns,
const String className,
CIMClassResultHandlerIFC result,
WBEMFlags::EDeepFlag  deep,
WBEMFlags::ELocalOnlyFlag  localOnly,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
OperationContext context
[virtual]
 

Enumerates the class specified by the CIMObjectPath.

Parameters:
path The CIMObjectPath identifying the class to be enumerated.
deep If set to CIMClient::DEEP, the enumeration returned will contain the names of all classes derived from the enumerated class. If set to CIMClient::SHALLOW the enumermation will return only the names of the first level children of the enumerated class.
localOnly If true, then only CIM elements (properties, methods, qualifiers) overriden within the definition are returned.
includeQualifiers If true, then all qualifiers for the class (including properties, methods, and method parameters) are returned.
includeClassOrigin If true, then the class origin attribute will be returned on all appropriate components.
aclInfo ACL object describing user making request.
Exceptions:
CIMException CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_SUPPORTED CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER CIM_ERR_INVALID_CLASS CIM_ERR_FAILED

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 542 of file OW_CIMRepository.cpp.

References className, OW_NAMESPACE::MetaRepository::enumClass(), OW_NAMESPACE::CIMException::FAILED, m_logger, m_mStore, ns, OW_LOG_DEBUG, OW_THROWCIM_SUBEX, and result.

Referenced by deleteClass().

void OW_NAMESPACE::CIMRepository::enumClassNames const String ns,
const String className,
StringResultHandlerIFC result,
WBEMFlags::EDeepFlag  deep,
OperationContext context
[virtual]
 

Enumerates the class specified by the CIMObjectPath.

Parameters:
path The CIMObjectPath identifying the class to be enumerated.
deep If set to CIMClient::DEEP, the enumeration returned will contain the names of all classes derived from the enumerated class. If set to CIMClient::SHALLOW the enumermation will return only the names of the first level children of the enumerated class.
localOnly Only include properties
aclInfo ACL object describing user making request.
Exceptions:
CIMException CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_SUPPORTED CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER CIM_ERR_INVALID_CLASS CIM_ERR_FAILED

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 567 of file OW_CIMRepository.cpp.

References className, OW_NAMESPACE::MetaRepository::enumClassNames(), OW_NAMESPACE::CIMException::FAILED, m_logger, m_mStore, ns, OW_LOG_DEBUG, OW_THROWCIM_SUBEX, and result.

void OW_NAMESPACE::CIMRepository::enumInstanceNames const String ns,
const String className,
CIMObjectPathResultHandlerIFC result,
WBEMFlags::EDeepFlag  deep,
OperationContext context
[virtual]
 

Retrieve an enumeration of instances object paths (CIMObjectPath) for a particular class.

Parameters:
path The CIMObjectPath identifying the class whose instances are to be enumerated.
deep If set to CIMClient::DEEP, the enumeration returned will contain the names of all instances of the specified class and all classes derived from it. If set to CIMClient::SHALLOW only names of instances belonging to the specified class are returned.
aclInfo ACL object describing user making request.
Exceptions:
CIMException CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_SUPPORTED CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER CIM_ERR_INVALID_CLASS CIM_ERR_FAILED

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 643 of file OW_CIMRepository.cpp.

References _instGetClass(), className, OW_NAMESPACE::WBEMFlags::E_INCLUDE_CLASS_ORIGIN, OW_NAMESPACE::WBEMFlags::E_INCLUDE_QUALIFIERS, OW_NAMESPACE::WBEMFlags::E_NOT_LOCAL_ONLY, OW_NAMESPACE::MetaRepository::enumClass(), m_env, m_iStore, m_mStore, ns, result, and theClass.

void OW_NAMESPACE::CIMRepository::enumInstances const String ns,
const String className,
CIMInstanceResultHandlerIFC result,
WBEMFlags::EDeepFlag  deep,
WBEMFlags::ELocalOnlyFlag  localOnly,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
WBEMFlags::EEnumSubclassesFlag  enumSubclasses,
OperationContext context
[virtual]
 

Retrieve an enumeration of instances (CIMInstance) for a particular class.

Parameters:
path The CIMObjectPath identifying the class whose instances are to be enumerated.
deep Return properties defined on subclasses of the class in path
localOnly If true only non-inherited properties/qualifiers are included in the instances.
includeQualifiers If true, then all qualifiers for the instance (including properties, methods, and method parameters) are returned.
includeClassOrigin If true, then the class origin attribute will be returned on all appropriate components.
propertyList If not NULL then is specifies the only properties that can be returned with the class. If not NULL but the array is empty, then no properties should be returned. If NULL then all properties will be returned.
aclInfo ACL object describing user making request.
Exceptions:
CIMException CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_SUPPORTED CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER CIM_ERR_INVALID_CLASS CIM_ERR_FAILED

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 727 of file OW_CIMRepository.cpp.

References _instGetClass(), className, OW_NAMESPACE::WBEMFlags::E_DEEP, OW_NAMESPACE::MetaRepository::enumClassNames(), OW_NAMESPACE::CIMException::FAILED, OW_NAMESPACE::InstanceRepository::getCIMInstances(), m_iStore, m_logger, m_mStore, ns, OW_LOG_DEBUG, OW_THROWCIM_SUBEX, propertyList, result, and theTopClass.

void OW_NAMESPACE::CIMRepository::enumNameSpace StringResultHandlerIFC result,
OperationContext context
[virtual]
 

Gets a list of the namespaces.

Parameters:
aclInfo ignored
result result.handle() will be called for each namespace.
Exceptions:
CIMException If the namespace does not exist or the object cannot be found in the specified namespace.

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 233 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::GenericHDBRepository::getHandle(), OW_NAMESPACE::ResultHandlerIFC< T >::handle(), hdl, m_logger, m_nStore, OW_LOG_DEBUG, and result.

void OW_NAMESPACE::CIMRepository::enumQualifierTypes const String ns,
CIMQualifierTypeResultHandlerIFC result,
OperationContext context
[virtual]
 

Enumerate the qualifier types in a name space.

Parameters:
ns The namespace to enumerate the qualifiers in.
aclInfo ignored
result result.handle() will be called for each qualifier type.
Exceptions:
CIMException 

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 265 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::MetaRepository::enumQualifierTypes(), m_logger, m_mStore, ns, OW_LOG_DEBUG, and result.

void OW_NAMESPACE::CIMRepository::execQuery const String ns,
CIMInstanceResultHandlerIFC result,
const String query,
const String queryLanguage,
OperationContext context
[virtual]
 

Exceptions:
CIMException CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_SUPPORTED CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER CIM_ERR_QUERY_LANGUAGE_NOT_SUPPORTED CIM_ERR_INVALID_QUERY CIM_ERR_FAILED

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 1061 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::CIMException::NOT_SUPPORTED, and OW_THROWCIM.

CIMClass OW_NAMESPACE::CIMRepository::getClass const String ns,
const String className,
WBEMFlags::ELocalOnlyFlag  localOnly,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
OperationContext context
[virtual]
 

Gets an existing class from a store.

Parameters:
path The path for the class to retrieve
localOnly ignored
includeQualifiers ignored
includeClassOrigin ignored
propertyList ignored
aclInfo ignored
Returns:
A valid CIMClass object on success. A NULL CIMClass will never be returned. An exception will be thrown instead. CIMClass object.
Exceptions:
CIMException CIM_ERR_FAILED CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_FOUND CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 308 of file OW_CIMRepository.cpp.

References checkGetClassRvalAndThrow(), OW_NAMESPACE::CIMNULL, className, OW_NAMESPACE::CIMException::FAILED, OW_NAMESPACE::MetaRepository::getCIMClass(), OW_NAMESPACE::CIMClass::getName(), m_logger, m_mStore, ns, OW_LOG_DEBUG, OW_THROWCIM_SUBEX, propertyList, and theClass.

ServiceEnvironmentIFCRef OW_NAMESPACE::CIMRepository::getEnvironment  )  const [inline, virtual]
 

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 565 of file OW_CIMRepository.hpp.

References m_env.

CIMInstance OW_NAMESPACE::CIMRepository::getInstance const String ns,
const CIMObjectPath instanceName,
WBEMFlags::ELocalOnlyFlag  localOnly,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
CIMClass pOutClass,
OperationContext context
[virtual]
 

Definition at line 776 of file OW_CIMRepository.cpp.

References _instGetClass(), OW_NAMESPACE::CIMNULL, OW_NAMESPACE::CIMException::FAILED, OW_NAMESPACE::InstanceRepository::getCIMInstance(), OW_NAMESPACE::CIMObjectPath::getClassName(), m_iStore, ns, OW_ASSERT, OW_THROWCIM_SUBEX, and propertyList.

CIMInstance OW_NAMESPACE::CIMRepository::getInstance const String ns,
const CIMObjectPath instanceName,
WBEMFlags::ELocalOnlyFlag  localOnly,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
OperationContext context
[virtual]
 

Retrieve a specific instance.

Parameters:
cop The CIMObectPath that specifies the instance
localOnly If true, only return non-derived properties.
includeQualifiers If true, then all qualifiers for the instance (including properties, methods, and method parameters) are returned.
includeClassOrigin If true, then the class origin attribute will be returned on all appropriate components.
propertyList If not NULL then is specifies the only properties that can be returned with the class. If not NULL but the array is empty, then no properties should be returned. If NULL then all properties will be returned.
aclInfo ACL object describing user making request.
Returns:
An CIMInstance object
Exceptions:
CIMException CIM_ERR_FAILED CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_FOUND CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_CLASS CIM_ERR_INVALID_PARAMETER

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 763 of file OW_CIMRepository.cpp.

References context, ns, and propertyList.

Referenced by deleteInstance(), getProperty(), and modifyInstance().

String OW_NAMESPACE::CIMRepository::getName  )  const [virtual]
 

Every service may have a name.

The name is used to calculate dependencies, other services can return the name from getDependencies(), to instruct the cimom about which order to start and shutdown all the services. The default is to have no name, in that case, no other service can depend on it.

Reimplemented from OW_NAMESPACE::ServiceIFC.

Definition at line 139 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::ServiceIFCNames::CIMRepository.

CIMValue OW_NAMESPACE::CIMRepository::getProperty const String ns,
const CIMObjectPath name,
const String propertyName,
OperationContext context
[virtual]
 

Get the specified CIM instance property.

Parameters:
name An CIMObjectPath that identifies the CIM instance to be accessed
propertyName The name of the property to retrieve.
aclInfo ACL object describing user making request.
Returns:
The CIMvalue for property identified by propertyName.
Exceptions:
CIMException 

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 1026 of file OW_CIMRepository.cpp.

References _instGetClass(), OW_NAMESPACE::String::c_str(), context, OW_NAMESPACE::WBEMFlags::E_INCLUDE_CLASS_ORIGIN, OW_NAMESPACE::WBEMFlags::E_INCLUDE_QUALIFIERS, OW_NAMESPACE::WBEMFlags::E_NOT_LOCAL_ONLY, getInstance(), OW_NAMESPACE::CIMClass::getProperty(), OW_NAMESPACE::CIMProperty::getValue(), name, OW_NAMESPACE::CIMException::NO_SUCH_PROPERTY, ns, OW_THROWCIMMSG, and theClass.

CIMQualifierType OW_NAMESPACE::CIMRepository::getQualifierType const String ns,
const String qualifierName,
OperationContext context
[virtual]
 

Get an existing qualifier type from the repository.

Parameters:
ns The namespace of the qualifier type
qualifierName The name of the qualifier type.
aclInfo ignored
Returns:
A valid CIMQaulifer type.
Exceptions:
CIMException 
IOException 

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 254 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::MetaRepository::getQualifierType(), m_logger, m_mStore, ns, OW_LOG_DEBUG, and OW_NAMESPACE::toString().

void OW_NAMESPACE::CIMRepository::init const ServiceEnvironmentIFCRef env  )  [virtual]
 

init() will be called to give the derived class an opportunity to initialize itself.

Do not create threads which interact with the environment until start() is called. During the loading/initializing phase, the environment is single-threaded.

Parameters:
env The service's interface to it's environment. A copy of this may be saved and re-used. All copies of env or objects obtained by calling member functions of env should be set to 0 in shutdown() to prevent circular reference counts.

Implements OW_NAMESPACE::ServiceIFC.

Definition at line 146 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::ConfigOpts::CHECK_REFERENTIAL_INTEGRITY_opt, OW_NAMESPACE::COMPONENT_NAME, env, OW_NAMESPACE::AssocDb::init(), OW_NAMESPACE::MetaRepository::init(), OW_NAMESPACE::GenericHDBRepository::init(), m_checkReferentialIntegrity, m_classAssocDb, m_env, m_instAssocDb, m_iStore, m_logger, m_mStore, m_nStore, and OW_DEFAULT_CHECK_REFERENTIAL_INTEGRITY.

CIMValue OW_NAMESPACE::CIMRepository::invokeMethod const String ns,
const CIMObjectPath path,
const String methodName,
const CIMParamValueArray inParams,
CIMParamValueArray outParams,
OperationContext context
[virtual]
 

Invokes a method.

Parameters:
name The object path of the object on which the method is being invoked this can be a class or instance
methodName The name of the method to invoke.
inParams An array of CIMProperty objects for inbound values
outParams An array of CIMProperty objects for inbound values
outParams A vector of CIMProperty for outbound values
aclInfo ACL object describing user making request.
Exceptions:
CIMException 

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 1051 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::CIMException::NOT_SUPPORTED, and OW_THROWCIM.

CIMClass OW_NAMESPACE::CIMRepository::modifyClass const String ns,
const CIMClass cc,
OperationContext context
[virtual]
 

set a class in the store - note children are not affected

Parameters:
path The path for the class to create
cimClass The class to create
aclInfo ACL object describing user making request.
Returns:
an CIMClass representing the state of the class prior to the update. This is likely usefull only for creating CIM_ClassModification indications.
Exceptions:
CIMException CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_SUPPORTED CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER CIM_ERR_NOT_FOUND CIM_ERR_INVALID_SUPERCLASS CIM_ERR_CLASS_HAS_CHILDREN CIM_ERR_CLASS_HAS_INSTANCES CIM_ERR_FAILED

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 509 of file OW_CIMRepository.cpp.

References _getClass(), OW_NAMESPACE::CIMException::FAILED, OW_NAMESPACE::CIMClass::getName(), m_logger, m_mStore, OW_NAMESPACE::MetaRepository::modifyClass(), ns, OW_ASSERT, OW_LOG_DEBUG, OW_THROWCIM_SUBEX, and OW_NAMESPACE::CIMClass::toMOF().

CIMInstance OW_NAMESPACE::CIMRepository::modifyInstance const String ns,
const CIMInstance modifiedInstance,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
const StringArray propertyList,
OperationContext context
[virtual]
 

Update an instance.

Parameters:
cop The CIMObectPath that specifies the instance
ci The instance with the new values
aclInfo ACL object describing user making request.
Returns:
a CIMInstance representing the state of the instance prior to the update. This is likely usefull only for creating CIM_InstModification indications.
Exceptions:
CIMException CIM_ERR_ACCESS_DENIED CIM_ERR_NOT_SUPPORTED CIM_ERR_INVALID_NAMESPACE CIM_ERR_INVALID_PARAMETER CIM_ERR_INVALID_CLASS CIM_ERR_NOT_FOUND CIM_ERR_FAILED

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 931 of file OW_CIMRepository.cpp.

References OW_NAMESPACE::CIMNULL, cop, OW_NAMESPACE::AssocDbHandle::deleteEntries(), OW_NAMESPACE::WBEMFlags::E_INCLUDE_CLASS_ORIGIN, OW_NAMESPACE::WBEMFlags::E_INCLUDE_QUALIFIERS, OW_NAMESPACE::WBEMFlags::E_NOT_LOCAL_ONLY, OW_NAMESPACE::AssocDb::getHandle(), getInstance(), OW_NAMESPACE::CIMClass::isAssociation(), m_instAssocDb, m_iStore, OW_NAMESPACE::InstanceRepository::modifyInstance(), ns, OW_ASSERT, propertyList, and theClass.

void OW_NAMESPACE::CIMRepository::open const String path  )  [virtual]
 

Open

Exceptions:
IOException. 

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 87 of file OW_CIMRepository.cpp.

References close(), OW_NAMESPACE::GenericHDBRepository::isOpen(), and m_nStore.

void OW_NAMESPACE::CIMRepository::referenceNames const String ns,
const CIMObjectPath path,
CIMObjectPathResultHandlerIFC result,
const String resultClass,
const String role,
OperationContext context
[virtual]
 

This operation is used to enumerate the association objects that refer to a particular target CIM Object (Class or Instance).

Parameters:
ns The namespace.
path The ObjectName input parameter defines the target CIM Object path whose referring object names are to be returned. It may be either a Class name or an Instance name (model path).
result A callback object to handle the object paths as they are received.
resultClass The ResultClass input parameter, if not empty (""), MUST be a valid CIM Class name. It acts as a filter on the returned set of Object Names by mandating that each returned Object Name MUST identify an Instance of this Class (or one of its subclasses), or this Class (or one of its subclasses).
role The Role input parameter, if not empty (""), MUST be a valid Property name. It acts as a filter on the returned set of Object Names by mandating that each returned Object Name MUST identify an Object that refers to the target Instance via a Property whose name matches the value of this parameter.
Exceptions:
CIMException As defined for associators method.

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 1141 of file OW_CIMRepository.cpp.

References _commonReferences(), context, OW_NAMESPACE::WBEMFlags::E_EXCLUDE_CLASS_ORIGIN, OW_NAMESPACE::WBEMFlags::E_EXCLUDE_QUALIFIERS, ns, and result.

void OW_NAMESPACE::CIMRepository::references const String ns,
const CIMObjectPath path,
CIMInstanceResultHandlerIFC result,
const String resultClass,
const String role,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
OperationContext context
[virtual]
 

This operation is used to enumerate the association objects that refer to a particular target CIM Object (Class or Instance).

Parameters:
ns The namespace.
path The path input parameter defines the target CIM Object whose referring Objects are to be returned. This is either a Class name or Instance name (model path).
result A callback object which will handle the instances as they are received.
resultClass The ResultClass input parameter, if not empty (""), MUST be a valid CIM Class name. It acts as a filter on the returned set of Objects by mandating that each returned Object MUST be an Instance of this Class (or one of its subclasses), or this Class (or one of its subclasses).
role The Role input parameter, if not empty (""), MUST be a valid Property name. It acts as a filter on the returned set of Objects by mandating that each returned Objects MUST refer to the target Object via a Property whose name matches the value of this parameter.
includeQualifiers Refer to includeQualifiers for associators.
includeClassOrigin Refer to includeQualifiers for associators.
propertyList Refer to includeQualifiers for associators.
See also:
associators
Exceptions:
CIMException - as defined for associators method.

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 1115 of file OW_CIMRepository.cpp.

References _commonReferences(), context, ns, propertyList, and result.

void OW_NAMESPACE::CIMRepository::referencesClasses const String ns,
const CIMObjectPath path,
CIMClassResultHandlerIFC result,
const String resultClass,
const String role,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList,
OperationContext context
[virtual]
 

This operation is used to enumerate the association objects that refer to a particular target CIM Class.

See also:
references
Exceptions:
CIMException - as defined for associators method.

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 1128 of file OW_CIMRepository.cpp.

References _commonReferences(), context, ns, propertyList, and result.

void OW_NAMESPACE::CIMRepository::setProperty const String ns,
const CIMObjectPath name,
const String propertyName,
const CIMValue cv,
OperationContext context
[virtual]
 

Set a property value on an CIMInstance.

Parameters:
name The object path of the instance
propertyName The name of the property to update
cv The value to set the property to.
aclInfo ACL object describing user making request.
Exceptions:
CIMException 

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 971 of file OW_CIMRepository.cpp.

References _instGetClass(), OW_NAMESPACE::String::c_str(), OW_NAMESPACE::CIMValueCast::castValueToDataType(), OW_NAMESPACE::CIMException::FAILED, OW_NAMESPACE::CIMException::getErrNo(), OW_NAMESPACE::CIMClass::getProperty(), name, OW_NAMESPACE::CIMException::NO_SUCH_PROPERTY, ns, OW_THROWCIMMSG, OW_NAMESPACE::CIMException::setErrNo(), theClass, and OW_NAMESPACE::CIMException::TYPE_MISMATCH.

void OW_NAMESPACE::CIMRepository::setQualifierType const String ns,
const CIMQualifierType qt,
OperationContext context
[virtual]
 

Updates the specified CIM qualifier type in the specified namespace.

Parameters:
name Am CIMObjectPath that identifies the CIM qualifier type.
qt The CIM qualifier type to be updated.
aclInfo ignored
Exceptions:
CIMException If the qualifier type cannot be found or the user does not have write permission to the namespace.

Implements OW_NAMESPACE::RepositoryIFC.

Definition at line 297 of file OW_CIMRepository.cpp.

References m_logger, m_mStore, ns, OW_LOG_DEBUG, OW_NAMESPACE::MetaRepository::setQualifierType(), and OW_NAMESPACE::CIMQualifierType::toString().

void OW_NAMESPACE::CIMRepository::shutdown  )  [virtual]
 

The service must shutdown completely before returning from this function.

All copies of the service environment or objects obtained from it should be set to 0 to avoid circular reference counts.

Implements OW_NAMESPACE::ServiceIFC.

Definition at line 168 of file OW_CIMRepository.cpp.

References close(), m_env, and m_logger.


Friends And Related Function Documentation

friend class CIMRepositoryImpl::instEnumerator [friend]
 

Definition at line 667 of file OW_CIMRepository.hpp.

friend class CIMServer [friend]
 

Definition at line 666 of file OW_CIMRepository.hpp.


Member Data Documentation

const char *const OW_NAMESPACE::CIMRepository::CLASS_ASSOC_REPOS_NAME = "classassociation" [static]
 

Definition at line 64 of file OW_CIMRepository.hpp.

const char *const OW_NAMESPACE::CIMRepository::INST_ASSOC_REPOS_NAME = "instassociation" [static]
 

Definition at line 65 of file OW_CIMRepository.hpp.

const char *const OW_NAMESPACE::CIMRepository::INST_REPOS_NAME = "instances" [static]
 

Definition at line 60 of file OW_CIMRepository.hpp.

bool OW_NAMESPACE::CIMRepository::m_checkReferentialIntegrity [private]
 

Definition at line 658 of file OW_CIMRepository.hpp.

Referenced by createInstance(), and init().

AssocDb OW_NAMESPACE::CIMRepository::m_classAssocDb [private]
 

Definition at line 647 of file OW_CIMRepository.hpp.

Referenced by _staticAssociatorsClass(), _staticReferencesClass(), close(), deleteClass(), and init().

ServiceEnvironmentIFCRef OW_NAMESPACE::CIMRepository::m_env [private]
 

Definition at line 656 of file OW_CIMRepository.hpp.

Referenced by _staticAssociators(), _staticReferences(), createInstance(), enumInstanceNames(), init(), and shutdown().

RWLocker OW_NAMESPACE::CIMRepository::m_instanceLock [private]
 

Definition at line 660 of file OW_CIMRepository.hpp.

AssocDb OW_NAMESPACE::CIMRepository::m_instAssocDb [private]
 

Definition at line 648 of file OW_CIMRepository.hpp.

Referenced by _staticAssociatorNames(), _staticAssociators(), _staticReferenceNames(), _staticReferences(), close(), deleteInstance(), init(), and modifyInstance().

InstanceRepository OW_NAMESPACE::CIMRepository::m_iStore [private]
 

Definition at line 644 of file OW_CIMRepository.hpp.

Referenced by close(), deleteClass(), OW_NAMESPACE::CIMRepositoryImpl::instEnumerator::doHandle(), enumInstanceNames(), enumInstances(), getInstance(), init(), and modifyInstance().

LoggerRef OW_NAMESPACE::CIMRepository::m_logger [private]
 

Definition at line 657 of file OW_CIMRepository.hpp.

Referenced by _staticReferencesClass(), createInstance(), deleteClass(), deleteInstance(), OW_NAMESPACE::CIMRepositoryImpl::instEnumerator::doHandle(), enumClasses(), enumClassNames(), enumInstances(), enumNameSpace(), enumQualifierTypes(), getClass(), getQualifierType(), init(), modifyClass(), setQualifierType(), and shutdown().

MetaRepository OW_NAMESPACE::CIMRepository::m_mStore [private]
 

Definition at line 645 of file OW_CIMRepository.hpp.

Referenced by _getAssociationClasses(), _getClass(), _instGetClass(), close(), deleteClass(), deleteQualifierType(), enumClasses(), enumClassNames(), enumInstanceNames(), enumInstances(), enumQualifierTypes(), getClass(), getQualifierType(), init(), modifyClass(), and setQualifierType().

GenericHDBRepository OW_NAMESPACE::CIMRepository::m_nStore [private]
 

Definition at line 643 of file OW_CIMRepository.hpp.

Referenced by _commonAssociators(), _commonReferences(), checkGetClassRvalAndThrow(), checkGetClassRvalAndThrowInst(), close(), deleteQualifierType(), enumNameSpace(), init(), and open().

RWLocker OW_NAMESPACE::CIMRepository::m_schemaLock [private]
 

Definition at line 659 of file OW_CIMRepository.hpp.

const char *const OW_NAMESPACE::CIMRepository::META_REPOS_NAME = "schema" [static]
 

Definition at line 61 of file OW_CIMRepository.hpp.

const char *const OW_NAMESPACE::CIMRepository::NS_REPOS_NAME = "namespaces" [static]
 

Definition at line 62 of file OW_CIMRepository.hpp.


The documentation for this class was generated from the following files:
Generated on Thu Feb 9 09:16:35 2006 for openwbem by  doxygen 1.4.6