/*
* 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
{
///
/// Container for the parameters to the PutRestApi operation.
/// A feature of the API Gateway control service for updating an existing API with an
/// input of external API definitions. The update can take the form of merging the supplied
/// definition into the existing API or overwriting the existing API.
///
public partial class PutRestApiRequest : AmazonAPIGatewayRequest
{
private MemoryStream _body;
private bool? _failOnWarnings;
private PutMode _mode;
private Dictionary _parameters = new Dictionary();
private string _restApiId;
///
/// Gets and sets the property Body.
///
/// The PUT request body containing external API definitions. Currently, only OpenAPI
/// definition JSON/YAML files are supported. The maximum size of the API definition file
/// is 6MB.
///
///
[AWSProperty(Required=true)]
public MemoryStream Body
{
get { return this._body; }
set { this._body = value; }
}
// Check to see if Body property is set
internal bool IsSetBody()
{
return this._body != null;
}
///
/// Gets and sets the property FailOnWarnings.
///
/// A query parameter to indicate whether to rollback the API update (true
)
/// or not (false
) when a warning is encountered. The default value is false
.
///
///
public bool FailOnWarnings
{
get { return this._failOnWarnings.GetValueOrDefault(); }
set { this._failOnWarnings = value; }
}
// Check to see if FailOnWarnings property is set
internal bool IsSetFailOnWarnings()
{
return this._failOnWarnings.HasValue;
}
///
/// Gets and sets the property Mode.
///
/// The mode
query parameter to specify the update mode. Valid values are
/// "merge" and "overwrite". By default, the update mode is "merge".
///
///
public PutMode Mode
{
get { return this._mode; }
set { this._mode = value; }
}
// Check to see if Mode property is set
internal bool IsSetMode()
{
return this._mode != null;
}
///
/// Gets and sets the property Parameters.
///
/// Custom header parameters as part of the request. For example, to exclude DocumentationParts
/// from an imported API, set ignore=documentation
as a parameters
/// value, as in the AWS CLI command of aws apigateway import-rest-api --parameters
/// ignore=documentation --body 'file:///path/to/imported-api-body.json'
.
///
///
public Dictionary Parameters
{
get { return this._parameters; }
set { this._parameters = value; }
}
// Check to see if Parameters property is set
internal bool IsSetParameters()
{
return this._parameters != null && this._parameters.Count > 0;
}
///
/// Gets and sets the property RestApiId.
///
/// The string identifier of the associated RestApi.
///
///
[AWSProperty(Required=true)]
public string RestApiId
{
get { return this._restApiId; }
set { this._restApiId = value; }
}
// Check to see if RestApiId property is set
internal bool IsSetRestApiId()
{
return this._restApiId != null;
}
}
}