version 1.1, 2004/05/27 22:11:48
|
version 1.9.10.3, 2006/03/07 18:45:46
|
|
|
//%2003//////////////////////////////////////////////////////////////////////// |
//%2006//////////////////////////////////////////////////////////////////////// |
// | // |
// Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Development |
// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development |
// Company, L. P., IBM Corp., The Open Group, Tivoli Systems. |
// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems. |
// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L. P.; | // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L. P.; |
// IBM Corp.; EMC Corporation, The Open Group. | // IBM Corp.; EMC Corporation, The Open Group. |
|
// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.; |
|
// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group. |
|
// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.; |
|
// EMC Corporation; VERITAS Software Corporation; The Open Group. |
|
// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.; |
|
// EMC Corporation; Symantec Corporation; The Open Group. |
// | // |
// Permission is hereby granted, free of charge, to any person obtaining a copy | // Permission is hereby granted, free of charge, to any person obtaining a copy |
// of this software and associated documentation files (the "Software"), to | // of this software and associated documentation files (the "Software"), to |
|
|
| |
#include <Pegasus/Common/CIMClass.h> | #include <Pegasus/Common/CIMClass.h> |
#include <Pegasus/Common/CIMInstance.h> | #include <Pegasus/Common/CIMInstance.h> |
#include <Pegasus/Common/CIMIndication.h> |
|
#include <Pegasus/Common/CIMProperty.h> |
|
#include <Pegasus/Common/CIMMethod.h> |
|
#include <Pegasus/Common/CIMParameter.h> |
|
#include <Pegasus/Common/CIMQualifier.h> |
|
#include <Pegasus/Common/String.h> | #include <Pegasus/Common/String.h> |
#include <Pegasus/Common/DeclContext.h> |
|
#include <Pegasus/Common/Linkage.h> | #include <Pegasus/Common/Linkage.h> |
| |
#include <Pegasus/Repository/CIMRepository.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; |
|
}; |
|
|
// TODO: add documentation | // TODO: add documentation |
class PEGASUS_COMMON_LINKAGE ObjectNormalizer | class PEGASUS_COMMON_LINKAGE ObjectNormalizer |
{ | { |
public: | public: |
ObjectNormalizer(CIMRepository & repository); |
ObjectNormalizer(void); |
|
ObjectNormalizer( |
CIMClass normalizeClass( |
|
const CIMClass & cimClass, | const CIMClass & cimClass, |
const Boolean localOnly, |
Boolean includeQualifiers, |
const Boolean includeQualifiers, |
Boolean includeClassOrigin, |
const Boolean includeClassOrigin, |
const CIMNamespaceName& nameSpace, |
const CIMPropertyList & propertyList); |
NormalizerContext * context=0); |
|
|
CIMInstance normalizeInstance( |
CIMObjectPath processClassObjectPath(const CIMObjectPath & cimObjectPath) const; |
const CIMInstance & cimInstance, |
CIMObjectPath processInstanceObjectPath(const CIMObjectPath & cimObjectPath) const; |
const Boolean localOnly, |
|
const Boolean includeQualifiers, |
//CIMClass processClass(const CIMClass & cimClass) const; |
const Boolean includeClassOrigin, |
CIMInstance processInstance(const CIMInstance & cimInstance) const; |
const CIMPropertyList & propertyList); |
//CIMIndication processIndication(const CIMIndication & cimIndication); |
|
|
Array<CIMInstance> normalizeInstances( |
|
const Array<CIMInstance> & cimInstances, |
|
const Boolean localOnly, |
|
const Boolean includeQualifiers, |
|
const Boolean includeClassOrigin, |
|
const CIMPropertyList & propertyList); |
|
|
|
CIMIndication normalizeIndication( |
|
const CIMIndication & cimIndication, |
|
const Boolean localOnly, |
|
const Boolean includeQualifiers, |
|
const Boolean includeClassOrigin, |
|
const CIMPropertyList & propertyList); |
|
| |
private: | private: |
CIMRepository & _repository; |
CIMClass _cimClass; |
| |
|
Boolean _includeQualifiers; |
|
Boolean _includeClassOrigin; |
|
NormalizerContext * _context; |
|
CIMNamespaceName _nameSpace; |
}; | }; |
| |
PEGASUS_NAMESPACE_END | PEGASUS_NAMESPACE_END |