/* * 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 ram-2018-01-04.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.RAM.Model { /// <summary> /// Container for the parameters to the GetResourceShareAssociations operation. /// Retrieves the lists of resources and principals that associated for resource shares /// that you own. /// </summary> public partial class GetResourceShareAssociationsRequest : AmazonRAMRequest { private ResourceShareAssociationStatus _associationStatus; private ResourceShareAssociationType _associationType; private int? _maxResults; private string _nextToken; private string _principal; private string _resourceArn; private List<string> _resourceShareArns = new List<string>(); /// <summary> /// Gets and sets the property AssociationStatus. /// <para> /// Specifies that you want to retrieve only associations that have this status. /// </para> /// </summary> public ResourceShareAssociationStatus AssociationStatus { get { return this._associationStatus; } set { this._associationStatus = value; } } // Check to see if AssociationStatus property is set internal bool IsSetAssociationStatus() { return this._associationStatus != null; } /// <summary> /// Gets and sets the property AssociationType. /// <para> /// Specifies whether you want to retrieve the associations that involve a specified resource /// or principal. /// </para> /// <ul> <li> /// <para> /// <code>PRINCIPAL</code> – list the principals whose associations you want to see. /// </para> /// </li> <li> /// <para> /// <code>RESOURCE</code> – list the resources whose associations you want to see. /// </para> /// </li> </ul> /// </summary> [AWSProperty(Required=true)] public ResourceShareAssociationType AssociationType { get { return this._associationType; } set { this._associationType = value; } } // Check to see if AssociationType property is set internal bool IsSetAssociationType() { return this._associationType != null; } /// <summary> /// Gets and sets the property MaxResults. /// <para> /// Specifies the total number of results that you want included on each page of the response. /// If you do not include this parameter, it defaults to a value that is specific to the /// operation. If additional items exist beyond the number you specify, the <code>NextToken</code> /// response element is returned with a value (not null). Include the specified value /// as the <code>NextToken</code> request parameter in the next call to the operation /// to get the next part of the results. Note that the service might return fewer results /// than the maximum even when there are more results available. You should check <code>NextToken</code> /// after every operation to ensure that you receive all of the results. /// </para> /// </summary> [AWSProperty(Min=1, Max=500)] public int MaxResults { get { return this._maxResults.GetValueOrDefault(); } set { this._maxResults = value; } } // Check to see if MaxResults property is set internal bool IsSetMaxResults() { return this._maxResults.HasValue; } /// <summary> /// Gets and sets the property NextToken. /// <para> /// Specifies that you want to receive the next page of results. Valid only if you received /// a <code>NextToken</code> response in the previous request. If you did, it indicates /// that more output is available. Set this parameter to the value provided by the previous /// call's <code>NextToken</code> response to request the next page of results. /// </para> /// </summary> public string NextToken { get { return this._nextToken; } set { this._nextToken = value; } } // Check to see if NextToken property is set internal bool IsSetNextToken() { return this._nextToken != null; } /// <summary> /// Gets and sets the property Principal. /// <para> /// Specifies the ID of the principal whose resource shares you want to retrieve. This /// can be an Amazon Web Services account ID, an organization ID, an organizational unit /// ID, or the <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon /// Resource Name (ARN)</a> of an individual IAM role or user. /// </para> /// /// <para> /// You cannot specify this parameter if the association type is <code>RESOURCE</code>. /// </para> /// </summary> public string Principal { get { return this._principal; } set { this._principal = value; } } // Check to see if Principal property is set internal bool IsSetPrincipal() { return this._principal != null; } /// <summary> /// Gets and sets the property ResourceArn. /// <para> /// Specifies the <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon /// Resource Name (ARN)</a> of a resource whose resource shares you want to retrieve. /// </para> /// /// <para> /// You cannot specify this parameter if the association type is <code>PRINCIPAL</code>. /// </para> /// </summary> public string ResourceArn { get { return this._resourceArn; } set { this._resourceArn = value; } } // Check to see if ResourceArn property is set internal bool IsSetResourceArn() { return this._resourceArn != null; } /// <summary> /// Gets and sets the property ResourceShareArns. /// <para> /// Specifies a list of <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon /// Resource Names (ARNs)</a> of the resource share whose associations you want to retrieve. /// </para> /// </summary> public List<string> ResourceShareArns { get { return this._resourceShareArns; } set { this._resourceShareArns = value; } } // Check to see if ResourceShareArns property is set internal bool IsSetResourceShareArns() { return this._resourceShareArns != null && this._resourceShareArns.Count > 0; } } }