/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace LexModelsV2 { namespace Model { /** *

Specifies a Lambda function that verifies requests to a bot or fulfills the * user's request to a bot.

See Also:

AWS * API Reference

*/ class LambdaCodeHook { public: AWS_LEXMODELSV2_API LambdaCodeHook(); AWS_LEXMODELSV2_API LambdaCodeHook(Aws::Utils::Json::JsonView jsonValue); AWS_LEXMODELSV2_API LambdaCodeHook& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The Amazon Resource Name (ARN) of the Lambda function.

*/ inline const Aws::String& GetLambdaARN() const{ return m_lambdaARN; } /** *

The Amazon Resource Name (ARN) of the Lambda function.

*/ inline bool LambdaARNHasBeenSet() const { return m_lambdaARNHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the Lambda function.

*/ inline void SetLambdaARN(const Aws::String& value) { m_lambdaARNHasBeenSet = true; m_lambdaARN = value; } /** *

The Amazon Resource Name (ARN) of the Lambda function.

*/ inline void SetLambdaARN(Aws::String&& value) { m_lambdaARNHasBeenSet = true; m_lambdaARN = std::move(value); } /** *

The Amazon Resource Name (ARN) of the Lambda function.

*/ inline void SetLambdaARN(const char* value) { m_lambdaARNHasBeenSet = true; m_lambdaARN.assign(value); } /** *

The Amazon Resource Name (ARN) of the Lambda function.

*/ inline LambdaCodeHook& WithLambdaARN(const Aws::String& value) { SetLambdaARN(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Lambda function.

*/ inline LambdaCodeHook& WithLambdaARN(Aws::String&& value) { SetLambdaARN(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the Lambda function.

*/ inline LambdaCodeHook& WithLambdaARN(const char* value) { SetLambdaARN(value); return *this;} /** *

The version of the request-response that you want Amazon Lex to use to invoke * your Lambda function.

*/ inline const Aws::String& GetCodeHookInterfaceVersion() const{ return m_codeHookInterfaceVersion; } /** *

The version of the request-response that you want Amazon Lex to use to invoke * your Lambda function.

*/ inline bool CodeHookInterfaceVersionHasBeenSet() const { return m_codeHookInterfaceVersionHasBeenSet; } /** *

The version of the request-response that you want Amazon Lex to use to invoke * your Lambda function.

*/ inline void SetCodeHookInterfaceVersion(const Aws::String& value) { m_codeHookInterfaceVersionHasBeenSet = true; m_codeHookInterfaceVersion = value; } /** *

The version of the request-response that you want Amazon Lex to use to invoke * your Lambda function.

*/ inline void SetCodeHookInterfaceVersion(Aws::String&& value) { m_codeHookInterfaceVersionHasBeenSet = true; m_codeHookInterfaceVersion = std::move(value); } /** *

The version of the request-response that you want Amazon Lex to use to invoke * your Lambda function.

*/ inline void SetCodeHookInterfaceVersion(const char* value) { m_codeHookInterfaceVersionHasBeenSet = true; m_codeHookInterfaceVersion.assign(value); } /** *

The version of the request-response that you want Amazon Lex to use to invoke * your Lambda function.

*/ inline LambdaCodeHook& WithCodeHookInterfaceVersion(const Aws::String& value) { SetCodeHookInterfaceVersion(value); return *this;} /** *

The version of the request-response that you want Amazon Lex to use to invoke * your Lambda function.

*/ inline LambdaCodeHook& WithCodeHookInterfaceVersion(Aws::String&& value) { SetCodeHookInterfaceVersion(std::move(value)); return *this;} /** *

The version of the request-response that you want Amazon Lex to use to invoke * your Lambda function.

*/ inline LambdaCodeHook& WithCodeHookInterfaceVersion(const char* value) { SetCodeHookInterfaceVersion(value); return *this;} private: Aws::String m_lambdaARN; bool m_lambdaARNHasBeenSet = false; Aws::String m_codeHookInterfaceVersion; bool m_codeHookInterfaceVersionHasBeenSet = false; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws