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/servicecatalog/ServiceCatalog_EXPORTS.h> 8 #include <aws/servicecatalog/model/ProductViewSummary.h> 9 #include <aws/servicecatalog/model/Status.h> 10 #include <aws/core/utils/memory/stl/AWSString.h> 11 #include <aws/core/utils/DateTime.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 ServiceCatalog 25 { 26 namespace Model 27 { 28 29 /** 30 * <p>Information about a product view.</p><p><h3>See Also:</h3> <a 31 * href="http://docs.aws.amazon.com/goto/WebAPI/servicecatalog-2015-12-10/ProductViewDetail">AWS 32 * API Reference</a></p> 33 */ 34 class AWS_SERVICECATALOG_API ProductViewDetail 35 { 36 public: 37 ProductViewDetail(); 38 ProductViewDetail(Aws::Utils::Json::JsonView jsonValue); 39 ProductViewDetail& operator=(Aws::Utils::Json::JsonView jsonValue); 40 Aws::Utils::Json::JsonValue Jsonize() const; 41 42 43 /** 44 * <p>Summary information about the product view.</p> 45 */ GetProductViewSummary()46 inline const ProductViewSummary& GetProductViewSummary() const{ return m_productViewSummary; } 47 48 /** 49 * <p>Summary information about the product view.</p> 50 */ ProductViewSummaryHasBeenSet()51 inline bool ProductViewSummaryHasBeenSet() const { return m_productViewSummaryHasBeenSet; } 52 53 /** 54 * <p>Summary information about the product view.</p> 55 */ SetProductViewSummary(const ProductViewSummary & value)56 inline void SetProductViewSummary(const ProductViewSummary& value) { m_productViewSummaryHasBeenSet = true; m_productViewSummary = value; } 57 58 /** 59 * <p>Summary information about the product view.</p> 60 */ SetProductViewSummary(ProductViewSummary && value)61 inline void SetProductViewSummary(ProductViewSummary&& value) { m_productViewSummaryHasBeenSet = true; m_productViewSummary = std::move(value); } 62 63 /** 64 * <p>Summary information about the product view.</p> 65 */ WithProductViewSummary(const ProductViewSummary & value)66 inline ProductViewDetail& WithProductViewSummary(const ProductViewSummary& value) { SetProductViewSummary(value); return *this;} 67 68 /** 69 * <p>Summary information about the product view.</p> 70 */ WithProductViewSummary(ProductViewSummary && value)71 inline ProductViewDetail& WithProductViewSummary(ProductViewSummary&& value) { SetProductViewSummary(std::move(value)); return *this;} 72 73 74 /** 75 * <p>The status of the product.</p> <ul> <li> <p> <code>AVAILABLE</code> - The 76 * product is ready for use.</p> </li> <li> <p> <code>CREATING</code> - Product 77 * creation has started; the product is not ready for use.</p> </li> <li> <p> 78 * <code>FAILED</code> - An action failed.</p> </li> </ul> 79 */ GetStatus()80 inline const Status& GetStatus() const{ return m_status; } 81 82 /** 83 * <p>The status of the product.</p> <ul> <li> <p> <code>AVAILABLE</code> - The 84 * product is ready for use.</p> </li> <li> <p> <code>CREATING</code> - Product 85 * creation has started; the product is not ready for use.</p> </li> <li> <p> 86 * <code>FAILED</code> - An action failed.</p> </li> </ul> 87 */ StatusHasBeenSet()88 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } 89 90 /** 91 * <p>The status of the product.</p> <ul> <li> <p> <code>AVAILABLE</code> - The 92 * product is ready for use.</p> </li> <li> <p> <code>CREATING</code> - Product 93 * creation has started; the product is not ready for use.</p> </li> <li> <p> 94 * <code>FAILED</code> - An action failed.</p> </li> </ul> 95 */ SetStatus(const Status & value)96 inline void SetStatus(const Status& value) { m_statusHasBeenSet = true; m_status = value; } 97 98 /** 99 * <p>The status of the product.</p> <ul> <li> <p> <code>AVAILABLE</code> - The 100 * product is ready for use.</p> </li> <li> <p> <code>CREATING</code> - Product 101 * creation has started; the product is not ready for use.</p> </li> <li> <p> 102 * <code>FAILED</code> - An action failed.</p> </li> </ul> 103 */ SetStatus(Status && value)104 inline void SetStatus(Status&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } 105 106 /** 107 * <p>The status of the product.</p> <ul> <li> <p> <code>AVAILABLE</code> - The 108 * product is ready for use.</p> </li> <li> <p> <code>CREATING</code> - Product 109 * creation has started; the product is not ready for use.</p> </li> <li> <p> 110 * <code>FAILED</code> - An action failed.</p> </li> </ul> 111 */ WithStatus(const Status & value)112 inline ProductViewDetail& WithStatus(const Status& value) { SetStatus(value); return *this;} 113 114 /** 115 * <p>The status of the product.</p> <ul> <li> <p> <code>AVAILABLE</code> - The 116 * product is ready for use.</p> </li> <li> <p> <code>CREATING</code> - Product 117 * creation has started; the product is not ready for use.</p> </li> <li> <p> 118 * <code>FAILED</code> - An action failed.</p> </li> </ul> 119 */ WithStatus(Status && value)120 inline ProductViewDetail& WithStatus(Status&& value) { SetStatus(std::move(value)); return *this;} 121 122 123 /** 124 * <p>The ARN of the product.</p> 125 */ GetProductARN()126 inline const Aws::String& GetProductARN() const{ return m_productARN; } 127 128 /** 129 * <p>The ARN of the product.</p> 130 */ ProductARNHasBeenSet()131 inline bool ProductARNHasBeenSet() const { return m_productARNHasBeenSet; } 132 133 /** 134 * <p>The ARN of the product.</p> 135 */ SetProductARN(const Aws::String & value)136 inline void SetProductARN(const Aws::String& value) { m_productARNHasBeenSet = true; m_productARN = value; } 137 138 /** 139 * <p>The ARN of the product.</p> 140 */ SetProductARN(Aws::String && value)141 inline void SetProductARN(Aws::String&& value) { m_productARNHasBeenSet = true; m_productARN = std::move(value); } 142 143 /** 144 * <p>The ARN of the product.</p> 145 */ SetProductARN(const char * value)146 inline void SetProductARN(const char* value) { m_productARNHasBeenSet = true; m_productARN.assign(value); } 147 148 /** 149 * <p>The ARN of the product.</p> 150 */ WithProductARN(const Aws::String & value)151 inline ProductViewDetail& WithProductARN(const Aws::String& value) { SetProductARN(value); return *this;} 152 153 /** 154 * <p>The ARN of the product.</p> 155 */ WithProductARN(Aws::String && value)156 inline ProductViewDetail& WithProductARN(Aws::String&& value) { SetProductARN(std::move(value)); return *this;} 157 158 /** 159 * <p>The ARN of the product.</p> 160 */ WithProductARN(const char * value)161 inline ProductViewDetail& WithProductARN(const char* value) { SetProductARN(value); return *this;} 162 163 164 /** 165 * <p>The UTC time stamp of the creation time.</p> 166 */ GetCreatedTime()167 inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } 168 169 /** 170 * <p>The UTC time stamp of the creation time.</p> 171 */ CreatedTimeHasBeenSet()172 inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; } 173 174 /** 175 * <p>The UTC time stamp of the creation time.</p> 176 */ SetCreatedTime(const Aws::Utils::DateTime & value)177 inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; } 178 179 /** 180 * <p>The UTC time stamp of the creation time.</p> 181 */ SetCreatedTime(Aws::Utils::DateTime && value)182 inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::move(value); } 183 184 /** 185 * <p>The UTC time stamp of the creation time.</p> 186 */ WithCreatedTime(const Aws::Utils::DateTime & value)187 inline ProductViewDetail& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} 188 189 /** 190 * <p>The UTC time stamp of the creation time.</p> 191 */ WithCreatedTime(Aws::Utils::DateTime && value)192 inline ProductViewDetail& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} 193 194 private: 195 196 ProductViewSummary m_productViewSummary; 197 bool m_productViewSummaryHasBeenSet; 198 199 Status m_status; 200 bool m_statusHasBeenSet; 201 202 Aws::String m_productARN; 203 bool m_productARNHasBeenSet; 204 205 Aws::Utils::DateTime m_createdTime; 206 bool m_createdTimeHasBeenSet; 207 }; 208 209 } // namespace Model 210 } // namespace ServiceCatalog 211 } // namespace Aws 212