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/applicationcostprofiler/ApplicationCostProfiler_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/applicationcostprofiler/model/ReportFrequency.h> 10 #include <aws/applicationcostprofiler/model/Format.h> 11 #include <aws/applicationcostprofiler/model/S3Location.h> 12 #include <aws/core/utils/DateTime.h> 13 #include <utility> 14 15 namespace Aws 16 { 17 template<typename RESULT_TYPE> 18 class AmazonWebServiceResult; 19 20 namespace Utils 21 { 22 namespace Json 23 { 24 class JsonValue; 25 } // namespace Json 26 } // namespace Utils 27 namespace ApplicationCostProfiler 28 { 29 namespace Model 30 { 31 class AWS_APPLICATIONCOSTPROFILER_API GetReportDefinitionResult 32 { 33 public: 34 GetReportDefinitionResult(); 35 GetReportDefinitionResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result); 36 GetReportDefinitionResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result); 37 38 39 /** 40 * <p>ID of the report retrieved.</p> 41 */ GetReportId()42 inline const Aws::String& GetReportId() const{ return m_reportId; } 43 44 /** 45 * <p>ID of the report retrieved.</p> 46 */ SetReportId(const Aws::String & value)47 inline void SetReportId(const Aws::String& value) { m_reportId = value; } 48 49 /** 50 * <p>ID of the report retrieved.</p> 51 */ SetReportId(Aws::String && value)52 inline void SetReportId(Aws::String&& value) { m_reportId = std::move(value); } 53 54 /** 55 * <p>ID of the report retrieved.</p> 56 */ SetReportId(const char * value)57 inline void SetReportId(const char* value) { m_reportId.assign(value); } 58 59 /** 60 * <p>ID of the report retrieved.</p> 61 */ WithReportId(const Aws::String & value)62 inline GetReportDefinitionResult& WithReportId(const Aws::String& value) { SetReportId(value); return *this;} 63 64 /** 65 * <p>ID of the report retrieved.</p> 66 */ WithReportId(Aws::String && value)67 inline GetReportDefinitionResult& WithReportId(Aws::String&& value) { SetReportId(std::move(value)); return *this;} 68 69 /** 70 * <p>ID of the report retrieved.</p> 71 */ WithReportId(const char * value)72 inline GetReportDefinitionResult& WithReportId(const char* value) { SetReportId(value); return *this;} 73 74 75 /** 76 * <p>Description of the report.</p> 77 */ GetReportDescription()78 inline const Aws::String& GetReportDescription() const{ return m_reportDescription; } 79 80 /** 81 * <p>Description of the report.</p> 82 */ SetReportDescription(const Aws::String & value)83 inline void SetReportDescription(const Aws::String& value) { m_reportDescription = value; } 84 85 /** 86 * <p>Description of the report.</p> 87 */ SetReportDescription(Aws::String && value)88 inline void SetReportDescription(Aws::String&& value) { m_reportDescription = std::move(value); } 89 90 /** 91 * <p>Description of the report.</p> 92 */ SetReportDescription(const char * value)93 inline void SetReportDescription(const char* value) { m_reportDescription.assign(value); } 94 95 /** 96 * <p>Description of the report.</p> 97 */ WithReportDescription(const Aws::String & value)98 inline GetReportDefinitionResult& WithReportDescription(const Aws::String& value) { SetReportDescription(value); return *this;} 99 100 /** 101 * <p>Description of the report.</p> 102 */ WithReportDescription(Aws::String && value)103 inline GetReportDefinitionResult& WithReportDescription(Aws::String&& value) { SetReportDescription(std::move(value)); return *this;} 104 105 /** 106 * <p>Description of the report.</p> 107 */ WithReportDescription(const char * value)108 inline GetReportDefinitionResult& WithReportDescription(const char* value) { SetReportDescription(value); return *this;} 109 110 111 /** 112 * <p>Cadence used to generate the report.</p> 113 */ GetReportFrequency()114 inline const ReportFrequency& GetReportFrequency() const{ return m_reportFrequency; } 115 116 /** 117 * <p>Cadence used to generate the report.</p> 118 */ SetReportFrequency(const ReportFrequency & value)119 inline void SetReportFrequency(const ReportFrequency& value) { m_reportFrequency = value; } 120 121 /** 122 * <p>Cadence used to generate the report.</p> 123 */ SetReportFrequency(ReportFrequency && value)124 inline void SetReportFrequency(ReportFrequency&& value) { m_reportFrequency = std::move(value); } 125 126 /** 127 * <p>Cadence used to generate the report.</p> 128 */ WithReportFrequency(const ReportFrequency & value)129 inline GetReportDefinitionResult& WithReportFrequency(const ReportFrequency& value) { SetReportFrequency(value); return *this;} 130 131 /** 132 * <p>Cadence used to generate the report.</p> 133 */ WithReportFrequency(ReportFrequency && value)134 inline GetReportDefinitionResult& WithReportFrequency(ReportFrequency&& value) { SetReportFrequency(std::move(value)); return *this;} 135 136 137 /** 138 * <p>Format of the generated report.</p> 139 */ GetFormat()140 inline const Format& GetFormat() const{ return m_format; } 141 142 /** 143 * <p>Format of the generated report.</p> 144 */ SetFormat(const Format & value)145 inline void SetFormat(const Format& value) { m_format = value; } 146 147 /** 148 * <p>Format of the generated report.</p> 149 */ SetFormat(Format && value)150 inline void SetFormat(Format&& value) { m_format = std::move(value); } 151 152 /** 153 * <p>Format of the generated report.</p> 154 */ WithFormat(const Format & value)155 inline GetReportDefinitionResult& WithFormat(const Format& value) { SetFormat(value); return *this;} 156 157 /** 158 * <p>Format of the generated report.</p> 159 */ WithFormat(Format && value)160 inline GetReportDefinitionResult& WithFormat(Format&& value) { SetFormat(std::move(value)); return *this;} 161 162 163 /** 164 * <p>Amazon Simple Storage Service (Amazon S3) location where the report is 165 * uploaded.</p> 166 */ GetDestinationS3Location()167 inline const S3Location& GetDestinationS3Location() const{ return m_destinationS3Location; } 168 169 /** 170 * <p>Amazon Simple Storage Service (Amazon S3) location where the report is 171 * uploaded.</p> 172 */ SetDestinationS3Location(const S3Location & value)173 inline void SetDestinationS3Location(const S3Location& value) { m_destinationS3Location = value; } 174 175 /** 176 * <p>Amazon Simple Storage Service (Amazon S3) location where the report is 177 * uploaded.</p> 178 */ SetDestinationS3Location(S3Location && value)179 inline void SetDestinationS3Location(S3Location&& value) { m_destinationS3Location = std::move(value); } 180 181 /** 182 * <p>Amazon Simple Storage Service (Amazon S3) location where the report is 183 * uploaded.</p> 184 */ WithDestinationS3Location(const S3Location & value)185 inline GetReportDefinitionResult& WithDestinationS3Location(const S3Location& value) { SetDestinationS3Location(value); return *this;} 186 187 /** 188 * <p>Amazon Simple Storage Service (Amazon S3) location where the report is 189 * uploaded.</p> 190 */ WithDestinationS3Location(S3Location && value)191 inline GetReportDefinitionResult& WithDestinationS3Location(S3Location&& value) { SetDestinationS3Location(std::move(value)); return *this;} 192 193 194 /** 195 * <p>Timestamp (milliseconds) when this report definition was created.</p> 196 */ GetCreatedAt()197 inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } 198 199 /** 200 * <p>Timestamp (milliseconds) when this report definition was created.</p> 201 */ SetCreatedAt(const Aws::Utils::DateTime & value)202 inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAt = value; } 203 204 /** 205 * <p>Timestamp (milliseconds) when this report definition was created.</p> 206 */ SetCreatedAt(Aws::Utils::DateTime && value)207 inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAt = std::move(value); } 208 209 /** 210 * <p>Timestamp (milliseconds) when this report definition was created.</p> 211 */ WithCreatedAt(const Aws::Utils::DateTime & value)212 inline GetReportDefinitionResult& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} 213 214 /** 215 * <p>Timestamp (milliseconds) when this report definition was created.</p> 216 */ WithCreatedAt(Aws::Utils::DateTime && value)217 inline GetReportDefinitionResult& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} 218 219 220 /** 221 * <p>Timestamp (milliseconds) when this report definition was last updated.</p> 222 */ GetLastUpdated()223 inline const Aws::Utils::DateTime& GetLastUpdated() const{ return m_lastUpdated; } 224 225 /** 226 * <p>Timestamp (milliseconds) when this report definition was last updated.</p> 227 */ SetLastUpdated(const Aws::Utils::DateTime & value)228 inline void SetLastUpdated(const Aws::Utils::DateTime& value) { m_lastUpdated = value; } 229 230 /** 231 * <p>Timestamp (milliseconds) when this report definition was last updated.</p> 232 */ SetLastUpdated(Aws::Utils::DateTime && value)233 inline void SetLastUpdated(Aws::Utils::DateTime&& value) { m_lastUpdated = std::move(value); } 234 235 /** 236 * <p>Timestamp (milliseconds) when this report definition was last updated.</p> 237 */ WithLastUpdated(const Aws::Utils::DateTime & value)238 inline GetReportDefinitionResult& WithLastUpdated(const Aws::Utils::DateTime& value) { SetLastUpdated(value); return *this;} 239 240 /** 241 * <p>Timestamp (milliseconds) when this report definition was last updated.</p> 242 */ WithLastUpdated(Aws::Utils::DateTime && value)243 inline GetReportDefinitionResult& WithLastUpdated(Aws::Utils::DateTime&& value) { SetLastUpdated(std::move(value)); return *this;} 244 245 private: 246 247 Aws::String m_reportId; 248 249 Aws::String m_reportDescription; 250 251 ReportFrequency m_reportFrequency; 252 253 Format m_format; 254 255 S3Location m_destinationS3Location; 256 257 Aws::Utils::DateTime m_createdAt; 258 259 Aws::Utils::DateTime m_lastUpdated; 260 }; 261 262 } // namespace Model 263 } // namespace ApplicationCostProfiler 264 } // namespace Aws 265