version 1.18, 2002/08/27 17:42:26
|
version 1.18.2.1, 2002/10/28 15:43:21
|
|
|
// | // |
// Author: Mike Brasher (mbrasher@bmc.com) | // Author: Mike Brasher (mbrasher@bmc.com) |
// | // |
// Modified By: Carol Ann Krug Graves, Hewlett-Packard Company |
// Modified By: |
// (carolann_graves@hp.com) |
|
// Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) |
|
// | // |
//%///////////////////////////////////////////////////////////////////////////// | //%///////////////////////////////////////////////////////////////////////////// |
| |
#include <cstring> | #include <cstring> |
#include <Pegasus/Common/InternalException.h> |
|
#include "CIMScope.h" | #include "CIMScope.h" |
|
#include "XmlWriter.h" |
| |
PEGASUS_NAMESPACE_BEGIN | PEGASUS_NAMESPACE_BEGIN |
| |
const CIMScope CIMScope::NONE = 0; |
const Uint32 CIMScope::NONE = 0; |
const CIMScope CIMScope::CLASS = 1; |
const Uint32 CIMScope::CLASS = 1; |
const CIMScope CIMScope::ASSOCIATION = 2; |
const Uint32 CIMScope::ASSOCIATION = 2; |
const CIMScope CIMScope::INDICATION = 4; |
const Uint32 CIMScope::INDICATION = 4; |
const CIMScope CIMScope::PROPERTY = 8; |
const Uint32 CIMScope::PROPERTY = 8; |
const CIMScope CIMScope::REFERENCE = 16; |
const Uint32 CIMScope::REFERENCE = 16; |
const CIMScope CIMScope::METHOD = 32; |
const Uint32 CIMScope::METHOD = 32; |
const CIMScope CIMScope::PARAMETER = 64; |
const Uint32 CIMScope::PARAMETER = 64; |
const CIMScope CIMScope::ANY = CIMScope::CLASS + CIMScope::ASSOCIATION + |
const Uint32 CIMScope::ANY = (1 | 2 | 4 | 8 | 16 | 32 | 64 ); |
CIMScope::INDICATION + CIMScope::PROPERTY + |
|
CIMScope::REFERENCE + CIMScope::METHOD + |
|
CIMScope::PARAMETER; |
|
| |
CIMScope::CIMScope () |
String ScopeToString(Uint32 scope) |
: cimScope (CIMScope::NONE.cimScope) |
|
{ |
|
} |
|
|
|
CIMScope::CIMScope (const CIMScope & scope) |
|
: cimScope (scope.cimScope) |
|
{ |
|
} |
|
|
|
CIMScope::CIMScope (const Uint32 scope) |
|
: cimScope (scope) |
|
{ |
|
PEGASUS_ASSERT (scope < 128); |
|
} |
|
|
|
CIMScope & CIMScope::operator= (const CIMScope & scope) |
|
{ |
|
this->cimScope = scope.cimScope; |
|
return *this; |
|
} |
|
|
|
void CIMScope::addScope (const CIMScope & scope) |
|
{ |
|
this->cimScope |= scope.cimScope; |
|
} |
|
|
|
Boolean CIMScope::hasScope (const CIMScope & scope) const |
|
{ |
|
return ((this->cimScope & scope.cimScope) == scope.cimScope); |
|
} |
|
|
|
Boolean CIMScope::equal (const CIMScope & scope) const |
|
{ |
|
return (this->cimScope == scope.cimScope); |
|
} |
|
|
|
CIMScope CIMScope::operator+ (const CIMScope & scope) const |
|
{ |
|
return CIMScope(this->cimScope | scope.cimScope); |
|
} |
|
|
|
String CIMScope::toString () const |
|
{ | { |
String tmp; | String tmp; |
| |
if (this->hasScope (CIMScope::CLASS)) |
if (scope & CIMScope::CLASS) |
tmp.append("CLASS "); |
tmp += "CLASS "; |
| |
if (this->hasScope (CIMScope::ASSOCIATION)) |
if (scope & CIMScope::ASSOCIATION) |
tmp.append("ASSOCIATION "); |
tmp += "ASSOCIATION "; |
| |
if (this->hasScope (CIMScope::INDICATION)) |
if (scope & CIMScope::INDICATION) |
tmp.append("INDICATION "); |
tmp += "INDICATION "; |
| |
if (this->hasScope (CIMScope::PROPERTY)) |
if (scope & CIMScope::PROPERTY) |
tmp.append("PROPERTY "); |
tmp += "PROPERTY "; |
| |
if (this->hasScope (CIMScope::REFERENCE)) |
if (scope & CIMScope::REFERENCE) |
tmp.append("REFERENCE "); |
tmp += "REFERENCE "; |
| |
if (this->hasScope (CIMScope::METHOD)) |
if (scope & CIMScope::METHOD) |
tmp.append("METHOD "); |
tmp += "METHOD "; |
| |
if (this->hasScope (CIMScope::PARAMETER)) |
if (scope & CIMScope::PARAMETER) |
tmp.append("PARAMETER "); |
tmp += "PARAMETER "; |
| |
if (tmp.size()) | if (tmp.size()) |
tmp.remove(tmp.size() - 1); | tmp.remove(tmp.size() - 1); |