# Class CIM_MethodAction
extends CIM_PolicyAction

MethodAction is a PolicyAction that MAY invoke methods as defined by a query. If there are no results returned from the query, then no methods are called, otherwise each query result row defines the method to call and its parameters. The called method MAY be either an intrinsic method of a CIM Namespace or an extrinsic method of a CIM_ManagedElement. In order to correlate between methods called by this MethodAction and any other invoked Methods, InstMethodCall indications MAY be created for the method calls that result from this MethodAction. These indications are named by the value in the InstMethodCallName property. These indications MUST be produced if that InstMethodCallName value is included in the FROM clause of the query of some other MethodAction instance within the same PolicyRule. (The details of how this is accomplished are implementation dependent.) The input parameters to the method are defined by the query and MAY be fixed values defined by literals or MAY be defined by reference to one or more properties of classes named in the FROM clause of the query. The referenced objects MAY be those produced by QueryConditions or MethodActions instances associated to the same PolicyRule instance.

### Table of Contents
Hierarchy
Direct Known Subclasses
Class Qualifiers
Class Properties
Class Methods

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_Policy
|
+--CIM_PolicyAction
|
+--CIM_MethodAction

## Direct Known Subclasses

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Description | string | MethodAction is a PolicyAction that MAY invoke methods as defined by a query. If there are no results returned from the query, then no methods are called, otherwise each query result row defines the method to call and its parameters. The called method MAY be either an intrinsic method of a CIM Namespace or an extrinsic method of a CIM_ManagedElement. In order to correlate between methods called by this MethodAction and any other invoked Methods, InstMethodCall indications MAY be created for the method calls that result from this MethodAction. These indications are named by the value in the InstMethodCallName property. These indications MUST be produced if that InstMethodCallName value is included in the FROM clause of the query of some other MethodAction instance within the same PolicyRule. (The details of how this is accomplished are implementation dependent.) The input parameters to the method are defined by the query and MAY be fixed values defined by literals or MAY be defined by reference to one or more properties of classes named in the FROM clause of the query. The referenced objects MAY be those produced by QueryConditions or MethodActions instances associated to the same PolicyRule instance.
UMLPackagePath | string | CIM::Policy
Version | string | 2.22.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
InstMethodCallName | string |
Description | string | In the context of the associated PolicyRule, InstMethodCallName defines a unique name for the InstMethodCall instances that result from the methods invoked as a result of evaluating the Query string. This name MAY be used in subsequent MethodActions of the same PolicyRule to identify the set of InstMethodCall instances that result from evaluation of this MethodAction in the context of its PolicyRule. This string is treated as a class name, in a query statement.
ModelCorrespondence | string | CIM_MethodAction.Query
Required | boolean | true
Query | string |
Description | string | A query expression that defines the method to invoke and its input parameters. These are defined by the first and subsequent select-list entries in the Query string's select-criteria. The FROM clause MAY reference any object, including those named by the QueryResultName and MethodCallName produced by QueryConditions or MethodActions of the same PolicyRule. Note that both intrinsic and extrinsic methods MAY be called. The first select-list entry MUST be an object Path to a method. For consistency it SHOULD be called MethodName. However, if there is a conflict with existing parameter names, it MAY be called something else. The remaining select list entries are not positional and MUST use the name of the corresponding method parameter. The object path to a method is defined here as a WBEM URI, (see DSP0207) dot concatenated with a method name. It must have the form: [<wbemURI>, ".",] <MethodName>. The named method may be intrinsic or extrinsic. Extrinsics may be at class level (i.e. static) or not. The particular instance of this class that is invoking the specified method defines the default namespace, class, and key values. If any of these are missing from the WBEM URI, these defaults are assumed. For intrinsic methods (as defined in the "Specification for CIM Operations over HTTP", see DSP0200), any class name or key values specified in the WBEM URI are ignored. Similarly, key values are ignored for static methods. Intrinsic methods that take an <instancename>, an <objectname>, an <instance>, or a <namedinstance> (as defined in DSP0200) as an input parameter are preprocessed by the implementation of the MethodAction instance. For each of <instancename> or <objectname>, the corresponding input parameter name is set to a WBEM URI of the instance or class. /n For each of <instance> or <namedinstance>, the corresponding input parameter must be set to a WBEM URI to the instance or class. Properties of that instance are passed as additional select list entries with the name of the corresponding parameter dot appended with the name of the named instance property. For example: if the call is to ModifyInstance, then parameter ModifiedInstance is set to the= <wbemURI> of the instance to modify and for each relevant property to modify, a parameter is supplied with the name ModifiedInstance.<propertyName> and is set to the new value for the named property.
ModelCorrespondence | string | CIM_MethodAction.InstMethodCallName, CIM_MethodAction.QueryLanguage
Required | boolean | true
QueryLanguage | uint16 | 2
Description | string | The language in which the Query string is expressed./n CQL - refers to the 'DMTF:CQL' language defined by DSP0200. CQL: indicates a CIM Query Language string. CQLT: indicates a CIM Query Language Template string. When used, the identifiers recognized in the $identifier$ tokens are "SELF" and the property names of this class, or one of its subclasses. When used in the Query string, $SELF$ will be replaced by a string corresponding to a WBEM URI referencing the instance of this class that contains the Query template string. Tokens of the form $<propertyname>$ will be replaced by a string representing the corresponding property value of the instance of this class that contains the Query string.
ModelCorrespondence | string | CIM_MethodAction.Query
Required | boolean | true
ValueMap | string | 2, 3, .., 0x8000..
Values | string | CQL, CQLT, DMTF Reserved, Vendor Reserved

### Inherited Properties

Name | Data Type | Class Origin
--- | --- | ---
Caption | string | CIM_ManagedElement
CommonName | string | CIM_Policy
CreationClassName | string | CIM_PolicyAction
Description | string | CIM_ManagedElement
DoActionLogging | boolean | CIM_PolicyAction
ElementName | string | CIM_ManagedElement
InstanceID | string | CIM_ManagedElement
PolicyActionName | string | CIM_PolicyAction
PolicyRuleCreationClassName | string | CIM_PolicyAction
PolicyRuleName | string | CIM_PolicyAction
SystemCreationClassName | string | CIM_PolicyAction
SystemName | string | CIM_PolicyAction
PolicyKeywords | string[] | CIM_Policy

## Class Methods