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/workdocs/WorkDocs_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/workdocs/model/User.h> 10 #include <aws/core/utils/DateTime.h> 11 #include <aws/workdocs/model/CommentStatusType.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 namespace Utils 17 { 18 namespace Json 19 { 20 class JsonValue; 21 class JsonView; 22 } // namespace Json 23 } // namespace Utils 24 namespace WorkDocs 25 { 26 namespace Model 27 { 28 29 /** 30 * <p>Describes the metadata of a comment.</p><p><h3>See Also:</h3> <a 31 * href="http://docs.aws.amazon.com/goto/WebAPI/workdocs-2016-05-01/CommentMetadata">AWS 32 * API Reference</a></p> 33 */ 34 class AWS_WORKDOCS_API CommentMetadata 35 { 36 public: 37 CommentMetadata(); 38 CommentMetadata(Aws::Utils::Json::JsonView jsonValue); 39 CommentMetadata& operator=(Aws::Utils::Json::JsonView jsonValue); 40 Aws::Utils::Json::JsonValue Jsonize() const; 41 42 43 /** 44 * <p>The ID of the comment.</p> 45 */ GetCommentId()46 inline const Aws::String& GetCommentId() const{ return m_commentId; } 47 48 /** 49 * <p>The ID of the comment.</p> 50 */ CommentIdHasBeenSet()51 inline bool CommentIdHasBeenSet() const { return m_commentIdHasBeenSet; } 52 53 /** 54 * <p>The ID of the comment.</p> 55 */ SetCommentId(const Aws::String & value)56 inline void SetCommentId(const Aws::String& value) { m_commentIdHasBeenSet = true; m_commentId = value; } 57 58 /** 59 * <p>The ID of the comment.</p> 60 */ SetCommentId(Aws::String && value)61 inline void SetCommentId(Aws::String&& value) { m_commentIdHasBeenSet = true; m_commentId = std::move(value); } 62 63 /** 64 * <p>The ID of the comment.</p> 65 */ SetCommentId(const char * value)66 inline void SetCommentId(const char* value) { m_commentIdHasBeenSet = true; m_commentId.assign(value); } 67 68 /** 69 * <p>The ID of the comment.</p> 70 */ WithCommentId(const Aws::String & value)71 inline CommentMetadata& WithCommentId(const Aws::String& value) { SetCommentId(value); return *this;} 72 73 /** 74 * <p>The ID of the comment.</p> 75 */ WithCommentId(Aws::String && value)76 inline CommentMetadata& WithCommentId(Aws::String&& value) { SetCommentId(std::move(value)); return *this;} 77 78 /** 79 * <p>The ID of the comment.</p> 80 */ WithCommentId(const char * value)81 inline CommentMetadata& WithCommentId(const char* value) { SetCommentId(value); return *this;} 82 83 84 /** 85 * <p>The user who made the comment.</p> 86 */ GetContributor()87 inline const User& GetContributor() const{ return m_contributor; } 88 89 /** 90 * <p>The user who made the comment.</p> 91 */ ContributorHasBeenSet()92 inline bool ContributorHasBeenSet() const { return m_contributorHasBeenSet; } 93 94 /** 95 * <p>The user who made the comment.</p> 96 */ SetContributor(const User & value)97 inline void SetContributor(const User& value) { m_contributorHasBeenSet = true; m_contributor = value; } 98 99 /** 100 * <p>The user who made the comment.</p> 101 */ SetContributor(User && value)102 inline void SetContributor(User&& value) { m_contributorHasBeenSet = true; m_contributor = std::move(value); } 103 104 /** 105 * <p>The user who made the comment.</p> 106 */ WithContributor(const User & value)107 inline CommentMetadata& WithContributor(const User& value) { SetContributor(value); return *this;} 108 109 /** 110 * <p>The user who made the comment.</p> 111 */ WithContributor(User && value)112 inline CommentMetadata& WithContributor(User&& value) { SetContributor(std::move(value)); return *this;} 113 114 115 /** 116 * <p>The timestamp that the comment was created.</p> 117 */ GetCreatedTimestamp()118 inline const Aws::Utils::DateTime& GetCreatedTimestamp() const{ return m_createdTimestamp; } 119 120 /** 121 * <p>The timestamp that the comment was created.</p> 122 */ CreatedTimestampHasBeenSet()123 inline bool CreatedTimestampHasBeenSet() const { return m_createdTimestampHasBeenSet; } 124 125 /** 126 * <p>The timestamp that the comment was created.</p> 127 */ SetCreatedTimestamp(const Aws::Utils::DateTime & value)128 inline void SetCreatedTimestamp(const Aws::Utils::DateTime& value) { m_createdTimestampHasBeenSet = true; m_createdTimestamp = value; } 129 130 /** 131 * <p>The timestamp that the comment was created.</p> 132 */ SetCreatedTimestamp(Aws::Utils::DateTime && value)133 inline void SetCreatedTimestamp(Aws::Utils::DateTime&& value) { m_createdTimestampHasBeenSet = true; m_createdTimestamp = std::move(value); } 134 135 /** 136 * <p>The timestamp that the comment was created.</p> 137 */ WithCreatedTimestamp(const Aws::Utils::DateTime & value)138 inline CommentMetadata& WithCreatedTimestamp(const Aws::Utils::DateTime& value) { SetCreatedTimestamp(value); return *this;} 139 140 /** 141 * <p>The timestamp that the comment was created.</p> 142 */ WithCreatedTimestamp(Aws::Utils::DateTime && value)143 inline CommentMetadata& WithCreatedTimestamp(Aws::Utils::DateTime&& value) { SetCreatedTimestamp(std::move(value)); return *this;} 144 145 146 /** 147 * <p>The status of the comment.</p> 148 */ GetCommentStatus()149 inline const CommentStatusType& GetCommentStatus() const{ return m_commentStatus; } 150 151 /** 152 * <p>The status of the comment.</p> 153 */ CommentStatusHasBeenSet()154 inline bool CommentStatusHasBeenSet() const { return m_commentStatusHasBeenSet; } 155 156 /** 157 * <p>The status of the comment.</p> 158 */ SetCommentStatus(const CommentStatusType & value)159 inline void SetCommentStatus(const CommentStatusType& value) { m_commentStatusHasBeenSet = true; m_commentStatus = value; } 160 161 /** 162 * <p>The status of the comment.</p> 163 */ SetCommentStatus(CommentStatusType && value)164 inline void SetCommentStatus(CommentStatusType&& value) { m_commentStatusHasBeenSet = true; m_commentStatus = std::move(value); } 165 166 /** 167 * <p>The status of the comment.</p> 168 */ WithCommentStatus(const CommentStatusType & value)169 inline CommentMetadata& WithCommentStatus(const CommentStatusType& value) { SetCommentStatus(value); return *this;} 170 171 /** 172 * <p>The status of the comment.</p> 173 */ WithCommentStatus(CommentStatusType && value)174 inline CommentMetadata& WithCommentStatus(CommentStatusType&& value) { SetCommentStatus(std::move(value)); return *this;} 175 176 177 /** 178 * <p>The ID of the user being replied to.</p> 179 */ GetRecipientId()180 inline const Aws::String& GetRecipientId() const{ return m_recipientId; } 181 182 /** 183 * <p>The ID of the user being replied to.</p> 184 */ RecipientIdHasBeenSet()185 inline bool RecipientIdHasBeenSet() const { return m_recipientIdHasBeenSet; } 186 187 /** 188 * <p>The ID of the user being replied to.</p> 189 */ SetRecipientId(const Aws::String & value)190 inline void SetRecipientId(const Aws::String& value) { m_recipientIdHasBeenSet = true; m_recipientId = value; } 191 192 /** 193 * <p>The ID of the user being replied to.</p> 194 */ SetRecipientId(Aws::String && value)195 inline void SetRecipientId(Aws::String&& value) { m_recipientIdHasBeenSet = true; m_recipientId = std::move(value); } 196 197 /** 198 * <p>The ID of the user being replied to.</p> 199 */ SetRecipientId(const char * value)200 inline void SetRecipientId(const char* value) { m_recipientIdHasBeenSet = true; m_recipientId.assign(value); } 201 202 /** 203 * <p>The ID of the user being replied to.</p> 204 */ WithRecipientId(const Aws::String & value)205 inline CommentMetadata& WithRecipientId(const Aws::String& value) { SetRecipientId(value); return *this;} 206 207 /** 208 * <p>The ID of the user being replied to.</p> 209 */ WithRecipientId(Aws::String && value)210 inline CommentMetadata& WithRecipientId(Aws::String&& value) { SetRecipientId(std::move(value)); return *this;} 211 212 /** 213 * <p>The ID of the user being replied to.</p> 214 */ WithRecipientId(const char * value)215 inline CommentMetadata& WithRecipientId(const char* value) { SetRecipientId(value); return *this;} 216 217 private: 218 219 Aws::String m_commentId; 220 bool m_commentIdHasBeenSet; 221 222 User m_contributor; 223 bool m_contributorHasBeenSet; 224 225 Aws::Utils::DateTime m_createdTimestamp; 226 bool m_createdTimestampHasBeenSet; 227 228 CommentStatusType m_commentStatus; 229 bool m_commentStatusHasBeenSet; 230 231 Aws::String m_recipientId; 232 bool m_recipientIdHasBeenSet; 233 }; 234 235 } // namespace Model 236 } // namespace WorkDocs 237 } // namespace Aws 238