1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/lexv2-models/LexModelsV2_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <utility>
10 
11 namespace Aws
12 {
13 template<typename RESULT_TYPE>
14 class AmazonWebServiceResult;
15 
16 namespace Utils
17 {
18 namespace Json
19 {
20   class JsonValue;
21 } // namespace Json
22 } // namespace Utils
23 namespace LexModelsV2
24 {
25 namespace Model
26 {
27   class AWS_LEXMODELSV2_API UpdateResourcePolicyResult
28   {
29   public:
30     UpdateResourcePolicyResult();
31     UpdateResourcePolicyResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
32     UpdateResourcePolicyResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
33 
34 
35     /**
36      * <p>The Amazon Resource Name (ARN) of the bot or bot alias that the resource
37      * policy is attached to.</p>
38      */
GetResourceArn()39     inline const Aws::String& GetResourceArn() const{ return m_resourceArn; }
40 
41     /**
42      * <p>The Amazon Resource Name (ARN) of the bot or bot alias that the resource
43      * policy is attached to.</p>
44      */
SetResourceArn(const Aws::String & value)45     inline void SetResourceArn(const Aws::String& value) { m_resourceArn = value; }
46 
47     /**
48      * <p>The Amazon Resource Name (ARN) of the bot or bot alias that the resource
49      * policy is attached to.</p>
50      */
SetResourceArn(Aws::String && value)51     inline void SetResourceArn(Aws::String&& value) { m_resourceArn = std::move(value); }
52 
53     /**
54      * <p>The Amazon Resource Name (ARN) of the bot or bot alias that the resource
55      * policy is attached to.</p>
56      */
SetResourceArn(const char * value)57     inline void SetResourceArn(const char* value) { m_resourceArn.assign(value); }
58 
59     /**
60      * <p>The Amazon Resource Name (ARN) of the bot or bot alias that the resource
61      * policy is attached to.</p>
62      */
WithResourceArn(const Aws::String & value)63     inline UpdateResourcePolicyResult& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;}
64 
65     /**
66      * <p>The Amazon Resource Name (ARN) of the bot or bot alias that the resource
67      * policy is attached to.</p>
68      */
WithResourceArn(Aws::String && value)69     inline UpdateResourcePolicyResult& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;}
70 
71     /**
72      * <p>The Amazon Resource Name (ARN) of the bot or bot alias that the resource
73      * policy is attached to.</p>
74      */
WithResourceArn(const char * value)75     inline UpdateResourcePolicyResult& WithResourceArn(const char* value) { SetResourceArn(value); return *this;}
76 
77 
78     /**
79      * <p>The current revision of the resource policy. Use the revision ID to make sure
80      * that you are updating the most current version of a resource policy when you add
81      * a policy statement to a resource, delete a resource, or update a resource.</p>
82      */
GetRevisionId()83     inline const Aws::String& GetRevisionId() const{ return m_revisionId; }
84 
85     /**
86      * <p>The current revision of the resource policy. Use the revision ID to make sure
87      * that you are updating the most current version of a resource policy when you add
88      * a policy statement to a resource, delete a resource, or update a resource.</p>
89      */
SetRevisionId(const Aws::String & value)90     inline void SetRevisionId(const Aws::String& value) { m_revisionId = value; }
91 
92     /**
93      * <p>The current revision of the resource policy. Use the revision ID to make sure
94      * that you are updating the most current version of a resource policy when you add
95      * a policy statement to a resource, delete a resource, or update a resource.</p>
96      */
SetRevisionId(Aws::String && value)97     inline void SetRevisionId(Aws::String&& value) { m_revisionId = std::move(value); }
98 
99     /**
100      * <p>The current revision of the resource policy. Use the revision ID to make sure
101      * that you are updating the most current version of a resource policy when you add
102      * a policy statement to a resource, delete a resource, or update a resource.</p>
103      */
SetRevisionId(const char * value)104     inline void SetRevisionId(const char* value) { m_revisionId.assign(value); }
105 
106     /**
107      * <p>The current revision of the resource policy. Use the revision ID to make sure
108      * that you are updating the most current version of a resource policy when you add
109      * a policy statement to a resource, delete a resource, or update a resource.</p>
110      */
WithRevisionId(const Aws::String & value)111     inline UpdateResourcePolicyResult& WithRevisionId(const Aws::String& value) { SetRevisionId(value); return *this;}
112 
113     /**
114      * <p>The current revision of the resource policy. Use the revision ID to make sure
115      * that you are updating the most current version of a resource policy when you add
116      * a policy statement to a resource, delete a resource, or update a resource.</p>
117      */
WithRevisionId(Aws::String && value)118     inline UpdateResourcePolicyResult& WithRevisionId(Aws::String&& value) { SetRevisionId(std::move(value)); return *this;}
119 
120     /**
121      * <p>The current revision of the resource policy. Use the revision ID to make sure
122      * that you are updating the most current version of a resource policy when you add
123      * a policy statement to a resource, delete a resource, or update a resource.</p>
124      */
WithRevisionId(const char * value)125     inline UpdateResourcePolicyResult& WithRevisionId(const char* value) { SetRevisionId(value); return *this;}
126 
127   private:
128 
129     Aws::String m_resourceArn;
130 
131     Aws::String m_revisionId;
132   };
133 
134 } // namespace Model
135 } // namespace LexModelsV2
136 } // namespace Aws
137