/*
* 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 lambda-2015-03-31.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.Lambda.Model
{
///
/// Details about a Lambda function URL.
///
public partial class FunctionUrlConfig
{
private FunctionUrlAuthType _authType;
private Cors _cors;
private string _creationTime;
private string _functionArn;
private string _functionUrl;
private InvokeMode _invokeMode;
private string _lastModifiedTime;
///
/// Gets and sets the property AuthType.
///
/// The type of authentication that your function URL uses. Set to AWS_IAM
/// if you want to restrict access to authenticated users only. Set to NONE
/// if you want to bypass IAM authentication to create a public endpoint. For more information,
/// see Security
/// and auth model for Lambda function URLs.
///
///
[AWSProperty(Required=true)]
public FunctionUrlAuthType AuthType
{
get { return this._authType; }
set { this._authType = value; }
}
// Check to see if AuthType property is set
internal bool IsSetAuthType()
{
return this._authType != null;
}
///
/// Gets and sets the property Cors.
///
/// The cross-origin
/// resource sharing (CORS) settings for your function URL.
///
///
public Cors Cors
{
get { return this._cors; }
set { this._cors = value; }
}
// Check to see if Cors property is set
internal bool IsSetCors()
{
return this._cors != null;
}
///
/// Gets and sets the property CreationTime.
///
/// When the function URL was created, in ISO-8601
/// format (YYYY-MM-DDThh:mm:ss.sTZD).
///
///
[AWSProperty(Required=true)]
public string CreationTime
{
get { return this._creationTime; }
set { this._creationTime = value; }
}
// Check to see if CreationTime property is set
internal bool IsSetCreationTime()
{
return this._creationTime != null;
}
///
/// Gets and sets the property FunctionArn.
///
/// The Amazon Resource Name (ARN) of your function.
///
///
[AWSProperty(Required=true)]
public string FunctionArn
{
get { return this._functionArn; }
set { this._functionArn = value; }
}
// Check to see if FunctionArn property is set
internal bool IsSetFunctionArn()
{
return this._functionArn != null;
}
///
/// Gets and sets the property FunctionUrl.
///
/// The HTTP URL endpoint for your function.
///
///
[AWSProperty(Required=true, Min=40, Max=100)]
public string FunctionUrl
{
get { return this._functionUrl; }
set { this._functionUrl = value; }
}
// Check to see if FunctionUrl property is set
internal bool IsSetFunctionUrl()
{
return this._functionUrl != null;
}
///
/// Gets and sets the property InvokeMode.
///
/// Use one of the following options:
///
/// -
///
///
BUFFERED
– This is the default option. Lambda invokes your function
/// using the Invoke
API operation. Invocation results are available when
/// the payload is complete. The maximum payload size is 6 MB.
///
/// -
///
///
RESPONSE_STREAM
– Your function streams payload results as they become
/// available. Lambda invokes your function using the InvokeWithResponseStream
/// API operation. The maximum response payload size is 20 MB, however, you can request
/// a quota increase.
///
///
///
public InvokeMode InvokeMode
{
get { return this._invokeMode; }
set { this._invokeMode = value; }
}
// Check to see if InvokeMode property is set
internal bool IsSetInvokeMode()
{
return this._invokeMode != null;
}
///
/// Gets and sets the property LastModifiedTime.
///
/// When the function URL configuration was last updated, in ISO-8601
/// format (YYYY-MM-DDThh:mm:ss.sTZD).
///
///
[AWSProperty(Required=true)]
public string LastModifiedTime
{
get { return this._lastModifiedTime; }
set { this._lastModifiedTime = value; }
}
// Check to see if LastModifiedTime property is set
internal bool IsSetLastModifiedTime()
{
return this._lastModifiedTime != null;
}
}
}