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

Information about the Chatbot topics or Chatbot clients associated with a * notification rule.

See Also:

AWS * API Reference

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

The target type. Can be an Chatbot topic or Chatbot client.

  • *

    Chatbot topics are specified as SNS.

  • Chatbot * clients are specified as AWSChatbotSlack.

*/ inline const Aws::String& GetTargetType() const{ return m_targetType; } /** *

The target type. Can be an Chatbot topic or Chatbot client.

  • *

    Chatbot topics are specified as SNS.

  • Chatbot * clients are specified as AWSChatbotSlack.

*/ inline bool TargetTypeHasBeenSet() const { return m_targetTypeHasBeenSet; } /** *

The target type. Can be an Chatbot topic or Chatbot client.

  • *

    Chatbot topics are specified as SNS.

  • Chatbot * clients are specified as AWSChatbotSlack.

*/ inline void SetTargetType(const Aws::String& value) { m_targetTypeHasBeenSet = true; m_targetType = value; } /** *

The target type. Can be an Chatbot topic or Chatbot client.

  • *

    Chatbot topics are specified as SNS.

  • Chatbot * clients are specified as AWSChatbotSlack.

*/ inline void SetTargetType(Aws::String&& value) { m_targetTypeHasBeenSet = true; m_targetType = std::move(value); } /** *

The target type. Can be an Chatbot topic or Chatbot client.

  • *

    Chatbot topics are specified as SNS.

  • Chatbot * clients are specified as AWSChatbotSlack.

*/ inline void SetTargetType(const char* value) { m_targetTypeHasBeenSet = true; m_targetType.assign(value); } /** *

The target type. Can be an Chatbot topic or Chatbot client.

  • *

    Chatbot topics are specified as SNS.

  • Chatbot * clients are specified as AWSChatbotSlack.

*/ inline Target& WithTargetType(const Aws::String& value) { SetTargetType(value); return *this;} /** *

The target type. Can be an Chatbot topic or Chatbot client.

  • *

    Chatbot topics are specified as SNS.

  • Chatbot * clients are specified as AWSChatbotSlack.

*/ inline Target& WithTargetType(Aws::String&& value) { SetTargetType(std::move(value)); return *this;} /** *

The target type. Can be an Chatbot topic or Chatbot client.

  • *

    Chatbot topics are specified as SNS.

  • Chatbot * clients are specified as AWSChatbotSlack.

*/ inline Target& WithTargetType(const char* value) { SetTargetType(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Chatbot topic or Chatbot client.

*/ inline const Aws::String& GetTargetAddress() const{ return m_targetAddress; } /** *

The Amazon Resource Name (ARN) of the Chatbot topic or Chatbot client.

*/ inline bool TargetAddressHasBeenSet() const { return m_targetAddressHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the Chatbot topic or Chatbot client.

*/ inline void SetTargetAddress(const Aws::String& value) { m_targetAddressHasBeenSet = true; m_targetAddress = value; } /** *

The Amazon Resource Name (ARN) of the Chatbot topic or Chatbot client.

*/ inline void SetTargetAddress(Aws::String&& value) { m_targetAddressHasBeenSet = true; m_targetAddress = std::move(value); } /** *

The Amazon Resource Name (ARN) of the Chatbot topic or Chatbot client.

*/ inline void SetTargetAddress(const char* value) { m_targetAddressHasBeenSet = true; m_targetAddress.assign(value); } /** *

The Amazon Resource Name (ARN) of the Chatbot topic or Chatbot client.

*/ inline Target& WithTargetAddress(const Aws::String& value) { SetTargetAddress(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Chatbot topic or Chatbot client.

*/ inline Target& WithTargetAddress(Aws::String&& value) { SetTargetAddress(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the Chatbot topic or Chatbot client.

*/ inline Target& WithTargetAddress(const char* value) { SetTargetAddress(value); return *this;} private: Aws::String m_targetType; bool m_targetTypeHasBeenSet = false; Aws::String m_targetAddress; bool m_targetAddressHasBeenSet = false; }; } // namespace Model } // namespace CodeStarNotifications } // namespace Aws