/* * 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 lightsail-2016-11-28.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.Lightsail.Model { /// /// The metadata options for the instance. /// public partial class InstanceMetadataOptions { private HttpEndpoint _httpEndpoint; private HttpProtocolIpv6 _httpProtocolIpv6; private int? _httpPutResponseHopLimit; private HttpTokens _httpTokens; private InstanceMetadataState _state; /// /// Gets and sets the property HttpEndpoint. /// /// Indicates whether the HTTP metadata endpoint on your instances is enabled or disabled. /// /// /// /// If the value is disabled, you cannot access your instance metadata. /// /// public HttpEndpoint HttpEndpoint { get { return this._httpEndpoint; } set { this._httpEndpoint = value; } } // Check to see if HttpEndpoint property is set internal bool IsSetHttpEndpoint() { return this._httpEndpoint != null; } /// /// Gets and sets the property HttpProtocolIpv6. /// /// Indicates whether the IPv6 endpoint for the instance metadata service is enabled or /// disabled. /// /// public HttpProtocolIpv6 HttpProtocolIpv6 { get { return this._httpProtocolIpv6; } set { this._httpProtocolIpv6 = value; } } // Check to see if HttpProtocolIpv6 property is set internal bool IsSetHttpProtocolIpv6() { return this._httpProtocolIpv6 != null; } /// /// Gets and sets the property HttpPutResponseHopLimit. /// /// The desired HTTP PUT response hop limit for instance metadata requests. A larger number /// means that the instance metadata requests can travel farther. /// /// public int HttpPutResponseHopLimit { get { return this._httpPutResponseHopLimit.GetValueOrDefault(); } set { this._httpPutResponseHopLimit = value; } } // Check to see if HttpPutResponseHopLimit property is set internal bool IsSetHttpPutResponseHopLimit() { return this._httpPutResponseHopLimit.HasValue; } /// /// Gets and sets the property HttpTokens. /// /// The state of token usage for your instance metadata requests. /// /// /// /// If the state is optional, you can choose whether to retrieve instance /// metadata with a signed token header on your request. If you retrieve the IAM role /// credentials without a token, the version 1.0 role credentials are returned. If you /// retrieve the IAM role credentials by using a valid signed token, the version 2.0 role /// credentials are returned. /// /// /// /// If the state is required, you must send a signed token header with all /// instance metadata retrieval requests. In this state, retrieving the IAM role credential /// always returns the version 2.0 credentials. The version 1.0 credentials are not available. /// /// /// /// Not all instance blueprints in Lightsail support version 2.0 credentials. Use the /// MetadataNoToken instance metric to track the number of calls to the instance /// metadata service that are using version 1.0 credentials. For more information, see /// Viewing /// instance metrics in Amazon Lightsail in the Amazon Lightsail Developer Guide. /// /// /// public HttpTokens HttpTokens { get { return this._httpTokens; } set { this._httpTokens = value; } } // Check to see if HttpTokens property is set internal bool IsSetHttpTokens() { return this._httpTokens != null; } /// /// Gets and sets the property State. /// /// The state of the metadata option changes. /// /// /// /// The following states are possible: /// /// /// public InstanceMetadataState State { get { return this._state; } set { this._state = value; } } // Check to see if State property is set internal bool IsSetState() { return this._state != null; } } }