/* * 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 appconfig-2019-10-09.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.AppConfig.Model { /// /// Container for the parameters to the CreateConfigurationProfile operation. /// Creates a configuration profile, which is information that enables AppConfig to access /// the configuration source. Valid configuration sources include the following: /// /// /// /// A configuration profile includes the following information: /// /// /// /// For more information, see Create /// a Configuration and a Configuration Profile in the AppConfig User Guide. /// /// public partial class CreateConfigurationProfileRequest : AmazonAppConfigRequest { private string _applicationId; private string _description; private string _locationUri; private string _name; private string _retrievalRoleArn; private Dictionary _tags = new Dictionary(); private string _type; private List _validators = new List(); /// /// Gets and sets the property ApplicationId. /// /// The application ID. /// /// [AWSProperty(Required=true)] public string ApplicationId { get { return this._applicationId; } set { this._applicationId = value; } } // Check to see if ApplicationId property is set internal bool IsSetApplicationId() { return this._applicationId != null; } /// /// Gets and sets the property Description. /// /// A description of the configuration profile. /// /// [AWSProperty(Min=0, Max=1024)] public string Description { get { return this._description; } set { this._description = value; } } // Check to see if Description property is set internal bool IsSetDescription() { return this._description != null; } /// /// Gets and sets the property LocationUri. /// /// A URI to locate the configuration. You can specify the following: /// ///
  • /// /// For the AppConfig hosted configuration store and for feature flags, specify hosted. /// ///
  • /// /// For an Amazon Web Services Systems Manager Parameter Store parameter, specify either /// the parameter name in the format ssm-parameter://<parameter name> /// or the ARN. /// ///
  • /// /// For an Secrets Manager secret, specify the URI in the following format: secrets-manager://<secret /// name>. /// ///
  • /// /// For an Amazon S3 object, specify the URI in the following format: s3://<bucket>/<objectKey> /// . Here is an example: s3://my-bucket/my-app/us-east-1/my-config.json /// /// ///
  • /// /// For an SSM document, specify either the document name in the format ssm-document://<document /// name> or the Amazon Resource Name (ARN). /// ///
///
[AWSProperty(Required=true, Min=1, Max=2048)] public string LocationUri { get { return this._locationUri; } set { this._locationUri = value; } } // Check to see if LocationUri property is set internal bool IsSetLocationUri() { return this._locationUri != null; } /// /// Gets and sets the property Name. /// /// A name for the configuration profile. /// /// [AWSProperty(Required=true, Min=1, Max=128)] public string Name { get { return this._name; } set { this._name = value; } } // Check to see if Name property is set internal bool IsSetName() { return this._name != null; } /// /// Gets and sets the property RetrievalRoleArn. /// /// The ARN of an IAM role with permission to access the configuration at the specified /// LocationUri. /// /// /// /// A retrieval role ARN is not required for configurations stored in the AppConfig hosted /// configuration store. It is required for all other sources that store your configuration. /// /// /// /// [AWSProperty(Min=20, Max=2048)] public string RetrievalRoleArn { get { return this._retrievalRoleArn; } set { this._retrievalRoleArn = value; } } // Check to see if RetrievalRoleArn property is set internal bool IsSetRetrievalRoleArn() { return this._retrievalRoleArn != null; } /// /// Gets and sets the property Tags. /// /// Metadata to assign to the configuration profile. Tags help organize and categorize /// your AppConfig resources. Each tag consists of a key and an optional value, both of /// which you define. /// /// [AWSProperty(Min=0, Max=50)] public Dictionary Tags { get { return this._tags; } set { this._tags = value; } } // Check to see if Tags property is set internal bool IsSetTags() { return this._tags != null && this._tags.Count > 0; } /// /// Gets and sets the property Type. /// /// The type of configurations contained in the profile. AppConfig supports feature /// flags and freeform configurations. We recommend you create feature /// flag configurations to enable or disable new features and freeform configurations /// to distribute configurations to an application. When calling this API, enter one of /// the following values for Type: /// /// /// /// AWS.AppConfig.FeatureFlags /// /// /// /// AWS.Freeform /// /// public string 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 Validators. /// /// A list of methods for validating the configuration. /// /// [AWSProperty(Min=0, Max=2)] public List Validators { get { return this._validators; } set { this._validators = value; } } // Check to see if Validators property is set internal bool IsSetValidators() { return this._validators != null && this._validators.Count > 0; } } }