/*
* 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 apigateway-2015-07-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.APIGateway.Model
{
///
/// Represents a REST API.
///
public partial class PutRestApiResponse : AmazonWebServiceResponse
{
private ApiKeySourceType _apiKeySource;
private List _binaryMediaTypes = new List();
private DateTime? _createdDate;
private string _description;
private bool? _disableExecuteApiEndpoint;
private EndpointConfiguration _endpointConfiguration;
private string _id;
private int? _minimumCompressionSize;
private string _name;
private string _policy;
private Dictionary _tags = new Dictionary();
private string _version;
private List _warnings = new List();
///
/// Gets and sets the property ApiKeySource.
///
/// The source of the API key for metering requests according to a usage plan. Valid values
/// are: >HEADER
to read the API key from the X-API-Key
header
/// of a request. AUTHORIZER
to read the API key from the UsageIdentifierKey
/// from a custom authorizer.
///
///
public ApiKeySourceType ApiKeySource
{
get { return this._apiKeySource; }
set { this._apiKeySource = value; }
}
// Check to see if ApiKeySource property is set
internal bool IsSetApiKeySource()
{
return this._apiKeySource != null;
}
///
/// Gets and sets the property BinaryMediaTypes.
///
/// The list of binary media types supported by the RestApi. By default, the RestApi supports
/// only UTF-8-encoded text payloads.
///
///
public List BinaryMediaTypes
{
get { return this._binaryMediaTypes; }
set { this._binaryMediaTypes = value; }
}
// Check to see if BinaryMediaTypes property is set
internal bool IsSetBinaryMediaTypes()
{
return this._binaryMediaTypes != null && this._binaryMediaTypes.Count > 0;
}
///
/// Gets and sets the property CreatedDate.
///
/// The timestamp when the API was created.
///
///
public DateTime CreatedDate
{
get { return this._createdDate.GetValueOrDefault(); }
set { this._createdDate = value; }
}
// Check to see if CreatedDate property is set
internal bool IsSetCreatedDate()
{
return this._createdDate.HasValue;
}
///
/// Gets and sets the property Description.
///
/// The API's description.
///
///
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 DisableExecuteApiEndpoint.
///
/// Specifies whether clients can invoke your API by using the default execute-api
/// endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com
/// endpoint. To require that clients use a custom domain name to invoke your API, disable
/// the default endpoint.
///
///
public bool DisableExecuteApiEndpoint
{
get { return this._disableExecuteApiEndpoint.GetValueOrDefault(); }
set { this._disableExecuteApiEndpoint = value; }
}
// Check to see if DisableExecuteApiEndpoint property is set
internal bool IsSetDisableExecuteApiEndpoint()
{
return this._disableExecuteApiEndpoint.HasValue;
}
///
/// Gets and sets the property EndpointConfiguration.
///
/// The endpoint configuration of this RestApi showing the endpoint types of the API.
///
///
///
public EndpointConfiguration EndpointConfiguration
{
get { return this._endpointConfiguration; }
set { this._endpointConfiguration = value; }
}
// Check to see if EndpointConfiguration property is set
internal bool IsSetEndpointConfiguration()
{
return this._endpointConfiguration != null;
}
///
/// Gets and sets the property Id.
///
/// The API's identifier. This identifier is unique across all of your APIs in API Gateway.
///
///
public string Id
{
get { return this._id; }
set { this._id = value; }
}
// Check to see if Id property is set
internal bool IsSetId()
{
return this._id != null;
}
///
/// Gets and sets the property MinimumCompressionSize.
///
/// A nullable integer that is used to enable compression (with non-negative between 0
/// and 10485760 (10M) bytes, inclusive) or disable compression (with a null value) on
/// an API. When compression is enabled, compression or decompression is not applied on
/// the payload if the payload size is smaller than this value. Setting it to zero allows
/// compression for any payload size.
///
///
public int MinimumCompressionSize
{
get { return this._minimumCompressionSize.GetValueOrDefault(); }
set { this._minimumCompressionSize = value; }
}
// Check to see if MinimumCompressionSize property is set
internal bool IsSetMinimumCompressionSize()
{
return this._minimumCompressionSize.HasValue;
}
///
/// Gets and sets the property Name.
///
/// The API's name.
///
///
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 Policy.
///
/// A stringified JSON policy document that applies to this RestApi regardless of the
/// caller and Method configuration.
///
///
public string Policy
{
get { return this._policy; }
set { this._policy = value; }
}
// Check to see if Policy property is set
internal bool IsSetPolicy()
{
return this._policy != null;
}
///
/// Gets and sets the property Tags.
///
/// The collection of tags. Each tag element is associated with a given resource.
///
///
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 Version.
///
/// A version identifier for the API.
///
///
public string Version
{
get { return this._version; }
set { this._version = value; }
}
// Check to see if Version property is set
internal bool IsSetVersion()
{
return this._version != null;
}
///
/// Gets and sets the property Warnings.
///
/// The warning messages reported when failonwarnings
is turned on during
/// API import.
///
///
public List Warnings
{
get { return this._warnings; }
set { this._warnings = value; }
}
// Check to see if Warnings property is set
internal bool IsSetWarnings()
{
return this._warnings != null && this._warnings.Count > 0;
}
}
}