/* * 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 appmesh-2019-01-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.AppMesh.Model { /// /// Container for the parameters to the CreateVirtualGateway operation. /// Creates a virtual gateway. /// /// /// /// A virtual gateway allows resources outside your mesh to communicate to resources that /// are inside your mesh. The virtual gateway represents an Envoy proxy running in an /// Amazon ECS task, in a Kubernetes service, or on an Amazon EC2 instance. Unlike a virtual /// node, which represents an Envoy running with an application, a virtual gateway represents /// Envoy deployed by itself. /// /// /// /// For more information about virtual gateways, see Virtual /// gateways. /// /// public partial class CreateVirtualGatewayRequest : AmazonAppMeshRequest { private string _clientToken; private string _meshName; private string _meshOwner; private VirtualGatewaySpec _spec; private List _tags = new List(); private string _virtualGatewayName; /// /// Gets and sets the property ClientToken. /// /// Unique, case-sensitive identifier that you provide to ensure the idempotency of the /// request. Up to 36 letters, numbers, hyphens, and underscores are allowed. /// /// 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 MeshName. /// /// The name of the service mesh to create the virtual gateway in. /// /// [AWSProperty(Required=true, Min=1, Max=255)] public string MeshName { get { return this._meshName; } set { this._meshName = value; } } // Check to see if MeshName property is set internal bool IsSetMeshName() { return this._meshName != null; } /// /// Gets and sets the property MeshOwner. /// /// The Amazon Web Services IAM account ID of the service mesh owner. If the account ID /// is not your own, then the account that you specify must share the mesh with your account /// before you can create the resource in the service mesh. For more information about /// mesh sharing, see Working /// with shared meshes. /// /// [AWSProperty(Min=12, Max=12)] public string MeshOwner { get { return this._meshOwner; } set { this._meshOwner = value; } } // Check to see if MeshOwner property is set internal bool IsSetMeshOwner() { return this._meshOwner != null; } /// /// Gets and sets the property Spec. /// /// The virtual gateway specification to apply. /// /// [AWSProperty(Required=true)] public VirtualGatewaySpec Spec { get { return this._spec; } set { this._spec = value; } } // Check to see if Spec property is set internal bool IsSetSpec() { return this._spec != null; } /// /// Gets and sets the property Tags. /// /// Optional metadata that you can apply to the virtual gateway to assist with categorization /// and organization. Each tag consists of a key and an optional value, both of which /// you define. Tag keys can have a maximum character length of 128 characters, and tag /// values can have a maximum length of 256 characters. /// /// [AWSProperty(Min=0, Max=50)] public List 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 VirtualGatewayName. /// /// The name to use for the virtual gateway. /// /// [AWSProperty(Required=true, Min=1, Max=255)] public string VirtualGatewayName { get { return this._virtualGatewayName; } set { this._virtualGatewayName = value; } } // Check to see if VirtualGatewayName property is set internal bool IsSetVirtualGatewayName() { return this._virtualGatewayName != null; } } }