/* * 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 imagebuilder-2019-12-02.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.Imagebuilder.Model { /// /// Container for the parameters to the ImportComponent operation. /// Imports a component and transforms its data into a component document. /// public partial class ImportComponentRequest : AmazonImagebuilderRequest { private string _changeDescription; private string _clientToken; private string _data; private string _description; private ComponentFormat _format; private string _kmsKeyId; private string _name; private Platform _platform; private string _semanticVersion; private Dictionary _tags = new Dictionary(); private ComponentType _type; private string _uri; /// /// Gets and sets the property ChangeDescription. /// /// The change description of the component. This description indicates the change that /// has been made in this version, or what makes this version different from other versions /// of this component. /// /// [AWSProperty(Min=1, Max=1024)] public string ChangeDescription { get { return this._changeDescription; } set { this._changeDescription = value; } } // Check to see if ChangeDescription property is set internal bool IsSetChangeDescription() { return this._changeDescription != null; } /// /// Gets and sets the property ClientToken. /// /// The idempotency token of the component. /// /// [AWSProperty(Min=1, Max=36)] public string ClientToken { get { return this._clientToken; } set { this._clientToken = value; } } // Check to see if ClientToken property is set internal bool IsSetClientToken() { return this._clientToken != null; } /// /// Gets and sets the property Data. /// /// The data of the component. Used to specify the data inline. Either data /// or uri can be used to specify the data within the component. /// /// [AWSProperty(Min=1, Max=1024)] public string Data { get { return this._data; } set { this._data = value; } } // Check to see if Data property is set internal bool IsSetData() { return this._data != null; } /// /// Gets and sets the property Description. /// /// The description of the component. Describes the contents of the component. /// /// [AWSProperty(Min=1, 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 Format. /// /// The format of the resource that you want to import as a component. /// /// [AWSProperty(Required=true)] public ComponentFormat Format { get { return this._format; } set { this._format = value; } } // Check to see if Format property is set internal bool IsSetFormat() { return this._format != null; } /// /// Gets and sets the property KmsKeyId. /// /// The ID of the KMS key that should be used to encrypt this component. /// /// [AWSProperty(Min=1, Max=1024)] public string KmsKeyId { get { return this._kmsKeyId; } set { this._kmsKeyId = value; } } // Check to see if KmsKeyId property is set internal bool IsSetKmsKeyId() { return this._kmsKeyId != null; } /// /// Gets and sets the property Name. /// /// The name of the component. /// /// [AWSProperty(Required=true)] 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 Platform. /// /// The platform of the component. /// /// [AWSProperty(Required=true)] public Platform Platform { get { return this._platform; } set { this._platform = value; } } // Check to see if Platform property is set internal bool IsSetPlatform() { return this._platform != null; } /// /// Gets and sets the property SemanticVersion. /// /// The semantic version of the component. This version follows the semantic version syntax. /// /// /// /// The semantic version has four nodes: <major>.<minor>.<patch>/<build>. /// You can assign values for the first three, and can filter on all of them. /// /// /// /// Filtering: With semantic versioning, you have the flexibility to use wildcards /// (x) to specify the most recent versions or nodes when selecting the base image or /// components for your recipe. When you use a wildcard in any node, all nodes to the /// right of the first wildcard must also be wildcards. /// /// /// [AWSProperty(Required=true)] public string SemanticVersion { get { return this._semanticVersion; } set { this._semanticVersion = value; } } // Check to see if SemanticVersion property is set internal bool IsSetSemanticVersion() { return this._semanticVersion != null; } /// /// Gets and sets the property Tags. /// /// The tags of the component. /// /// [AWSProperty(Min=1, 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 the component denotes whether the component is used to build the image, /// or only to test it. /// /// [AWSProperty(Required=true)] public ComponentType 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 Uri. /// /// The uri of the component. Must be an Amazon S3 URL and the requester must have permission /// to access the Amazon S3 bucket. If you use Amazon S3, you can specify component content /// up to your service quota. Either data or uri can be used /// to specify the data within the component. /// /// public string Uri { get { return this._uri; } set { this._uri = value; } } // Check to see if Uri property is set internal bool IsSetUri() { return this._uri != null; } } }