version 1.22, 2002/05/15 10:34:28
|
version 1.34, 2002/08/20 17:39:37
|
|
|
//%///////////////////////////////////////////////////////////////////////////// | //%///////////////////////////////////////////////////////////////////////////// |
// | // |
// Copyright (c) 2000, 2001 The Open group, BMC Software, Tivoli Systems, IBM |
// Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM, |
|
// The Open Group, Tivoli Systems |
// | // |
// 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 |
|
|
// Author: Mike Brasher (mbrasher@bmc.com) | // Author: Mike Brasher (mbrasher@bmc.com) |
// | // |
// Modified By: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) | // Modified By: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) |
|
// Carol Ann Krug Graves, Hewlett-Packard Company |
|
// (carolann_graves@hp.com) |
// | // |
//%///////////////////////////////////////////////////////////////////////////// | //%///////////////////////////////////////////////////////////////////////////// |
| |
|
|
#define Pegasus_Method_h | #define Pegasus_Method_h |
| |
#include <Pegasus/Common/Config.h> | #include <Pegasus/Common/Config.h> |
|
#include <Pegasus/Common/Linkage.h> |
#include <Pegasus/Common/String.h> | #include <Pegasus/Common/String.h> |
|
#include <Pegasus/Common/CIMName.h> |
#include <Pegasus/Common/CIMParameter.h> | #include <Pegasus/Common/CIMParameter.h> |
#include <Pegasus/Common/CIMQualifier.h> | #include <Pegasus/Common/CIMQualifier.h> |
#include <Pegasus/Common/CIMType.h> | #include <Pegasus/Common/CIMType.h> |
| |
PEGASUS_NAMESPACE_BEGIN | PEGASUS_NAMESPACE_BEGIN |
| |
class DeclContext; |
class Resolver; |
class CIMConstMethod; | class CIMConstMethod; |
class CIMMethodRep; | class CIMMethodRep; |
| |
|
// ATTN: remove the classOrigin and propagated parameters. |
/** Class CIMMethod - This class defines the operations associated with | /** Class CIMMethod - This class defines the operations associated with |
manipulation of the Pegasus implementation of the CIM CIMMethod. Within | manipulation of the Pegasus implementation of the CIM CIMMethod. Within |
this class, methods are provides for creation, deletion, and manipulation | this class, methods are provides for creation, deletion, and manipulation |
of method declarations. | of method declarations. |
|
|
// ATTN: remove the classOrigin and propagated parameters. |
|
*/ | */ |
class PEGASUS_COMMON_LINKAGE CIMMethod | class PEGASUS_COMMON_LINKAGE CIMMethod |
{ | { |
|
|
| |
/** Creates a CIM method with the specified name, type, and classOrigin | /** Creates a CIM method with the specified name, type, and classOrigin |
@param name for the method | @param name for the method |
@param type ATTN |
@param type CIM data type of method to create |
@param classOrigin | @param classOrigin |
@param propagated | @param propagated |
@return Throws IllegalName if name argument not legal CIM identifier. |
|
*/ | */ |
CIMMethod( | CIMMethod( |
const String& name, |
const CIMName& name, |
CIMType type, | CIMType type, |
const String& classOrigin = String::EMPTY, |
const CIMName& classOrigin = CIMName(), |
Boolean propagated = false); | Boolean propagated = false); |
| |
/** Desctructor. */ | /** Desctructor. */ |
|
|
CIMMethod& operator=(const CIMMethod& x); | CIMMethod& operator=(const CIMMethod& x); |
| |
/** getName - Gets the name of the method | /** getName - Gets the name of the method |
@return String with the name of the method |
@return CIMName with the name of the method |
*/ | */ |
const String& getName() const; |
const CIMName& getName() const; |
| |
/** setName - Set the method name | /** setName - Set the method name |
@param name | @param name |
@exception IllegalName if name argument not legal CIM identifier. |
|
*/ | */ |
void setName(const String& name); |
void setName(const CIMName& name); |
| |
/** getType - gets the method type | /** getType - gets the method type |
@return The CIM method type for this method. | @return The CIM method type for this method. |
|
|
| |
/** getClassOrigin - Returns the class in which this method | /** getClassOrigin - Returns the class in which this method |
was defined. | was defined. |
@return String containing the classOrigin field. |
@return CIMName containing the classOrigin field. |
*/ | */ |
const String& getClassOrigin() const; |
const CIMName& getClassOrigin() const; |
| |
/** setClassOrigin - Set the ClassOrigin attribute with | /** setClassOrigin - Set the ClassOrigin attribute with |
the classname defined on input | the classname defined on input |
@param classOrigin - String parameter defining the name |
@param classOrigin - CIMName parameter defining the name |
of the class origin | of the class origin |
*/ | */ |
void setClassOrigin(const String& classOrigin); |
void setClassOrigin(const CIMName& classOrigin); |
| |
/** getPropagated - Tests the propogated qualifier |
/** getPropagated - Tests the propagated qualifier |
@return - returns True if method is propogated |
@return - returns True if method is propagated |
*/ | */ |
Boolean getPropagated() const; | Boolean getPropagated() const; |
| |
|
|
| |
/** addQualifier - Adds a Qualifier to the method object. | /** addQualifier - Adds a Qualifier to the method object. |
@param CIMQualifier to be added | @param CIMQualifier to be added |
@return Throws AlreadyExists excetpion if the qualifier already exists |
@return This CIMMethod object |
in the method |
@exception AlreadyExistsException |
@exception AlreadyExists exception |
|
*/ | */ |
CIMMethod& addQualifier(const CIMQualifier& x); | CIMMethod& addQualifier(const CIMQualifier& x); |
| |
|
|
@param name Name of qualifier to be found. | @param name Name of qualifier to be found. |
@return index of the parameter if found; otherwise PEG_NOT_FOUND. | @return index of the parameter if found; otherwise PEG_NOT_FOUND. |
*/ | */ |
Uint32 findQualifier(const String& name) const; |
Uint32 findQualifier(const CIMName& name) const; |
|
|
/** existsQualifier - returns the position of the qualifier with |
|
the given name. |
|
@param name Name of qualifier to be found. |
|
@return index of the parameter if found; otherwise PEG_NOT_FOUND. |
|
*/ |
|
Boolean existsQualifier(const String& name) const; |
|
| |
/** getQualifier - Gets the CIMQualifier defined by the index | /** getQualifier - Gets the CIMQualifier defined by the index |
input as a parameter. | input as a parameter. |
@param Index of the qualifier requested. | @param Index of the qualifier requested. |
@return CIMQualifier object or exception | @return CIMQualifier object or exception |
@exception OutOfBounds exception if the index is outside the range of |
@exception IndexOutOfBoundsException exception if the index is |
parameters available from the CIMMethod. |
outside the range of parameters available from the CIMMethod. |
*/ | */ |
CIMQualifier getQualifier(Uint32 pos); | CIMQualifier getQualifier(Uint32 pos); |
| |
|
|
position input as a parameter. | position input as a parameter. |
@param Position of the qualifier requested. | @param Position of the qualifier requested. |
@return CIMQualifier object or exception | @return CIMQualifier object or exception |
@exception OutOfBounds exception if the index is outside the range of |
@exception IndexOutOfBoundsException exception if the index is |
parameters available from the CIMMethod. |
outside the range of parameters available from the CIMMethod. |
*/ | */ |
void removeQualifier(Uint32 pos); | void removeQualifier(Uint32 pos); |
| |
|
|
@param name Name of parameter to be found. | @param name Name of parameter to be found. |
@return index of the parameter if found; otherwise PEG_NOT_FOUND. | @return index of the parameter if found; otherwise PEG_NOT_FOUND. |
*/ | */ |
Uint32 findParameter(const String& name) const; |
Uint32 findParameter(const CIMName& name) const; |
|
|
/** getParameter - ATTN: */ |
|
CIMParameter getParameter(Uint32 pos); |
|
| |
/** getParameter - Gets the parameter defined by the index | /** getParameter - Gets the parameter defined by the index |
input as a parameter. | input as a parameter. |
@param index for the parameter to be returned. | @param index for the parameter to be returned. |
@return CIMParameter requested. | @return CIMParameter requested. |
@Exception OutOfBounds exception is thrown if the index is outside the |
@exception IndexOutOfBoundsException exception is thrown if the |
range of available parameters |
index is outside the range of available parameters |
*/ | */ |
|
CIMParameter getParameter(Uint32 pos); |
|
|
|
/** getParameter - const form */ |
CIMConstParameter getParameter(Uint32 pos) const; | CIMConstParameter getParameter(Uint32 pos) const; |
| |
|
/** removeParameter - Removes the CIMParameter defined by the |
|
specified index |
|
|
|
@param pos index of the parameter to be removed |
|
|
|
@exception IndexOutOfBoundsException if the index is outside the |
|
range of parameters available from the CIMMethod |
|
*/ |
|
void removeParameter (Uint32 pos); |
|
|
/** getParameterCount - Gets the count of the numbeer of | /** getParameterCount - Gets the count of the numbeer of |
Parameters attached to the CIMMethod. | Parameters attached to the CIMMethod. |
@retrun - count of the number of parameters attached to the CIMMethod. | @retrun - count of the number of parameters attached to the CIMMethod. |
*/ | */ |
Uint32 getParameterCount() const; | Uint32 getParameterCount() const; |
| |
#ifdef PEGASUS_INTERNALONLY |
/** |
/** resolve - resolves and completes the CIMMethod */ |
Determines if the object has not been initialized. |
void resolve( |
|
DeclContext* declContext, |
|
const String& nameSpace, |
|
const CIMConstMethod& method); |
|
|
|
/** resolve - Resolves and completes the CIMMethod */ |
|
void resolve( |
|
DeclContext* declContext, |
|
const String& nameSpace); |
|
|
|
/** Returns true if CIMMethod refers to a null pointer */ |
|
Boolean isNull() const; |
|
#endif |
|
| |
/** toMof - puts MOF encoding of this object into out arguemnt. |
@return True if the object has not been initialized, |
|
False otherwise |
*/ | */ |
void toMof(Array<Sint8>& out) const; |
Boolean isUninitialized() const; |
| |
/** identical - Returns true if this method is identical to the | /** identical - Returns true if this method is identical to the |
one given by the argument x. | one given by the argument x. |
|
|
| |
CIMMethodRep* _rep; | CIMMethodRep* _rep; |
friend class CIMConstMethod; | friend class CIMConstMethod; |
|
friend class Resolver; |
friend class XmlWriter; | friend class XmlWriter; |
|
friend class MofWriter; |
}; | }; |
| |
class PEGASUS_COMMON_LINKAGE CIMConstMethod | class PEGASUS_COMMON_LINKAGE CIMConstMethod |
|
|
| |
CIMConstMethod(const CIMMethod& x); | CIMConstMethod(const CIMMethod& x); |
| |
// Throws IllegalName if name argument not legal CIM identifier. |
|
CIMConstMethod( | CIMConstMethod( |
const String& name, |
const CIMName& name, |
CIMType type, | CIMType type, |
const String& classOrigin = String::EMPTY, |
const CIMName& classOrigin = CIMName(), |
Boolean propagated = false); | Boolean propagated = false); |
| |
~CIMConstMethod(); | ~CIMConstMethod(); |
|
|
| |
CIMConstMethod& operator=(const CIMMethod& x); | CIMConstMethod& operator=(const CIMMethod& x); |
| |
const String& getName() const; |
const CIMName& getName() const; |
| |
CIMType getType() const; | CIMType getType() const; |
| |
const String& getClassOrigin() const; |
const CIMName& getClassOrigin() const; |
| |
Boolean getPropagated() const; | Boolean getPropagated() const; |
| |
Uint32 findQualifier(const String& name) const; |
Uint32 findQualifier(const CIMName& name) const; |
| |
CIMConstQualifier getQualifier(Uint32 pos) const; | CIMConstQualifier getQualifier(Uint32 pos) const; |
| |
Uint32 getQualifierCount() const; | Uint32 getQualifierCount() const; |
| |
Uint32 findParameter(const String& name) const; |
Uint32 findParameter(const CIMName& name) const; |
| |
CIMConstParameter getParameter(Uint32 pos) const; | CIMConstParameter getParameter(Uint32 pos) const; |
| |
Uint32 getParameterCount() const; | Uint32 getParameterCount() const; |
| |
#ifdef PEGASUS_INTERNALONLY |
Boolean isUninitialized() const; |
Boolean isNull() const; |
|
#endif |
|
| |
Boolean identical(const CIMConstMethod& x) const; | Boolean identical(const CIMConstMethod& x) const; |
| |
|
|
friend class CIMMethod; | friend class CIMMethod; |
friend class CIMMethodRep; | friend class CIMMethodRep; |
friend class XmlWriter; | friend class XmlWriter; |
|
friend class MofWriter; |
}; | }; |
| |
#define PEGASUS_ARRAY_T CIMMethod | #define PEGASUS_ARRAY_T CIMMethod |
# include "ArrayInter.h" |
# include <Pegasus/Common/ArrayInter.h> |
#undef PEGASUS_ARRAY_T | #undef PEGASUS_ARRAY_T |
| |
PEGASUS_NAMESPACE_END | PEGASUS_NAMESPACE_END |