/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace ChimeSDKVoice { namespace Model { /** */ class UpdateSipRuleRequest : public ChimeSDKVoiceRequest { public: AWS_CHIMESDKVOICE_API UpdateSipRuleRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "UpdateSipRule"; } AWS_CHIMESDKVOICE_API Aws::String SerializePayload() const override; /** *

The SIP rule ID.

*/ inline const Aws::String& GetSipRuleId() const{ return m_sipRuleId; } /** *

The SIP rule ID.

*/ inline bool SipRuleIdHasBeenSet() const { return m_sipRuleIdHasBeenSet; } /** *

The SIP rule ID.

*/ inline void SetSipRuleId(const Aws::String& value) { m_sipRuleIdHasBeenSet = true; m_sipRuleId = value; } /** *

The SIP rule ID.

*/ inline void SetSipRuleId(Aws::String&& value) { m_sipRuleIdHasBeenSet = true; m_sipRuleId = std::move(value); } /** *

The SIP rule ID.

*/ inline void SetSipRuleId(const char* value) { m_sipRuleIdHasBeenSet = true; m_sipRuleId.assign(value); } /** *

The SIP rule ID.

*/ inline UpdateSipRuleRequest& WithSipRuleId(const Aws::String& value) { SetSipRuleId(value); return *this;} /** *

The SIP rule ID.

*/ inline UpdateSipRuleRequest& WithSipRuleId(Aws::String&& value) { SetSipRuleId(std::move(value)); return *this;} /** *

The SIP rule ID.

*/ inline UpdateSipRuleRequest& WithSipRuleId(const char* value) { SetSipRuleId(value); return *this;} /** *

The new name for the specified SIP rule.

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

The new name for the specified SIP rule.

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

The new name for the specified SIP rule.

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

The new name for the specified SIP rule.

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

The new name for the specified SIP rule.

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

The new name for the specified SIP rule.

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

The new name for the specified SIP rule.

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

The new name for the specified SIP rule.

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

The new value that indicates whether the rule is disabled.

*/ inline bool GetDisabled() const{ return m_disabled; } /** *

The new value that indicates whether the rule is disabled.

*/ inline bool DisabledHasBeenSet() const { return m_disabledHasBeenSet; } /** *

The new value that indicates whether the rule is disabled.

*/ inline void SetDisabled(bool value) { m_disabledHasBeenSet = true; m_disabled = value; } /** *

The new value that indicates whether the rule is disabled.

*/ inline UpdateSipRuleRequest& WithDisabled(bool value) { SetDisabled(value); return *this;} /** *

The new list of target applications.

*/ inline const Aws::Vector& GetTargetApplications() const{ return m_targetApplications; } /** *

The new list of target applications.

*/ inline bool TargetApplicationsHasBeenSet() const { return m_targetApplicationsHasBeenSet; } /** *

The new list of target applications.

*/ inline void SetTargetApplications(const Aws::Vector& value) { m_targetApplicationsHasBeenSet = true; m_targetApplications = value; } /** *

The new list of target applications.

*/ inline void SetTargetApplications(Aws::Vector&& value) { m_targetApplicationsHasBeenSet = true; m_targetApplications = std::move(value); } /** *

The new list of target applications.

*/ inline UpdateSipRuleRequest& WithTargetApplications(const Aws::Vector& value) { SetTargetApplications(value); return *this;} /** *

The new list of target applications.

*/ inline UpdateSipRuleRequest& WithTargetApplications(Aws::Vector&& value) { SetTargetApplications(std::move(value)); return *this;} /** *

The new list of target applications.

*/ inline UpdateSipRuleRequest& AddTargetApplications(const SipRuleTargetApplication& value) { m_targetApplicationsHasBeenSet = true; m_targetApplications.push_back(value); return *this; } /** *

The new list of target applications.

*/ inline UpdateSipRuleRequest& AddTargetApplications(SipRuleTargetApplication&& value) { m_targetApplicationsHasBeenSet = true; m_targetApplications.push_back(std::move(value)); return *this; } private: Aws::String m_sipRuleId; bool m_sipRuleIdHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; bool m_disabled; bool m_disabledHasBeenSet = false; Aws::Vector m_targetApplications; bool m_targetApplicationsHasBeenSet = false; }; } // namespace Model } // namespace ChimeSDKVoice } // namespace Aws