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/core/utils/memory/stl/AWSString.h> 9 #include <aws/core/utils/memory/stl/AWSVector.h> 10 #include <aws/servicecatalog/model/ConstraintSummary.h> 11 #include <aws/servicecatalog/model/Tag.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>Summary information about a product path for a user.</p><p><h3>See Also:</h3> 31 * <a 32 * href="http://docs.aws.amazon.com/goto/WebAPI/servicecatalog-2015-12-10/LaunchPathSummary">AWS 33 * API Reference</a></p> 34 */ 35 class AWS_SERVICECATALOG_API LaunchPathSummary 36 { 37 public: 38 LaunchPathSummary(); 39 LaunchPathSummary(Aws::Utils::Json::JsonView jsonValue); 40 LaunchPathSummary& operator=(Aws::Utils::Json::JsonView jsonValue); 41 Aws::Utils::Json::JsonValue Jsonize() const; 42 43 44 /** 45 * <p>The identifier of the product path.</p> 46 */ GetId()47 inline const Aws::String& GetId() const{ return m_id; } 48 49 /** 50 * <p>The identifier of the product path.</p> 51 */ IdHasBeenSet()52 inline bool IdHasBeenSet() const { return m_idHasBeenSet; } 53 54 /** 55 * <p>The identifier of the product path.</p> 56 */ SetId(const Aws::String & value)57 inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } 58 59 /** 60 * <p>The identifier of the product path.</p> 61 */ SetId(Aws::String && value)62 inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } 63 64 /** 65 * <p>The identifier of the product path.</p> 66 */ SetId(const char * value)67 inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } 68 69 /** 70 * <p>The identifier of the product path.</p> 71 */ WithId(const Aws::String & value)72 inline LaunchPathSummary& WithId(const Aws::String& value) { SetId(value); return *this;} 73 74 /** 75 * <p>The identifier of the product path.</p> 76 */ WithId(Aws::String && value)77 inline LaunchPathSummary& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} 78 79 /** 80 * <p>The identifier of the product path.</p> 81 */ WithId(const char * value)82 inline LaunchPathSummary& WithId(const char* value) { SetId(value); return *this;} 83 84 85 /** 86 * <p>The constraints on the portfolio-product relationship.</p> 87 */ GetConstraintSummaries()88 inline const Aws::Vector<ConstraintSummary>& GetConstraintSummaries() const{ return m_constraintSummaries; } 89 90 /** 91 * <p>The constraints on the portfolio-product relationship.</p> 92 */ ConstraintSummariesHasBeenSet()93 inline bool ConstraintSummariesHasBeenSet() const { return m_constraintSummariesHasBeenSet; } 94 95 /** 96 * <p>The constraints on the portfolio-product relationship.</p> 97 */ SetConstraintSummaries(const Aws::Vector<ConstraintSummary> & value)98 inline void SetConstraintSummaries(const Aws::Vector<ConstraintSummary>& value) { m_constraintSummariesHasBeenSet = true; m_constraintSummaries = value; } 99 100 /** 101 * <p>The constraints on the portfolio-product relationship.</p> 102 */ SetConstraintSummaries(Aws::Vector<ConstraintSummary> && value)103 inline void SetConstraintSummaries(Aws::Vector<ConstraintSummary>&& value) { m_constraintSummariesHasBeenSet = true; m_constraintSummaries = std::move(value); } 104 105 /** 106 * <p>The constraints on the portfolio-product relationship.</p> 107 */ WithConstraintSummaries(const Aws::Vector<ConstraintSummary> & value)108 inline LaunchPathSummary& WithConstraintSummaries(const Aws::Vector<ConstraintSummary>& value) { SetConstraintSummaries(value); return *this;} 109 110 /** 111 * <p>The constraints on the portfolio-product relationship.</p> 112 */ WithConstraintSummaries(Aws::Vector<ConstraintSummary> && value)113 inline LaunchPathSummary& WithConstraintSummaries(Aws::Vector<ConstraintSummary>&& value) { SetConstraintSummaries(std::move(value)); return *this;} 114 115 /** 116 * <p>The constraints on the portfolio-product relationship.</p> 117 */ AddConstraintSummaries(const ConstraintSummary & value)118 inline LaunchPathSummary& AddConstraintSummaries(const ConstraintSummary& value) { m_constraintSummariesHasBeenSet = true; m_constraintSummaries.push_back(value); return *this; } 119 120 /** 121 * <p>The constraints on the portfolio-product relationship.</p> 122 */ AddConstraintSummaries(ConstraintSummary && value)123 inline LaunchPathSummary& AddConstraintSummaries(ConstraintSummary&& value) { m_constraintSummariesHasBeenSet = true; m_constraintSummaries.push_back(std::move(value)); return *this; } 124 125 126 /** 127 * <p>The tags associated with this product path.</p> 128 */ GetTags()129 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; } 130 131 /** 132 * <p>The tags associated with this product path.</p> 133 */ TagsHasBeenSet()134 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } 135 136 /** 137 * <p>The tags associated with this product path.</p> 138 */ SetTags(const Aws::Vector<Tag> & value)139 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; } 140 141 /** 142 * <p>The tags associated with this product path.</p> 143 */ SetTags(Aws::Vector<Tag> && value)144 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } 145 146 /** 147 * <p>The tags associated with this product path.</p> 148 */ WithTags(const Aws::Vector<Tag> & value)149 inline LaunchPathSummary& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;} 150 151 /** 152 * <p>The tags associated with this product path.</p> 153 */ WithTags(Aws::Vector<Tag> && value)154 inline LaunchPathSummary& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;} 155 156 /** 157 * <p>The tags associated with this product path.</p> 158 */ AddTags(const Tag & value)159 inline LaunchPathSummary& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } 160 161 /** 162 * <p>The tags associated with this product path.</p> 163 */ AddTags(Tag && value)164 inline LaunchPathSummary& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } 165 166 167 /** 168 * <p>The name of the portfolio to which the user was assigned.</p> 169 */ GetName()170 inline const Aws::String& GetName() const{ return m_name; } 171 172 /** 173 * <p>The name of the portfolio to which the user was assigned.</p> 174 */ NameHasBeenSet()175 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } 176 177 /** 178 * <p>The name of the portfolio to which the user was assigned.</p> 179 */ SetName(const Aws::String & value)180 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } 181 182 /** 183 * <p>The name of the portfolio to which the user was assigned.</p> 184 */ SetName(Aws::String && value)185 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } 186 187 /** 188 * <p>The name of the portfolio to which the user was assigned.</p> 189 */ SetName(const char * value)190 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } 191 192 /** 193 * <p>The name of the portfolio to which the user was assigned.</p> 194 */ WithName(const Aws::String & value)195 inline LaunchPathSummary& WithName(const Aws::String& value) { SetName(value); return *this;} 196 197 /** 198 * <p>The name of the portfolio to which the user was assigned.</p> 199 */ WithName(Aws::String && value)200 inline LaunchPathSummary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} 201 202 /** 203 * <p>The name of the portfolio to which the user was assigned.</p> 204 */ WithName(const char * value)205 inline LaunchPathSummary& WithName(const char* value) { SetName(value); return *this;} 206 207 private: 208 209 Aws::String m_id; 210 bool m_idHasBeenSet; 211 212 Aws::Vector<ConstraintSummary> m_constraintSummaries; 213 bool m_constraintSummariesHasBeenSet; 214 215 Aws::Vector<Tag> m_tags; 216 bool m_tagsHasBeenSet; 217 218 Aws::String m_name; 219 bool m_nameHasBeenSet; 220 }; 221 222 } // namespace Model 223 } // namespace ServiceCatalog 224 } // namespace Aws 225