package org.opennaas.extensions.router.model; /** * 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.<br> * <br> * <br> * <br> * 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.)<br> * <br> * <br> * <br> * 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. * * @version 2.20.1 */ /* * @Generated(value="org.dmtf.cim.TranslateCIM", comments="TranslateCIM version 0.9.1", date="2012-11-19T12:22:55+0100") */ public class MethodAction extends PolicyAction { /** * Default constructor */ public MethodAction() { } /** * 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. */ private String instMethodCallName; /** * 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.<br> * <br> * 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.<br> * <br> * 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>.<br> * <br> * The named method may be intrinsic or extrinsic. Extrinsics may be at class level (i.e. static) or not.<br> * <br> * 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.<br> * <br> * 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.<br> * <br> * 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.<br> * <br> * 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. */ private String query; /** * The language in which the Query string is expressed./n CQL - refers to the 'DMTF:CQL' language defined by DSP0200.<br> * <br> * CQL: indicates a CIM Query Language string.<br> * <br> * 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. */ public enum queryLanguage_enum { CQL(2), CQLT(3); /* values .. are "DMTF_Reserved" */ /* values 0x8000.. are "Vendor_Reserved" */ private final int localValue; queryLanguage_enum(int enumValue) { this.localValue = enumValue; } } private queryLanguage_enum queryLanguage = queryLanguage_enum.CQL; public String getInstMethodCallName() { return instMethodCallName; } public void setInstMethodCallName(String instMethodCallName) { this.instMethodCallName = instMethodCallName; } public String getQuery() { return query; } public void setQuery(String query) { this.query = query; } public queryLanguage_enum getQueryLanguage() { return queryLanguage; } public void setQueryLanguage(queryLanguage_enum queryLanguage) { this.queryLanguage = queryLanguage; } }