/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A list of ActionTypes
associated with a rule. See
* Also:
AWS
* API Reference
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::VectorA 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::VectorA list of ActionTypes associated with a rule.
*/ inline void SetActionSummaries(Aws::VectorA list of ActionTypes associated with a rule.
*/ inline RuleSummary& WithActionSummaries(const Aws::VectorA list of ActionTypes associated with a rule.
*/ inline RuleSummary& WithActionSummaries(Aws::VectorA 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