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

Override button configuration.

See Also:

AWS * API Reference

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

Action triggered by the button.

*/ inline const ButtonAction& GetButtonAction() const{ return m_buttonAction; } /** *

Action triggered by the button.

*/ inline bool ButtonActionHasBeenSet() const { return m_buttonActionHasBeenSet; } /** *

Action triggered by the button.

*/ inline void SetButtonAction(const ButtonAction& value) { m_buttonActionHasBeenSet = true; m_buttonAction = value; } /** *

Action triggered by the button.

*/ inline void SetButtonAction(ButtonAction&& value) { m_buttonActionHasBeenSet = true; m_buttonAction = std::move(value); } /** *

Action triggered by the button.

*/ inline OverrideButtonConfiguration& WithButtonAction(const ButtonAction& value) { SetButtonAction(value); return *this;} /** *

Action triggered by the button.

*/ inline OverrideButtonConfiguration& WithButtonAction(ButtonAction&& value) { SetButtonAction(std::move(value)); return *this;} /** *

Button destination.

*/ inline const Aws::String& GetLink() const{ return m_link; } /** *

Button destination.

*/ inline bool LinkHasBeenSet() const { return m_linkHasBeenSet; } /** *

Button destination.

*/ inline void SetLink(const Aws::String& value) { m_linkHasBeenSet = true; m_link = value; } /** *

Button destination.

*/ inline void SetLink(Aws::String&& value) { m_linkHasBeenSet = true; m_link = std::move(value); } /** *

Button destination.

*/ inline void SetLink(const char* value) { m_linkHasBeenSet = true; m_link.assign(value); } /** *

Button destination.

*/ inline OverrideButtonConfiguration& WithLink(const Aws::String& value) { SetLink(value); return *this;} /** *

Button destination.

*/ inline OverrideButtonConfiguration& WithLink(Aws::String&& value) { SetLink(std::move(value)); return *this;} /** *

Button destination.

*/ inline OverrideButtonConfiguration& WithLink(const char* value) { SetLink(value); return *this;} private: ButtonAction m_buttonAction; bool m_buttonActionHasBeenSet = false; Aws::String m_link; bool m_linkHasBeenSet = false; }; } // namespace Model } // namespace Pinpoint } // namespace Aws