version 1.10, 2006/01/30 16:17:05
|
version 1.11, 2006/05/02 20:26:59
|
|
|
#ifndef Pegasus_ObjectNormalizer_h | #ifndef Pegasus_ObjectNormalizer_h |
#define Pegasus_ObjectNormalizer_h | #define Pegasus_ObjectNormalizer_h |
| |
|
#include <Pegasus/Common/AutoPtr.h> |
#include <Pegasus/Common/CIMClass.h> | #include <Pegasus/Common/CIMClass.h> |
#include <Pegasus/Common/CIMInstance.h> | #include <Pegasus/Common/CIMInstance.h> |
#include <Pegasus/Common/String.h> | #include <Pegasus/Common/String.h> |
|
|
#include <Pegasus/Common/Linkage.h> | #include <Pegasus/Common/Linkage.h> |
| |
PEGASUS_NAMESPACE_BEGIN | PEGASUS_NAMESPACE_BEGIN |
| |
|
class PEGASUS_COMMON_LINKAGE NormalizerContext |
|
{ |
|
public: |
|
virtual ~NormalizerContext() {}; |
|
|
|
virtual CIMClass getClass( |
|
const CIMNamespaceName& nameSpace, |
|
const CIMName& name) = 0; |
|
|
|
virtual Array<CIMName> enumerateClassNames( |
|
const CIMNamespaceName& nameSpace, const CIMName& className, |
|
bool deepInheritance) = 0; |
|
|
|
virtual AutoPtr<NormalizerContext> clone() = 0; |
|
}; |
|
|
// TODO: add documentation | // TODO: add documentation |
class PEGASUS_COMMON_LINKAGE ObjectNormalizer | class PEGASUS_COMMON_LINKAGE ObjectNormalizer |
{ | { |
|
|
ObjectNormalizer( | ObjectNormalizer( |
const CIMClass & cimClass, | const CIMClass & cimClass, |
Boolean includeQualifiers, | Boolean includeQualifiers, |
Boolean includeClassOrigin); |
Boolean includeClassOrigin, |
|
const CIMNamespaceName& nameSpace, |
|
AutoPtr<NormalizerContext> & context); |
| |
CIMObjectPath processClassObjectPath(const CIMObjectPath & cimObjectPath) const; | CIMObjectPath processClassObjectPath(const CIMObjectPath & cimObjectPath) const; |
CIMObjectPath processInstanceObjectPath(const CIMObjectPath & cimObjectPath) const; | CIMObjectPath processInstanceObjectPath(const CIMObjectPath & cimObjectPath) const; |
|
|
CIMInstance processInstance(const CIMInstance & cimInstance) const; | CIMInstance processInstance(const CIMInstance & cimInstance) const; |
//CIMIndication processIndication(const CIMIndication & cimIndication); | //CIMIndication processIndication(const CIMIndication & cimIndication); |
| |
|
static CIMProperty _processProperty( |
|
CIMConstProperty & referenceProperty, |
|
CIMConstProperty & cimProperty, |
|
Boolean includeQualifiers, |
|
Boolean includeClassOrigin, |
|
NormalizerContext * context, |
|
const CIMNamespaceName & nameSpace); |
|
|
private: | private: |
CIMClass _cimClass; | CIMClass _cimClass; |
| |
Boolean _includeQualifiers; | Boolean _includeQualifiers; |
Boolean _includeClassOrigin; | Boolean _includeClassOrigin; |
|
AutoPtr<NormalizerContext> _context; |
|
CIMNamespaceName _nameSpace; |
}; | }; |
| |
PEGASUS_NAMESPACE_END | PEGASUS_NAMESPACE_END |