OW_NAMESPACE::InstanceRepository2 Class Reference

#include <OW_InstanceRepository2.hpp>

Collaboration diagram for OW_NAMESPACE::InstanceRepository2:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 InstanceRepository2 (const ServiceEnvironmentIFCRef &env)
 Create a new InstanceRepository object.
 ~InstanceRepository2 ()
void open (::DB_ENV *env,::DB_TXN *txn)
void close ()
void getCIMInstances (const String &ns, const String &className, const CIMClass &requestedClass, const CIMClass &theClass, CIMInstanceResultHandlerIFC &result, WBEMFlags::EDeepFlag deep, WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList=NULL)
void getInstanceNames (const String &ns, const CIMClass &theClass, CIMObjectPathResultHandlerIFC &result)
CIMInstance getCIMInstance (const String &ns, const CIMObjectPath &instanceName, const CIMClass &theClass, WBEMFlags::ELocalOnlyFlag localOnly, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, WBEMFlags::EIncludeClassOriginFlag includeClassOrigin, const StringArray *propertyList)
 Retrieve a specific instance.
void deleteInstance (const String &ns, const CIMObjectPath &cop, const CIMClass &theClass)
 Delete an existing instance from the store.
void createInstance (const String &ns, const CIMClass &theClass, const CIMInstance &ci)
 Creates a instance in the store.
void modifyInstance (const String &ns, const CIMObjectPath &cop, const CIMClass &theClass, const CIMInstance &ci, const CIMInstance &oldInst, WBEMFlags::EIncludeQualifiersFlag includeQualifiers, const StringArray *propertyList)
 Update an instance.
bool classHasInstances (const CIMObjectPath &classPath)
 Determin if a given class has instances.

Private Member Functions

String makeClassKey (const String &ns, const String &className)
String makeInstanceKey (const String &ns, const CIMObjectPath &cop, const CIMClass &theClass)
void _removeDuplicatedQualifiers (CIMInstance &inst, const CIMClass &theClass)

Private Attributes

dbDatabase m_instanceNameLists
dbDatabase m_instances

Detailed Description

Definition at line 44 of file OW_InstanceRepository2.hpp.


Constructor & Destructor Documentation

OW_NAMESPACE::InstanceRepository2::InstanceRepository2 const ServiceEnvironmentIFCRef env  )  [inline]
 

Create a new InstanceRepository object.

Definition at line 50 of file OW_InstanceRepository2.hpp.

OW_NAMESPACE::InstanceRepository2::~InstanceRepository2  ) 
 

Definition at line 52 of file OW_InstanceRepository2.cpp.

References close().


Member Function Documentation

void OW_NAMESPACE::InstanceRepository2::_removeDuplicatedQualifiers CIMInstance inst,
const CIMClass theClass
[private]
 

Definition at line 494 of file OW_InstanceRepository2.cpp.

References OW_NAMESPACE::CIMClass::getQualifier(), OW_NAMESPACE::CIMInstance::getQualifiers(), OW_NAMESPACE::CIMQualifier::getValue(), inst, and theClass.

bool OW_NAMESPACE::InstanceRepository2::classHasInstances const CIMObjectPath classPath  ) 
 

Determin if a given class has instances.

Parameters:
classPath The object path for the class to check.
Returns:
true if the class specified has instances.

Definition at line 408 of file OW_InstanceRepository2.cpp.

void OW_NAMESPACE::InstanceRepository2::close  ) 
 

Definition at line 66 of file OW_InstanceRepository2.cpp.

References OW_NAMESPACE::dbDatabase::close(), m_instanceNameLists, and m_instances.

Referenced by OW_NAMESPACE::CIMRepository2::close(), and ~InstanceRepository2().

void OW_NAMESPACE::InstanceRepository2::createInstance const String ns,
const CIMClass theClass,
const CIMInstance ci
 

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
Returns:
The object path of the newly added CIMInstance. This will be cop + the keys from ci.
Exceptions:
HDBException 
CIMException 
IOException 

Definition at line 378 of file OW_InstanceRepository2.cpp.

void OW_NAMESPACE::InstanceRepository2::deleteInstance const String ns,
const CIMObjectPath cop,
const CIMClass theClass
 

Delete an existing instance from the store.

Parameters:
cop The CIMObectPath that specifies the instance
theClass The CIM class of the instance to delete
Exceptions:
HDBException 
CIMException 
IOException 

Definition at line 357 of file OW_InstanceRepository2.cpp.

CIMInstance OW_NAMESPACE::InstanceRepository2::getCIMInstance const String ns,
const CIMObjectPath instanceName,
const CIMClass theClass,
WBEMFlags::ELocalOnlyFlag  localOnly,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList
 

Retrieve a specific instance.

Parameters:
ns The namespace
instanceName The CIMObectPath that specifies the instance
theClass The CIM class of the instance to retrieve
Returns:
An CIMInstance object
Exceptions:
HDBException 
CIMException 
IOException 

Definition at line 323 of file OW_InstanceRepository2.cpp.

References OW_NAMESPACE::CIMNULL.

Referenced by OW_NAMESPACE::CIMRepository2::getInstance().

void OW_NAMESPACE::InstanceRepository2::getCIMInstances const String ns,
const String className,
const CIMClass requestedClass,
const CIMClass theClass,
CIMInstanceResultHandlerIFC result,
WBEMFlags::EDeepFlag  deep,
WBEMFlags::ELocalOnlyFlag  localOnly,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
WBEMFlags::EIncludeClassOriginFlag  includeClassOrigin,
const StringArray propertyList = NULL
 

Definition at line 291 of file OW_InstanceRepository2.cpp.

Referenced by OW_NAMESPACE::CIMRepository2::enumInstances().

void OW_NAMESPACE::InstanceRepository2::getInstanceNames const String ns,
const CIMClass theClass,
CIMObjectPathResultHandlerIFC result
 

Definition at line 261 of file OW_InstanceRepository2.cpp.

Referenced by OW_NAMESPACE::CIMRepository2::enumInstanceNames().

String OW_NAMESPACE::InstanceRepository2::makeClassKey const String ns,
const String className
[private]
 

Definition at line 247 of file OW_InstanceRepository2.cpp.

References OW_NAMESPACE::String::empty(), ns, and OW_NAMESPACE::String::substring().

Referenced by makeInstanceKey().

String OW_NAMESPACE::InstanceRepository2::makeInstanceKey const String ns,
const CIMObjectPath cop,
const CIMClass theClass
[private]
 

Definition at line 131 of file OW_InstanceRepository2.cpp.

References cop, OW_NAMESPACE::CIMObjectPath::getClassName(), OW_NAMESPACE::CIMClass::getKeys(), OW_NAMESPACE::CIMException::INVALID_PARAMETER, makeClassKey(), ns, OW_THROWCIMMSG, OW_NAMESPACE::StringBuffer::releaseString(), OW_NAMESPACE::Array< T >::size(), and theClass.

void OW_NAMESPACE::InstanceRepository2::modifyInstance const String ns,
const CIMObjectPath cop,
const CIMClass theClass,
const CIMInstance ci,
const CIMInstance oldInst,
WBEMFlags::EIncludeQualifiersFlag  includeQualifiers,
const StringArray propertyList
 

Update an instance.

Parameters:
cop The CIMObectPath that specifies the instance
theClass The class the cim instance belongs to.
ci The instance with the new values
Exceptions:
HDBException 
CIMException 
IOException 

Definition at line 428 of file OW_InstanceRepository2.cpp.

Referenced by OW_NAMESPACE::CIMRepository2::modifyInstance().

void OW_NAMESPACE::InstanceRepository2::open ::DB_ENV *  env,
::DB_TXN *  txn
 

Definition at line 74 of file OW_InstanceRepository2.cpp.

References OW_NAMESPACE::dbDatabase::E_DUPLICATES, OW_NAMESPACE::dbDatabase::E_NO_DUPLICATES, m_instanceNameLists, m_instances, and OW_NAMESPACE::dbDatabase::open().


Member Data Documentation

dbDatabase OW_NAMESPACE::InstanceRepository2::m_instanceNameLists [private]
 

Definition at line 141 of file OW_InstanceRepository2.hpp.

Referenced by close(), and open().

dbDatabase OW_NAMESPACE::InstanceRepository2::m_instances [private]
 

Definition at line 142 of file OW_InstanceRepository2.hpp.

Referenced by close(), and open().


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