/* * 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 ec2-2016-11-15.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.EC2.Model { /// /// Container for the parameters to the CreateCustomerGateway operation. /// Provides information to Amazon Web Services about your customer gateway device. The /// customer gateway device is the appliance at your end of the VPN connection. You must /// provide the IP address of the customer gateway device’s external interface. The IP /// address must be static and can be behind a device performing network address translation /// (NAT). /// /// /// /// For devices that use Border Gateway Protocol (BGP), you can also provide the device's /// BGP Autonomous System Number (ASN). You can use an existing ASN assigned to your network. /// If you don't have an ASN already, you can use a private ASN. For more information, /// see Customer /// gateway options for your Site-to-Site VPN connection in the Amazon Web Services /// Site-to-Site VPN User Guide. /// /// /// /// To create more than one customer gateway with the same VPN type, IP address, and BGP /// ASN, specify a unique device name for each customer gateway. An identical request /// returns information about the existing customer gateway; it doesn't create a new customer /// gateway. /// /// public partial class CreateCustomerGatewayRequest : AmazonEC2Request { private int? _bgpAsn; private string _certificateArn; private string _deviceName; private string _ipAddress; private string _publicIp; private List _tagSpecifications = new List(); private GatewayType _type; /// /// Empty constructor used to set properties independently even when a simple constructor is available /// public CreateCustomerGatewayRequest() { } /// /// Instantiates CreateCustomerGatewayRequest with the parameterized properties /// /// The type of VPN connection that this customer gateway supports (ipsec.1). /// This member has been deprecated. The Internet-routable IP address for the customer gateway's outside interface. The address must be static. /// For devices that support BGP, the customer gateway's BGP ASN. Default: 65000 public CreateCustomerGatewayRequest(GatewayType type, string publicIp, int bgpAsn) { _type = type; _publicIp = publicIp; _bgpAsn = bgpAsn; } /// /// Gets and sets the property BgpAsn. /// /// For devices that support BGP, the customer gateway's BGP ASN. /// /// /// /// Default: 65000 /// /// public int BgpAsn { get { return this._bgpAsn.GetValueOrDefault(); } set { this._bgpAsn = value; } } // Check to see if BgpAsn property is set internal bool IsSetBgpAsn() { return this._bgpAsn.HasValue; } /// /// Gets and sets the property CertificateArn. /// /// The Amazon Resource Name (ARN) for the customer gateway certificate. /// /// public string CertificateArn { get { return this._certificateArn; } set { this._certificateArn = value; } } // Check to see if CertificateArn property is set internal bool IsSetCertificateArn() { return this._certificateArn != null; } /// /// Gets and sets the property DeviceName. /// /// A name for the customer gateway device. /// /// /// /// Length Constraints: Up to 255 characters. /// /// public string DeviceName { get { return this._deviceName; } set { this._deviceName = value; } } // Check to see if DeviceName property is set internal bool IsSetDeviceName() { return this._deviceName != null; } /// /// Gets and sets the property IpAddress. /// /// IPv4 address for the customer gateway device's outside interface. The address must /// be static. /// /// public string IpAddress { get { return this._ipAddress; } set { this._ipAddress = value; } } // Check to see if IpAddress property is set internal bool IsSetIpAddress() { return this._ipAddress != null; } /// /// Gets and sets the property PublicIp. /// /// This member has been deprecated. The Internet-routable IP address for the /// customer gateway's outside interface. The address must be static. /// /// public string PublicIp { get { return this._publicIp; } set { this._publicIp = value; } } // Check to see if PublicIp property is set internal bool IsSetPublicIp() { return this._publicIp != null; } /// /// Gets and sets the property TagSpecifications. /// /// The tags to apply to the customer gateway. /// /// public List TagSpecifications { get { return this._tagSpecifications; } set { this._tagSpecifications = value; } } // Check to see if TagSpecifications property is set internal bool IsSetTagSpecifications() { return this._tagSpecifications != null && this._tagSpecifications.Count > 0; } /// /// Gets and sets the property Type. /// /// The type of VPN connection that this customer gateway supports (ipsec.1). /// /// [AWSProperty(Required=true)] public GatewayType Type { get { return this._type; } set { this._type = value; } } // Check to see if Type property is set internal bool IsSetType() { return this._type != null; } } }