/** * 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 Synthetics { namespace Model { /** *

This structure contains information about the canary's Lambda handler and * where its code is stored by CloudWatch Synthetics.

See Also:

AWS * API Reference

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

The ARN of the Lambda layer where Synthetics stores the canary script * code.

*/ inline const Aws::String& GetSourceLocationArn() const{ return m_sourceLocationArn; } /** *

The ARN of the Lambda layer where Synthetics stores the canary script * code.

*/ inline bool SourceLocationArnHasBeenSet() const { return m_sourceLocationArnHasBeenSet; } /** *

The ARN of the Lambda layer where Synthetics stores the canary script * code.

*/ inline void SetSourceLocationArn(const Aws::String& value) { m_sourceLocationArnHasBeenSet = true; m_sourceLocationArn = value; } /** *

The ARN of the Lambda layer where Synthetics stores the canary script * code.

*/ inline void SetSourceLocationArn(Aws::String&& value) { m_sourceLocationArnHasBeenSet = true; m_sourceLocationArn = std::move(value); } /** *

The ARN of the Lambda layer where Synthetics stores the canary script * code.

*/ inline void SetSourceLocationArn(const char* value) { m_sourceLocationArnHasBeenSet = true; m_sourceLocationArn.assign(value); } /** *

The ARN of the Lambda layer where Synthetics stores the canary script * code.

*/ inline CanaryCodeOutput& WithSourceLocationArn(const Aws::String& value) { SetSourceLocationArn(value); return *this;} /** *

The ARN of the Lambda layer where Synthetics stores the canary script * code.

*/ inline CanaryCodeOutput& WithSourceLocationArn(Aws::String&& value) { SetSourceLocationArn(std::move(value)); return *this;} /** *

The ARN of the Lambda layer where Synthetics stores the canary script * code.

*/ inline CanaryCodeOutput& WithSourceLocationArn(const char* value) { SetSourceLocationArn(value); return *this;} /** *

The entry point to use for the source code when running the canary.

*/ inline const Aws::String& GetHandler() const{ return m_handler; } /** *

The entry point to use for the source code when running the canary.

*/ inline bool HandlerHasBeenSet() const { return m_handlerHasBeenSet; } /** *

The entry point to use for the source code when running the canary.

*/ inline void SetHandler(const Aws::String& value) { m_handlerHasBeenSet = true; m_handler = value; } /** *

The entry point to use for the source code when running the canary.

*/ inline void SetHandler(Aws::String&& value) { m_handlerHasBeenSet = true; m_handler = std::move(value); } /** *

The entry point to use for the source code when running the canary.

*/ inline void SetHandler(const char* value) { m_handlerHasBeenSet = true; m_handler.assign(value); } /** *

The entry point to use for the source code when running the canary.

*/ inline CanaryCodeOutput& WithHandler(const Aws::String& value) { SetHandler(value); return *this;} /** *

The entry point to use for the source code when running the canary.

*/ inline CanaryCodeOutput& WithHandler(Aws::String&& value) { SetHandler(std::move(value)); return *this;} /** *

The entry point to use for the source code when running the canary.

*/ inline CanaryCodeOutput& WithHandler(const char* value) { SetHandler(value); return *this;} private: Aws::String m_sourceLocationArn; bool m_sourceLocationArnHasBeenSet = false; Aws::String m_handler; bool m_handlerHasBeenSet = false; }; } // namespace Model } // namespace Synthetics } // namespace Aws