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

A list of ActionTypes associated with a rule.

See * Also:

AWS * API Reference

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

The name of the rule.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the rule.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the rule.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the rule.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the rule.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the rule.

*/ inline RuleSummary& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the rule.

*/ inline RuleSummary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the rule.

*/ inline RuleSummary& WithName(const char* value) { SetName(value); return *this;} /** *

A unique identifier for the rule.

*/ inline const Aws::String& GetRuleId() const{ return m_ruleId; } /** *

A unique identifier for the rule.

*/ inline bool RuleIdHasBeenSet() const { return m_ruleIdHasBeenSet; } /** *

A unique identifier for the rule.

*/ inline void SetRuleId(const Aws::String& value) { m_ruleIdHasBeenSet = true; m_ruleId = value; } /** *

A unique identifier for the rule.

*/ inline void SetRuleId(Aws::String&& value) { m_ruleIdHasBeenSet = true; m_ruleId = std::move(value); } /** *

A unique identifier for the rule.

*/ inline void SetRuleId(const char* value) { m_ruleIdHasBeenSet = true; m_ruleId.assign(value); } /** *

A unique identifier for the rule.

*/ inline RuleSummary& WithRuleId(const Aws::String& value) { SetRuleId(value); return *this;} /** *

A unique identifier for the rule.

*/ inline RuleSummary& WithRuleId(Aws::String&& value) { SetRuleId(std::move(value)); return *this;} /** *

A unique identifier for the rule.

*/ inline RuleSummary& WithRuleId(const char* value) { SetRuleId(value); return *this;} /** *

The Amazon Resource Name (ARN) of the rule.

*/ inline const Aws::String& GetRuleArn() const{ return m_ruleArn; } /** *

The Amazon Resource Name (ARN) of the rule.

*/ inline bool RuleArnHasBeenSet() const { return m_ruleArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the rule.

*/ inline void SetRuleArn(const Aws::String& value) { m_ruleArnHasBeenSet = true; m_ruleArn = value; } /** *

The Amazon Resource Name (ARN) of the rule.

*/ inline void SetRuleArn(Aws::String&& value) { m_ruleArnHasBeenSet = true; m_ruleArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the rule.

*/ inline void SetRuleArn(const char* value) { m_ruleArnHasBeenSet = true; m_ruleArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the rule.

*/ inline RuleSummary& WithRuleArn(const Aws::String& value) { SetRuleArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the rule.

*/ inline RuleSummary& WithRuleArn(Aws::String&& value) { SetRuleArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the rule.

*/ inline RuleSummary& WithRuleArn(const char* value) { SetRuleArn(value); return *this;} /** *

The name of the event source.

*/ inline const EventSourceName& GetEventSourceName() const{ return m_eventSourceName; } /** *

The name of the event source.

*/ inline bool EventSourceNameHasBeenSet() const { return m_eventSourceNameHasBeenSet; } /** *

The name of the event source.

*/ inline void SetEventSourceName(const EventSourceName& value) { m_eventSourceNameHasBeenSet = true; m_eventSourceName = value; } /** *

The name of the event source.

*/ inline void SetEventSourceName(EventSourceName&& value) { m_eventSourceNameHasBeenSet = true; m_eventSourceName = std::move(value); } /** *

The name of the event source.

*/ inline RuleSummary& WithEventSourceName(const EventSourceName& value) { SetEventSourceName(value); return *this;} /** *

The name of the event source.

*/ inline RuleSummary& WithEventSourceName(EventSourceName&& value) { SetEventSourceName(std::move(value)); return *this;} /** *

The publish status of the rule.

*/ inline const RulePublishStatus& GetPublishStatus() const{ return m_publishStatus; } /** *

The publish status of the rule.

*/ inline bool PublishStatusHasBeenSet() const { return m_publishStatusHasBeenSet; } /** *

The publish status of the rule.

*/ inline void SetPublishStatus(const RulePublishStatus& value) { m_publishStatusHasBeenSet = true; m_publishStatus = value; } /** *

The publish status of the rule.

*/ inline void SetPublishStatus(RulePublishStatus&& value) { m_publishStatusHasBeenSet = true; m_publishStatus = std::move(value); } /** *

The publish status of the rule.

*/ inline RuleSummary& WithPublishStatus(const RulePublishStatus& value) { SetPublishStatus(value); return *this;} /** *

The publish status of the rule.

*/ inline RuleSummary& WithPublishStatus(RulePublishStatus&& value) { SetPublishStatus(std::move(value)); return *this;} /** *

A list of ActionTypes associated with a rule.

*/ inline const Aws::Vector& GetActionSummaries() const{ return m_actionSummaries; } /** *

A list of ActionTypes associated with a rule.

*/ inline bool ActionSummariesHasBeenSet() const { return m_actionSummariesHasBeenSet; } /** *

A list of ActionTypes associated with a rule.

*/ inline void SetActionSummaries(const Aws::Vector& value) { m_actionSummariesHasBeenSet = true; m_actionSummaries = value; } /** *

A list of ActionTypes associated with a rule.

*/ inline void SetActionSummaries(Aws::Vector&& value) { m_actionSummariesHasBeenSet = true; m_actionSummaries = std::move(value); } /** *

A list of ActionTypes associated with a rule.

*/ inline RuleSummary& WithActionSummaries(const Aws::Vector& value) { SetActionSummaries(value); return *this;} /** *

A list of ActionTypes associated with a rule.

*/ inline RuleSummary& WithActionSummaries(Aws::Vector&& value) { SetActionSummaries(std::move(value)); return *this;} /** *

A list of ActionTypes associated with a rule.

*/ inline RuleSummary& AddActionSummaries(const ActionSummary& value) { m_actionSummariesHasBeenSet = true; m_actionSummaries.push_back(value); return *this; } /** *

A list of ActionTypes associated with a rule.

*/ inline RuleSummary& AddActionSummaries(ActionSummary&& value) { m_actionSummariesHasBeenSet = true; m_actionSummaries.push_back(std::move(value)); return *this; } /** *

The timestamp for when the rule was created.

*/ inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } /** *

The timestamp for when the rule was created.

*/ inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; } /** *

The timestamp for when the rule was created.

*/ inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; } /** *

The timestamp for when the rule was created.

*/ inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::move(value); } /** *

The timestamp for when the rule was created.

*/ inline RuleSummary& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} /** *

The timestamp for when the rule was created.

*/ inline RuleSummary& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} /** *

The timestamp for when the rule was last updated.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedTime() const{ return m_lastUpdatedTime; } /** *

The timestamp for when the rule was last updated.

*/ inline bool LastUpdatedTimeHasBeenSet() const { return m_lastUpdatedTimeHasBeenSet; } /** *

The timestamp for when the rule was last updated.

*/ inline void SetLastUpdatedTime(const Aws::Utils::DateTime& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = value; } /** *

The timestamp for when the rule was last updated.

*/ inline void SetLastUpdatedTime(Aws::Utils::DateTime&& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = std::move(value); } /** *

The timestamp for when the rule was last updated.

*/ inline RuleSummary& WithLastUpdatedTime(const Aws::Utils::DateTime& value) { SetLastUpdatedTime(value); return *this;} /** *

The timestamp for when the rule was last updated.

*/ inline RuleSummary& WithLastUpdatedTime(Aws::Utils::DateTime&& value) { SetLastUpdatedTime(std::move(value)); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_ruleId; bool m_ruleIdHasBeenSet = false; Aws::String m_ruleArn; bool m_ruleArnHasBeenSet = false; EventSourceName m_eventSourceName; bool m_eventSourceNameHasBeenSet = false; RulePublishStatus m_publishStatus; bool m_publishStatusHasBeenSet = false; Aws::Vector m_actionSummaries; bool m_actionSummariesHasBeenSet = false; Aws::Utils::DateTime m_createdTime; bool m_createdTimeHasBeenSet = false; Aws::Utils::DateTime m_lastUpdatedTime; bool m_lastUpdatedTimeHasBeenSet = false; }; } // namespace Model } // namespace Connect } // namespace Aws