/** * 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 { /** *

Contains information about code hooks that Amazon Lex calls during a * conversation.

See Also:

AWS * API Reference

*/ class CodeHookSpecification { public: AWS_LEXMODELSV2_API CodeHookSpecification(); AWS_LEXMODELSV2_API CodeHookSpecification(Aws::Utils::Json::JsonView jsonValue); AWS_LEXMODELSV2_API CodeHookSpecification& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const; inline const LambdaCodeHook& GetLambdaCodeHook() const{ return m_lambdaCodeHook; } inline bool LambdaCodeHookHasBeenSet() const { return m_lambdaCodeHookHasBeenSet; } inline void SetLambdaCodeHook(const LambdaCodeHook& value) { m_lambdaCodeHookHasBeenSet = true; m_lambdaCodeHook = value; } inline void SetLambdaCodeHook(LambdaCodeHook&& value) { m_lambdaCodeHookHasBeenSet = true; m_lambdaCodeHook = std::move(value); } inline CodeHookSpecification& WithLambdaCodeHook(const LambdaCodeHook& value) { SetLambdaCodeHook(value); return *this;} inline CodeHookSpecification& WithLambdaCodeHook(LambdaCodeHook&& value) { SetLambdaCodeHook(std::move(value)); return *this;} private: LambdaCodeHook m_lambdaCodeHook; bool m_lambdaCodeHookHasBeenSet = false; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws