/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about a Lambda function specified in a deployment.
* See Also:
AWS
* API Reference
The name of a Lambda function.
*/ inline const Aws::String& GetFunctionName() const{ return m_functionName; } /** *The name of a Lambda function.
*/ inline bool FunctionNameHasBeenSet() const { return m_functionNameHasBeenSet; } /** *The name of a Lambda function.
*/ inline void SetFunctionName(const Aws::String& value) { m_functionNameHasBeenSet = true; m_functionName = value; } /** *The name of a Lambda function.
*/ inline void SetFunctionName(Aws::String&& value) { m_functionNameHasBeenSet = true; m_functionName = std::move(value); } /** *The name of a Lambda function.
*/ inline void SetFunctionName(const char* value) { m_functionNameHasBeenSet = true; m_functionName.assign(value); } /** *The name of a Lambda function.
*/ inline LambdaFunctionInfo& WithFunctionName(const Aws::String& value) { SetFunctionName(value); return *this;} /** *The name of a Lambda function.
*/ inline LambdaFunctionInfo& WithFunctionName(Aws::String&& value) { SetFunctionName(std::move(value)); return *this;} /** *The name of a Lambda function.
*/ inline LambdaFunctionInfo& WithFunctionName(const char* value) { SetFunctionName(value); return *this;} /** *The alias of a Lambda function. For more information, see Lambda * Function Aliases in the Lambda Developer Guide.
*/ inline const Aws::String& GetFunctionAlias() const{ return m_functionAlias; } /** *The alias of a Lambda function. For more information, see Lambda * Function Aliases in the Lambda Developer Guide.
*/ inline bool FunctionAliasHasBeenSet() const { return m_functionAliasHasBeenSet; } /** *The alias of a Lambda function. For more information, see Lambda * Function Aliases in the Lambda Developer Guide.
*/ inline void SetFunctionAlias(const Aws::String& value) { m_functionAliasHasBeenSet = true; m_functionAlias = value; } /** *The alias of a Lambda function. For more information, see Lambda * Function Aliases in the Lambda Developer Guide.
*/ inline void SetFunctionAlias(Aws::String&& value) { m_functionAliasHasBeenSet = true; m_functionAlias = std::move(value); } /** *The alias of a Lambda function. For more information, see Lambda * Function Aliases in the Lambda Developer Guide.
*/ inline void SetFunctionAlias(const char* value) { m_functionAliasHasBeenSet = true; m_functionAlias.assign(value); } /** *The alias of a Lambda function. For more information, see Lambda * Function Aliases in the Lambda Developer Guide.
*/ inline LambdaFunctionInfo& WithFunctionAlias(const Aws::String& value) { SetFunctionAlias(value); return *this;} /** *The alias of a Lambda function. For more information, see Lambda * Function Aliases in the Lambda Developer Guide.
*/ inline LambdaFunctionInfo& WithFunctionAlias(Aws::String&& value) { SetFunctionAlias(std::move(value)); return *this;} /** *The alias of a Lambda function. For more information, see Lambda * Function Aliases in the Lambda Developer Guide.
*/ inline LambdaFunctionInfo& WithFunctionAlias(const char* value) { SetFunctionAlias(value); return *this;} /** *The version of a Lambda function that production traffic points to.
*/ inline const Aws::String& GetCurrentVersion() const{ return m_currentVersion; } /** *The version of a Lambda function that production traffic points to.
*/ inline bool CurrentVersionHasBeenSet() const { return m_currentVersionHasBeenSet; } /** *The version of a Lambda function that production traffic points to.
*/ inline void SetCurrentVersion(const Aws::String& value) { m_currentVersionHasBeenSet = true; m_currentVersion = value; } /** *The version of a Lambda function that production traffic points to.
*/ inline void SetCurrentVersion(Aws::String&& value) { m_currentVersionHasBeenSet = true; m_currentVersion = std::move(value); } /** *The version of a Lambda function that production traffic points to.
*/ inline void SetCurrentVersion(const char* value) { m_currentVersionHasBeenSet = true; m_currentVersion.assign(value); } /** *The version of a Lambda function that production traffic points to.
*/ inline LambdaFunctionInfo& WithCurrentVersion(const Aws::String& value) { SetCurrentVersion(value); return *this;} /** *The version of a Lambda function that production traffic points to.
*/ inline LambdaFunctionInfo& WithCurrentVersion(Aws::String&& value) { SetCurrentVersion(std::move(value)); return *this;} /** *The version of a Lambda function that production traffic points to.
*/ inline LambdaFunctionInfo& WithCurrentVersion(const char* value) { SetCurrentVersion(value); return *this;} /** *The version of a Lambda function that production traffic points to after the * Lambda function is deployed.
*/ inline const Aws::String& GetTargetVersion() const{ return m_targetVersion; } /** *The version of a Lambda function that production traffic points to after the * Lambda function is deployed.
*/ inline bool TargetVersionHasBeenSet() const { return m_targetVersionHasBeenSet; } /** *The version of a Lambda function that production traffic points to after the * Lambda function is deployed.
*/ inline void SetTargetVersion(const Aws::String& value) { m_targetVersionHasBeenSet = true; m_targetVersion = value; } /** *The version of a Lambda function that production traffic points to after the * Lambda function is deployed.
*/ inline void SetTargetVersion(Aws::String&& value) { m_targetVersionHasBeenSet = true; m_targetVersion = std::move(value); } /** *The version of a Lambda function that production traffic points to after the * Lambda function is deployed.
*/ inline void SetTargetVersion(const char* value) { m_targetVersionHasBeenSet = true; m_targetVersion.assign(value); } /** *The version of a Lambda function that production traffic points to after the * Lambda function is deployed.
*/ inline LambdaFunctionInfo& WithTargetVersion(const Aws::String& value) { SetTargetVersion(value); return *this;} /** *The version of a Lambda function that production traffic points to after the * Lambda function is deployed.
*/ inline LambdaFunctionInfo& WithTargetVersion(Aws::String&& value) { SetTargetVersion(std::move(value)); return *this;} /** *The version of a Lambda function that production traffic points to after the * Lambda function is deployed.
*/ inline LambdaFunctionInfo& WithTargetVersion(const char* value) { SetTargetVersion(value); return *this;} /** *The percentage of production traffic that the target version of a Lambda * function receives.
*/ inline double GetTargetVersionWeight() const{ return m_targetVersionWeight; } /** *The percentage of production traffic that the target version of a Lambda * function receives.
*/ inline bool TargetVersionWeightHasBeenSet() const { return m_targetVersionWeightHasBeenSet; } /** *The percentage of production traffic that the target version of a Lambda * function receives.
*/ inline void SetTargetVersionWeight(double value) { m_targetVersionWeightHasBeenSet = true; m_targetVersionWeight = value; } /** *The percentage of production traffic that the target version of a Lambda * function receives.
*/ inline LambdaFunctionInfo& WithTargetVersionWeight(double value) { SetTargetVersionWeight(value); return *this;} private: Aws::String m_functionName; bool m_functionNameHasBeenSet = false; Aws::String m_functionAlias; bool m_functionAliasHasBeenSet = false; Aws::String m_currentVersion; bool m_currentVersionHasBeenSet = false; Aws::String m_targetVersion; bool m_targetVersionHasBeenSet = false; double m_targetVersionWeight; bool m_targetVersionWeightHasBeenSet = false; }; } // namespace Model } // namespace CodeDeploy } // namespace Aws