/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the ce-2017-10-25.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.CostExplorer.Model { /// /// Rules are processed in order. If there are multiple rules that match the line item, /// then the first rule to match is used to determine that Cost Category value. /// public partial class CostCategoryRule { private CostCategoryInheritedValueDimension _inheritedValue; private Expression _rule; private CostCategoryRuleType _type; private string _value; /// /// Gets and sets the property InheritedValue. /// /// The value the line item is categorized as if the line item contains the matched dimension. /// /// public CostCategoryInheritedValueDimension InheritedValue { get { return this._inheritedValue; } set { this._inheritedValue = value; } } // Check to see if InheritedValue property is set internal bool IsSetInheritedValue() { return this._inheritedValue != null; } /// /// Gets and sets the property Rule. /// /// An Expression /// object used to categorize costs. This supports dimensions, tags, and nested expressions. /// Currently the only dimensions supported are LINKED_ACCOUNT, SERVICE_CODE, /// RECORD_TYPE, LINKED_ACCOUNT_NAME, REGION, and /// USAGE_TYPE. /// /// /// /// RECORD_TYPE is a dimension used for Cost Explorer APIs, and is also /// supported for Cost Category expressions. This dimension uses different terms, depending /// on whether you're using the console or API/JSON editor. For a detailed comparison, /// see Term /// Comparisons in the Billing and Cost Management User Guide. /// /// public Expression Rule { get { return this._rule; } set { this._rule = value; } } // Check to see if Rule property is set internal bool IsSetRule() { return this._rule != null; } /// /// Gets and sets the property Type. /// /// You can define the CostCategoryRule rule type as either REGULAR /// or INHERITED_VALUE. The INHERITED_VALUE rule type adds the /// flexibility to define a rule that dynamically inherits the cost category value. This /// value is from the dimension value that's defined by CostCategoryInheritedValueDimension. /// For example, suppose that you want to costs to be dynamically grouped based on the /// value of a specific tag key. First, choose an inherited value rule type, and then /// choose the tag dimension and specify the tag key to use. /// /// public CostCategoryRuleType Type { get { return this._type; } set { this._type = value; } } // Check to see if Type property is set internal bool IsSetType() { return this._type != null; } /// /// Gets and sets the property Value. /// [AWSProperty(Min=1, Max=50)] public string Value { get { return this._value; } set { this._value = value; } } // Check to see if Value property is set internal bool IsSetValue() { return this._value != null; } } }