/* * 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 resource-groups-2017-11-27.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.ResourceGroups.Model { /// /// The query you can use to define a resource group or a search for resources. A ResourceQuery /// specifies both a query Type and a Query string as JSON string /// objects. See the examples section for example JSON strings. For more information about /// creating a resource group with a resource query, see Build /// queries and groups in Resource Groups in the Resource Groups User Guide /// /// /// /// /// When you combine all of the elements together into a single string, any double quotes /// that are embedded inside another double quote pair must be escaped by preceding the /// embedded double quote with a backslash character (\). For example, a complete ResourceQuery /// parameter must be formatted like the following CLI parameter example: /// /// /// /// --resource-query '{"Type":"TAG_FILTERS_1_0","Query":"{\"ResourceTypeFilters\":[\"AWS::AllSupported\"],\"TagFilters\":[{\"Key\":\"Stage\",\"Values\":[\"Test\"]}]}"}' /// /// /// /// /// In the preceding example, all of the double quote characters in the value part of /// the Query element must be escaped because the value itself is surrounded /// by double quotes. For more information, see Quoting /// strings in the Command Line Interface User Guide. /// /// /// /// For the complete list of resource types that you can use in the array value for ResourceTypeFilters, /// see Resources /// you can use with Resource Groups and Tag Editor in the Resource Groups User /// Guide. For example: /// /// /// /// "ResourceTypeFilters":["AWS::S3::Bucket", "AWS::EC2::Instance"] /// /// public partial class ResourceQuery { private string _query; private QueryType _type; /// /// Gets and sets the property Query. /// /// The query that defines a group or a search. The contents depends on the value of the /// Type element. /// /// /// [AWSProperty(Required=true, Max=4096)] public string Query { get { return this._query; } set { this._query = value; } } // Check to see if Query property is set internal bool IsSetQuery() { return this._query != null; } /// /// Gets and sets the property Type. /// /// The type of the query to perform. This can have one of two values: /// /// /// [AWSProperty(Required=true, Min=1, Max=128)] public QueryType Type { get { return this._type; } set { this._type = value; } } // Check to see if Type property is set internal bool IsSetType() { return this._type != null; } } }