version 1.32, 2002/07/31 22:05:08
|
version 1.41, 2003/11/28 18:35:09
|
|
|
//%///////////////////////////////////////////////////////////////////////////// |
//%2003//////////////////////////////////////////////////////////////////////// |
// | // |
// Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM, |
// Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Development |
// 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.; |
|
// IBM Corp.; EMC 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 |
|
|
class CIMConstMethod; | class CIMConstMethod; |
class CIMMethodRep; | class CIMMethodRep; |
| |
// ATTN: remove the classOrigin and propagated parameters. |
/** The CIMMethod class is used to represent CIM methods in Pegasus. A Pegasus CIMMethod |
/** Class CIMMethod - This class defines the operations associated with |
consists of the following entities: |
manipulation of the Pegasus implementation of the CIM CIMMethod. Within |
<ul> |
this class, methods are provides for creation, deletion, and manipulation |
<li>Name of the method, a CIMName. The name must be a legal name for a |
of method declarations. |
CIMProperty or Method \Ref{CIMName}. |
|
|
|
<li>CIM type of the return value of the method, a \Ref{CIMType}. This is any |
|
of the predefined CIM types (for example: Boolean). |
|
|
|
<li>Optional qualifiers (see \Ref{CIMQualifier}) for the method. A method |
|
can contain zero or more CIMQualifiers and methods are provided to |
|
manipulate the set of qualifiers attached to a CIMMethod object. |
|
|
|
<li>Optional parameters (see \Ref{CIMParameter} for the method which are |
|
the parameters to be placed on a CIM Method operation. A CIMMethod can |
|
contain zero or more CIMParameters and methods are provided in CIMMethod |
|
to manipulate the set of CIMParameters attached to a CIMMethod object. |
|
</ul> |
|
In addition a CIMMethod contains the following internal attributes: |
|
<ul> |
|
<li><b>propagated</b> - An attribute defining whether this CIMMethod is |
|
propagated from a superclass. Note that this is normally set as part of |
|
completing the definition of objects (resolving) when they are placed in a |
|
repository and is NOT automatically set when creating a local object. It |
|
is part of the context of the object within the repository. It can only |
|
logically be set in context of the superclass of which this CIMMethod is |
|
defined. |
|
<li><b>ClassOrigin</b> - An attribute defining the superclass in which this |
|
CIMMethod was originally defined. This is normally set within the context |
|
of the CIM Server context of other CIM objects (for example, a |
|
repository). This attribute is available from objects retrieved from the |
|
CIM Server, for example and provides information on the defintion of this method in the class hiearchy |
|
(this object or a superclass or instance of a superclass)was originally |
|
defined. Together the propagated and ClassOrigin attributes can be used |
|
to determine if methods originated with the current object or were |
|
inherited from higher levels in the hiearchy. |
|
</ul> |
|
CIMMethods are generally in the context of a CIMClass. |
|
|
|
CIMMethod is a shared class that uses shared representations, meaning that multiple |
|
CIMMethods objects may refer to the came copy of data. Assignment and copy |
|
operators create new references to the same data, not distinct copies. A distinct copy |
|
may be created using teh clone method. |
|
{@link Shared Classes} |
|
@see CIMConstMethod |
|
@see CIMParameters |
|
@see CIMQualifiers |
|
@see CIMType |
|
@see CIMClass |
*/ | */ |
class PEGASUS_COMMON_LINKAGE CIMMethod | class PEGASUS_COMMON_LINKAGE CIMMethod |
{ | { |
public: | public: |
| |
/** Creates and instantiates a CIM method. */ |
/** Creates a new unitialized CIMMethod object. |
|
The only thing that can be done with this object is to copy another object |
|
into it. Other methods such as setName, etc. will fail with an |
|
UnitializedObjectException. The object has the state unitialized which |
|
can be tested with the isUnitialized() method. |
|
@see isUnitialized() |
|
@see UnitializedObjectException |
|
*/ |
CIMMethod(); | CIMMethod(); |
| |
/** Creates and instantiates a CIM method from another method instance |
/** Creates a new CIMMethod object from another CIMMethod object. |
@return pointer to the new method instance |
The new CIMMethodObject references the same copy of data as the |
|
specified object; no copy is made. |
|
@param x CIMMethod object from which to create the new CIMMethod object. |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
const CIMMethod cm1(m1); |
|
</pre> |
|
{@link Shared Classes} |
*/ | */ |
CIMMethod(const CIMMethod& x); | CIMMethod(const CIMMethod& x); |
| |
/** Creates a CIM method with the specified name, type, and classOrigin |
/** Creates a CIMMethod object with the specified name and other input attributes. |
@param name for the method |
@param name CIMName defining the name for the method. |
@param type CIM data type of method to create |
|
@param classOrigin |
@param type CIMType defining method return data type. |
@param propagated |
|
|
@param classOrigin (optional) CIMName representing the class origin. Note |
|
that this should normally not be used. If not provided set to |
|
CIMName() (Null name). |
|
@param propagated Optional flag indicating whether the definition of the |
|
CIM Method is local to the CIM Class (respectively, Instance) in which |
|
it appears, or was propagated without modification from the a |
|
Superclass. Default is false. Note that this attribute is normally |
|
not set by CIM Clients but is used internally within the CIM |
|
Server. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
</pre> |
*/ | */ |
CIMMethod( | CIMMethod( |
const CIMName& name, | const CIMName& name, |
|
|
const CIMName& classOrigin = CIMName(), | const CIMName& classOrigin = CIMName(), |
Boolean propagated = false); | Boolean propagated = false); |
| |
/** Desctructor. */ |
/** Destructor for the CIMMethod. The shared data copy remains valid until |
|
all referring objects are destructed |
|
{@link Shared Classes} |
|
*/ |
~CIMMethod(); | ~CIMMethod(); |
| |
/** Assignment operator */ |
/** The assignment operator assigns one CIM method to another. |
|
After the assignment, both CIMMethod objects refer to the same |
|
data copy; a distinct copy is not created. |
|
|
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
CIMMethod m2; |
|
m2 = m1; |
|
</pre> |
|
*/ |
CIMMethod& operator=(const CIMMethod& x); | CIMMethod& operator=(const CIMMethod& x); |
| |
/** getName - Gets the name of the method |
/** Gets the name of the method. |
@return CIMName with the name of the method |
@return CIMName with the name of the method. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
assert(m1.getName() == CIMName ("getHostName")); |
|
</pre> |
*/ | */ |
const CIMName& getName() const; | const CIMName& getName() const; |
| |
/** setName - Set the method name |
/** Sets the method name. |
@param name |
@param name CIMName for the method name. Replaces any |
|
previously defined name for this method object. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m2(CIMName ("test"), CIMTYPE_STRING); |
|
m2.setName(CIMName ("getVersion")); |
|
</pre> |
*/ | */ |
void setName(const CIMName& name); | void setName(const CIMName& name); |
| |
/** getType - gets the method type |
/** Gets the method return data type. |
@return The CIM method type for this method. |
@return CIMType containing the method return data type for this |
|
method. |
|
@exception Throws UnitializedObjectException if object is not |
|
initialized. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
assert(m1.getType() == CIMTYPE_STRING); |
|
</pre> |
*/ | */ |
CIMType getType() const; | CIMType getType() const; |
| |
/** setType - Sets the method type to the specified CIM method |
/** Sets the method return data type to the specified CIMtype. |
type as defined in CIMType /Ref{TYPE} |
This is the type of the CIMValue |
|
that is returned on a CIM method invocation |
|
@param type CIMType to be set into the CIMMethod object. |
|
@exception Throws UnitializedObjectException if object is not |
|
initialized. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1(); |
|
m1.setName(CIMName ("getVersion")); |
|
assert(m1.setType(CIMTYPE_STRING)); |
|
</pre> |
*/ | */ |
void setType(CIMType type); | void setType(CIMType type); |
| |
/** getClassOrigin - Returns the class in which this method |
/** Gets the class in which this method was defined. This information |
was defined. |
is normally available with methods that are part of classes and |
|
instances returned from a CIM Server. |
@return CIMName containing the classOrigin field. | @return CIMName containing the classOrigin field. |
*/ | */ |
const CIMName& getClassOrigin() const; | const CIMName& getClassOrigin() const; |
| |
/** setClassOrigin - Set the ClassOrigin attribute with |
/** Sets the ClassOrigin attribute with the classname defined on |
the classname defined on input |
the input parameter. Normally this method is used internally |
@param classOrigin - CIMName parameter defining the name |
as part of the use objects containing methods (classes |
of the class origin |
and instances) in the context of the CIM Server. |
|
@param classOrigin CIMName parameter defining the name |
|
of the class origin. |
|
@exception Throws UnitializedObjectException if object is not |
|
initialized. |
*/ | */ |
void setClassOrigin(const CIMName& classOrigin); | void setClassOrigin(const CIMName& classOrigin); |
| |
/** getPropagated - Tests the propogated qualifier |
/** Tests the propagated attribute of the object. The propagated attribute |
@return - returns True if method is propogated |
indicates if this method was propagated from a higher level |
|
class. Normally this attribute is set as part of putting |
|
classes into the repository (resolving the class). It is |
|
available on methods in classes read from the repository and |
|
on instances that are read from the instance repository. |
|
@return True if method is propagated; otherwise,false. |
*/ | */ |
Boolean getPropagated() const; | Boolean getPropagated() const; |
| |
/** setPropagated - Sets the Propagaged Qualifier */ |
/** Sets the Propagated qualifier. Normally this is used by the functions |
|
that resolve classes and instances as part of the installation into |
|
a repository. |
|
@param propagated Flag indicating method is propagated from superclass propagation. |
|
True means that the method was propagated from superclass. |
|
@exception Throws UnitializedObjectException if object is not |
|
initialized. |
|
*/ |
void setPropagated(Boolean propagated); | void setPropagated(Boolean propagated); |
| |
/** addQualifier - Adds a Qualifier to the method object. |
/** Adds the specified qualifier to the CIMmethod object. |
@param CIMQualifier to be added |
@param x CIMQualifier object representing the qualifier |
@return Throws AlreadyExists excetpion if the qualifier already exists |
to be added. |
in the method |
@return The CIMMethod object after adding the specified qualifier. |
@exception AlreadyExists exception |
@exception Throws AlreadyExistsException if the qualifier already exists. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
m1.addQualifier(CIMQualifier(CIMName ("stuff"), true)); |
|
</pre> |
*/ | */ |
CIMMethod& addQualifier(const CIMQualifier& x); | CIMMethod& addQualifier(const CIMQualifier& x); |
| |
/** findQualifier - returns the position of the qualifier with |
/** Searches for a qualifier with the specified input name. |
the given name. |
@param name CIMName of the qualifier to be found. |
@param name Name of qualifier to be found. |
@return Zero origin index of the qualifier found or PEG_NOT_FOUND |
@return index of the parameter if found; otherwise PEG_NOT_FOUND. |
if not found. |
|
@exception Throws UnitializedObjectException if object is not |
|
initialized. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
m1.addQualifier(CIMQualifier(CIMName ("stuff"), true)); |
|
assert(m1.findQualifier(CIMName ("stuff")) != PEG_NOT_FOUND); |
|
</pre> |
*/ | */ |
Uint32 findQualifier(const CIMName& name) const; | Uint32 findQualifier(const CIMName& name) const; |
| |
/** getQualifier - Gets the CIMQualifier defined by the index |
/** Gets the CIMQualifier defined by the input parameter. |
input as a parameter. |
@param index Zero origin index of the qualifier requested. |
@param Index of the qualifier requested. |
@return CIMQualifier object representing the qualifier found. |
@return CIMQualifier object or exception |
@exception Throws IndexOutOfBoundsException exception if the index is |
@exception OutOfBounds exception if the index is outside the range of |
outside the range of parameters available from the CIMMethod. |
parameters available from the CIMMethod. |
<p><b>Example:</b> |
*/ |
<pre> |
CIMQualifier getQualifier(Uint32 pos); |
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
m1.addQualifier(CIMQualifier(CIMName ("stuff"), true)); |
CIMConstQualifier getQualifier(Uint32 pos) const; |
Uint32 posQualifier; |
|
posQualifier = m1.findQualifier(CIMName ("stuff")); |
/** removeQualifier - Removes the CIMQualifier defined by the |
CIMQualifier q = m1.getQualifier(posQualifier); |
position input as a parameter. |
</pre> |
@param Position of the qualifier requested. |
*/ |
@return CIMQualifier object or exception |
CIMQualifier getQualifier(Uint32 index); |
@exception OutOfBounds exception if the index is outside the range of |
|
parameters available from the CIMMethod. |
/** Gets the CIMQualifier defined by the input parameter. |
*/ |
@param index Index of the qualifier requested. |
void removeQualifier(Uint32 pos); |
@return CIMConstQualifier object representing the qualifier found. |
|
@exception Throws IndexOutOfBoundsException exception if the index is |
/** getQualifierCount - Returns the number of Qualifiers attached |
outside the range of parameters available from the CIMMethod. |
to this CIMMethod object. |
<p><b>Example:</b> |
@return integer representing number of Qualifiers. |
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
m1.addQualifier(CIMQualifier(CIMName ("stuff"), true)); |
|
|
|
Uint32 posQualifier; |
|
posQualifier = m1.findQualifier(CIMName ("stuff")); |
|
CIMQualifier q = m1.getQualifier(posQualifier); |
|
</pre> |
|
*/ |
|
CIMConstQualifier getQualifier(Uint32 index) const; |
|
|
|
/** Removes the specified CIMQualifier from this method. |
|
@param index Index of the qualifier to remove. |
|
@exception Throws IndexOutOfBoundsException exception if the index is |
|
outside the range of parameters available from the CIMMethod. |
|
<p><b>Example:</b> |
|
<pre> |
|
// remove all qualifiers from a class |
|
Uint32 count = 0; |
|
while((count = cimClass.getQualifierCount()) > 0) |
|
cimClass.removeQualifier(count - 1); |
|
</pre> |
|
*/ |
|
void removeQualifier(Uint32 index); |
|
|
|
/** Returns the number of Qualifiers attached to this CIMMethod object. |
|
@return The number of qualifiers attached to the CIM Method. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
m1.addQualifier(CIMQualifier(CIMName ("stuff"), true)); |
|
m1.addQualifier(CIMQualifier(CIMName ("stuff2"), true)); |
|
assert(m1.getQualifierCount() == 2); |
|
</pre> |
*/ | */ |
Uint32 getQualifierCount() const; | Uint32 getQualifierCount() const; |
| |
/** addParameter - Adds the parameter defined by the input |
/** Adds the parameter defined by the input to the CIMMethod. |
to the CIMMethod |
@param x CIMParameter to be added to the CIM Method. |
|
@return CIMMethod object after the specified parameter is added. |
|
<p><b>Example:</b> |
|
@exception Throws UnitializedObjectException if object is not |
|
initialized. |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
m1.addParameter(CIMParameter(CIMName ("ipaddress"), CIMTYPE_STRING)); |
|
</pre> |
*/ | */ |
CIMMethod& addParameter(const CIMParameter& x); | CIMMethod& addParameter(const CIMParameter& x); |
| |
/** findParameter - Finds the parameter whose name is given |
/** Finds the parameter with the specified name. |
by the name parameter. |
@param name CIMName of parameter to be found. |
@param name Name of parameter to be found. |
@return Index of the parameter object found or PEG_NOT_FOUND |
@return index of the parameter if found; otherwise PEG_NOT_FOUND. |
if the property is not found. |
|
<p><b>Example:</b> |
|
<pre> |
|
Uint32 posParameter; |
|
posParameter = m1.findParameter(CIMName ("ipaddress")); |
|
if (posParameter != PEG_NOT_FOUND) |
|
... |
|
</pre> |
*/ | */ |
Uint32 findParameter(const CIMName& name) const; | Uint32 findParameter(const CIMName& name) const; |
| |
/** getParameter - Gets the parameter defined by the index |
/** Gets the parameter defined by the specified index. |
input as a parameter. |
@param index Index for the parameter to be returned. |
@param index for the parameter to be returned. |
@return CIMParameter object requested. |
@return CIMParameter requested. |
@exception Throws IndexOutOfBoundsException if the index is outside |
@Exception OutOfBounds exception is thrown if the index is outside the |
the range of available parameters. |
range of available parameters |
<p><b>Example:</b> |
*/ |
<pre> |
CIMParameter getParameter(Uint32 pos); |
CIMParameter cp = m1.getParameter(m1.findParameter(CIMName ("ipaddress"))); |
|
</pre> |
/** getParameter - const form */ |
*/ |
CIMConstParameter getParameter(Uint32 pos) const; |
CIMParameter getParameter(Uint32 index); |
|
|
/** getParameterCount - Gets the count of the numbeer of |
/** Gets the parameter defined for the specified index. |
Parameters attached to the CIMMethod. |
@param index Index for the parameter to be returned. |
@retrun - count of the number of parameters attached to the CIMMethod. |
@return CIMConstParameter object requested. |
|
@exception Throws IndexOutOfBoundsException if the index is outside |
|
the range of available parameters |
|
*/ |
|
CIMConstParameter getParameter(Uint32 index) const; |
|
|
|
/** Removes the CIMParameter defined by the specified index. |
|
@param index Index of the parameter to be removed. |
|
@exception Throws IndexOutOfBoundsException if the index is outside the |
|
range of parameters available from the CIMMethod. |
*/ | */ |
Uint32 getParameterCount() const; |
void removeParameter (Uint32 index); |
| |
/** |
/** Gets the count of Parameters defined in the CIMMethod. |
Determines if the object has not been initialized. |
@return Count of the number of parameters attached to the CIMMethod. |
|
*/ |
|
Uint32 getParameterCount() const; |
| |
@return True if the object has not been initialized, |
/** Determines if the object has not been initialized. |
False otherwise |
@return True if the object has not been initialized; |
|
otherwise false. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1; |
|
assert(m1.isUnitialized()); |
|
</pre> |
*/ | */ |
Boolean isUninitialized() const; | Boolean isUninitialized() const; |
| |
/** identical - Returns true if this method is identical to the |
/** Compares with a CIMConstMethod. |
one given by the argument x. |
@param x CIMConstMethod object for the method to be compared. |
|
@return True if this method is identical to the one specified. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
CIMConstMethod m2(CIMName ("test"), CIMTYPE_STRING); |
|
assert(!m1.identical(m2)); |
|
</pre> |
*/ | */ |
Boolean identical(const CIMConstMethod& x) const; | Boolean identical(const CIMConstMethod& x) const; |
| |
/** CIMMethod clone - makes a distinct replica of this method */ |
/** Makes a clone (deep copy) of this method. This creates |
|
a new copy of all of the components of the method including |
|
parameters and qualifiers. |
|
@return Independent copy of the CIMMethod object. |
|
*/ |
CIMMethod clone() const; | CIMMethod clone() const; |
| |
private: | private: |
|
|
friend class MofWriter; | friend class MofWriter; |
}; | }; |
| |
|
/** The CIMConstMethod class is used to represent CIM methods in the |
|
same manner as the CIMMethod class except that the const attribute |
|
is applied to the objects created. This class includes equivalents |
|
to the methods from CIMMethod that are usable in a const object including |
|
constructors, (for example: getter methods) and the destructor. |
|
|
|
REVIEWERS: ATTN: Complete the explanation of why. |
|
@see CIMMethod() |
|
*/ |
class PEGASUS_COMMON_LINKAGE CIMConstMethod | class PEGASUS_COMMON_LINKAGE CIMConstMethod |
{ | { |
public: | public: |
| |
|
/** Creates a new empty CIMConstMethod object. |
|
@see CIMMethod() |
|
*/ |
CIMConstMethod(); | CIMConstMethod(); |
| |
|
/** Creates a new CIMConstMethod object from another CIMConstMethod object. |
|
The new CIMMethodObject references the same copy of data as teh specified object, |
|
no copy is made. |
|
@param x CIMMethod object from which to create the newCIMMethod object. |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
const CIMMethod cm1(m1); |
|
</pre> |
|
{@link Shared Classes} |
|
*/ |
CIMConstMethod(const CIMConstMethod& x); | CIMConstMethod(const CIMConstMethod& x); |
| |
|
/** Creates a new CIMConstMethod object from an |
|
existing CIMMethod object. Creates a pointer |
|
to the existing representation. |
|
@return CIMConstMethod object reference. |
|
@see CIMMethod() |
|
*/ |
CIMConstMethod(const CIMMethod& x); | CIMConstMethod(const CIMMethod& x); |
| |
|
/** Creates a CIMConstMethod object with the specified name and other input attributes. |
|
@param name CIMName defining the name for the method. |
|
|
|
@param type CIMType defining method return data type. |
|
|
|
@param classOrigin (optional) CIMName representing the class origin. Note |
|
that this should normally not be used. If not provided set to |
|
CIMName() (Null name). |
|
@param propagated Optional flag indicating whether the definition of the |
|
CIM Method is local to the CIM Class (respectively, Instance) in which |
|
it appears, or was propagated without modification from the a |
|
Superclass. Default is false. Note that this attribute is normally |
|
not set by CIM Clients but is used internally within the CIM |
|
Server. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMConstMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
</pre> |
|
*/ |
CIMConstMethod( | CIMConstMethod( |
const CIMName& name, | const CIMName& name, |
CIMType type, | CIMType type, |
const CIMName& classOrigin = CIMName(), | const CIMName& classOrigin = CIMName(), |
Boolean propagated = false); | Boolean propagated = false); |
| |
|
/** Destructor for the CIMConstMethod. The shared data copy remains valid until |
|
all referring objects are destructed |
|
{@link Shared Classes} |
|
*/ |
~CIMConstMethod(); | ~CIMConstMethod(); |
| |
|
/** The assignment operator assigns one CIMConstMethod object to another. |
|
After the assignment, both CIMMethod objects refer to the same |
|
data copy; a distinct copy is not created. |
|
|
|
<p><b>Example:</b> |
|
<pre> |
|
CIMConstMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
CIMConstMethod m2; |
|
m2 = m1; |
|
</pre> |
|
*/ |
CIMConstMethod& operator=(const CIMConstMethod& x); | CIMConstMethod& operator=(const CIMConstMethod& x); |
| |
|
/** The assignment operator assigns a CIMMethod object to a |
|
CIMConstMethod. |
|
After the assignment, both objects refer to the same |
|
data copy; a distinct copy is not created. |
|
|
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
CIMConstMethod m2; |
|
m2 = m1; |
|
</pre> |
|
*/ |
CIMConstMethod& operator=(const CIMMethod& x); | CIMConstMethod& operator=(const CIMMethod& x); |
| |
|
/** Gets the name of the method. |
|
@return CIMName with the name of the method. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMConstMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
assert(m1.getName() == CIMName ("getHostName")); |
|
</pre> |
|
*/ |
const CIMName& getName() const; | const CIMName& getName() const; |
| |
|
/** Gets the method return data type. |
|
@return CIMType containing the method return data type for this |
|
method. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMConstMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
assert(m1.getType() == CIMTYPE_STRING); |
|
</pre> |
|
*/ |
CIMType getType() const; | CIMType getType() const; |
| |
|
/** Gets the class in which this method was defined. This information |
|
is normally available with methods that are part of classes and |
|
instances returned from a CIM Server. |
|
@return CIMName containing the classOrigin field. |
|
*/ |
const CIMName& getClassOrigin() const; | const CIMName& getClassOrigin() const; |
| |
|
/** Tests the propagated attribute of the object. The propagated attribute |
|
indicates if this method was propagated from a higher level |
|
class. Normally this attribute is set as part of putting |
|
classes into the repository (resolving the class). It is |
|
available on methods in classes read from the repository and |
|
on instances that are read from the instance repository. |
|
@return True if method is propagated; otherwise,false. |
|
*/ |
Boolean getPropagated() const; | Boolean getPropagated() const; |
| |
|
/** Searches for a qualifier with the specified input name. |
|
@param name CIMName of the qualifier to be found. |
|
@return Index of the qualifier found or PEG_NOT_FOUND |
|
if not found. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMConstMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
m1.addQualifier(CIMQualifier(CIMName ("stuff"), true)); |
|
assert(m1.findQualifier(CIMName ("stuff")) != PEG_NOT_FOUND); |
|
</pre> |
|
*/ |
Uint32 findQualifier(const CIMName& name) const; | Uint32 findQualifier(const CIMName& name) const; |
| |
CIMConstQualifier getQualifier(Uint32 pos) const; |
/** Gets the CIMQualifier defined by the input parameter. |
|
@param index Index of the qualifier requested. |
|
@return CIMQualifier object representing the qualifier found. |
|
@exception Throws IndexOutOfBoundsException exception if the index is |
|
outside the range of parameters available from the CIMMethod. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
m1.addQualifier(CIMQualifier(CIMName ("stuff"), true)); |
|
Uint32 posQualifier; |
|
posQualifier = m1.findQualifier(CIMName ("stuff")); |
|
CIMQualifier q = m1.getQualifier(posQualifier); |
|
</pre> |
|
*/ |
|
CIMConstQualifier getQualifier(Uint32 index) const; |
|
|
|
/** Returns the number of Qualifiers attached to this CIMMethod object. |
|
@return The number of qualifiers in the CIM Method. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMConstMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
assert(m1.getQualifierCount() == 0); |
|
</pre> |
|
*/ |
Uint32 getQualifierCount() const; | Uint32 getQualifierCount() const; |
| |
|
/** Finds the parameter with the specified name. |
|
@param name CIMName of parameter to be found. |
|
@return Index of the parameter object found or PEG_NOT_FOUND |
|
if the property is not found. |
|
<p><b>Example:</b> |
|
<pre> |
|
Uint32 posParameter; |
|
posParameter = m1.findParameter(CIMName ("ipaddress")); |
|
if (posParameter != PEG_NOT_FOUND) |
|
... |
|
</pre> |
|
*/ |
Uint32 findParameter(const CIMName& name) const; | Uint32 findParameter(const CIMName& name) const; |
| |
CIMConstParameter getParameter(Uint32 pos) const; |
/** Gets the parameter defined by the specified index. |
|
@param index Index for the parameter to be returned. |
|
@return CIMParameter object requested. |
|
@exception Throws IndexOutOfBoundsException if the index is outside |
|
the range of available parameters. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMConstParameter cp = m1.getParameter(m1.findParameter(CIMName ("ipaddress"))); |
|
</pre> |
|
*/ |
|
CIMConstParameter getParameter(Uint32 index) const; |
| |
|
/** Gets the count of Parameters defined in the CIMMethod. |
|
@return Count of the number of parameters attached to the CIMMethod. |
|
*/ |
Uint32 getParameterCount() const; | Uint32 getParameterCount() const; |
| |
|
/** Determines if the object has not been initialized. |
|
@return True if the object has not been initialized; |
|
otherwise false. |
|
*/ |
Boolean isUninitialized() const; | Boolean isUninitialized() const; |
| |
|
/** Compares with a CIMConstMethod. |
|
@param x CIMConstMethod object for the method to be compared. |
|
@return True if this method is identical to the one specified. |
|
<p><b>Example:</b> |
|
<pre> |
|
CIMMethod m1(CIMName ("getHostName"), CIMTYPE_STRING); |
|
CIMConstMethod m2(CIMName ("test"), CIMTYPE_STRING); |
|
assert(!m1.identical(m2)); |
|
</pre> |
|
*/ |
Boolean identical(const CIMConstMethod& x) const; | Boolean identical(const CIMConstMethod& x) const; |
| |
|
/** Makes a clone (deep copy) of this CIMConstmethod. This creates |
|
a new copy of all of the components of the method including |
|
parameters and qualifiers. |
|
@return Independent copy of the CIMConstMethod object. Note that |
|
it is returned as a CIMMethod, not const. |
|
*/ |
CIMMethod clone() const; | CIMMethod clone() const; |
| |
private: | private: |