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/apprunner/AppRunner_EXPORTS.h> 8 #include <aws/apprunner/AppRunnerRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/apprunner/model/ProviderType.h> 11 #include <aws/core/utils/memory/stl/AWSVector.h> 12 #include <aws/apprunner/model/Tag.h> 13 #include <utility> 14 15 namespace Aws 16 { 17 namespace AppRunner 18 { 19 namespace Model 20 { 21 22 /** 23 */ 24 class AWS_APPRUNNER_API CreateConnectionRequest : public AppRunnerRequest 25 { 26 public: 27 CreateConnectionRequest(); 28 29 // Service request name is the Operation name which will send this request out, 30 // each operation should has unique request name, so that we can get operation's name from this request. 31 // Note: this is not true for response, multiple operations may have the same response name, 32 // so we can not get operation's name from response. GetServiceRequestName()33 inline virtual const char* GetServiceRequestName() const override { return "CreateConnection"; } 34 35 Aws::String SerializePayload() const override; 36 37 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 38 39 40 /** 41 * <p>A name for the new connection. It must be unique across all App Runner 42 * connections for the Amazon Web Services account in the Amazon Web Services 43 * Region.</p> 44 */ GetConnectionName()45 inline const Aws::String& GetConnectionName() const{ return m_connectionName; } 46 47 /** 48 * <p>A name for the new connection. It must be unique across all App Runner 49 * connections for the Amazon Web Services account in the Amazon Web Services 50 * Region.</p> 51 */ ConnectionNameHasBeenSet()52 inline bool ConnectionNameHasBeenSet() const { return m_connectionNameHasBeenSet; } 53 54 /** 55 * <p>A name for the new connection. It must be unique across all App Runner 56 * connections for the Amazon Web Services account in the Amazon Web Services 57 * Region.</p> 58 */ SetConnectionName(const Aws::String & value)59 inline void SetConnectionName(const Aws::String& value) { m_connectionNameHasBeenSet = true; m_connectionName = value; } 60 61 /** 62 * <p>A name for the new connection. It must be unique across all App Runner 63 * connections for the Amazon Web Services account in the Amazon Web Services 64 * Region.</p> 65 */ SetConnectionName(Aws::String && value)66 inline void SetConnectionName(Aws::String&& value) { m_connectionNameHasBeenSet = true; m_connectionName = std::move(value); } 67 68 /** 69 * <p>A name for the new connection. It must be unique across all App Runner 70 * connections for the Amazon Web Services account in the Amazon Web Services 71 * Region.</p> 72 */ SetConnectionName(const char * value)73 inline void SetConnectionName(const char* value) { m_connectionNameHasBeenSet = true; m_connectionName.assign(value); } 74 75 /** 76 * <p>A name for the new connection. It must be unique across all App Runner 77 * connections for the Amazon Web Services account in the Amazon Web Services 78 * Region.</p> 79 */ WithConnectionName(const Aws::String & value)80 inline CreateConnectionRequest& WithConnectionName(const Aws::String& value) { SetConnectionName(value); return *this;} 81 82 /** 83 * <p>A name for the new connection. It must be unique across all App Runner 84 * connections for the Amazon Web Services account in the Amazon Web Services 85 * Region.</p> 86 */ WithConnectionName(Aws::String && value)87 inline CreateConnectionRequest& WithConnectionName(Aws::String&& value) { SetConnectionName(std::move(value)); return *this;} 88 89 /** 90 * <p>A name for the new connection. It must be unique across all App Runner 91 * connections for the Amazon Web Services account in the Amazon Web Services 92 * Region.</p> 93 */ WithConnectionName(const char * value)94 inline CreateConnectionRequest& WithConnectionName(const char* value) { SetConnectionName(value); return *this;} 95 96 97 /** 98 * <p>The source repository provider.</p> 99 */ GetProviderType()100 inline const ProviderType& GetProviderType() const{ return m_providerType; } 101 102 /** 103 * <p>The source repository provider.</p> 104 */ ProviderTypeHasBeenSet()105 inline bool ProviderTypeHasBeenSet() const { return m_providerTypeHasBeenSet; } 106 107 /** 108 * <p>The source repository provider.</p> 109 */ SetProviderType(const ProviderType & value)110 inline void SetProviderType(const ProviderType& value) { m_providerTypeHasBeenSet = true; m_providerType = value; } 111 112 /** 113 * <p>The source repository provider.</p> 114 */ SetProviderType(ProviderType && value)115 inline void SetProviderType(ProviderType&& value) { m_providerTypeHasBeenSet = true; m_providerType = std::move(value); } 116 117 /** 118 * <p>The source repository provider.</p> 119 */ WithProviderType(const ProviderType & value)120 inline CreateConnectionRequest& WithProviderType(const ProviderType& value) { SetProviderType(value); return *this;} 121 122 /** 123 * <p>The source repository provider.</p> 124 */ WithProviderType(ProviderType && value)125 inline CreateConnectionRequest& WithProviderType(ProviderType&& value) { SetProviderType(std::move(value)); return *this;} 126 127 128 /** 129 * <p>A list of metadata items that you can associate with your connection 130 * resource. A tag is a key-value pair.</p> 131 */ GetTags()132 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; } 133 134 /** 135 * <p>A list of metadata items that you can associate with your connection 136 * resource. A tag is a key-value pair.</p> 137 */ TagsHasBeenSet()138 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } 139 140 /** 141 * <p>A list of metadata items that you can associate with your connection 142 * resource. A tag is a key-value pair.</p> 143 */ SetTags(const Aws::Vector<Tag> & value)144 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; } 145 146 /** 147 * <p>A list of metadata items that you can associate with your connection 148 * resource. A tag is a key-value pair.</p> 149 */ SetTags(Aws::Vector<Tag> && value)150 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } 151 152 /** 153 * <p>A list of metadata items that you can associate with your connection 154 * resource. A tag is a key-value pair.</p> 155 */ WithTags(const Aws::Vector<Tag> & value)156 inline CreateConnectionRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;} 157 158 /** 159 * <p>A list of metadata items that you can associate with your connection 160 * resource. A tag is a key-value pair.</p> 161 */ WithTags(Aws::Vector<Tag> && value)162 inline CreateConnectionRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;} 163 164 /** 165 * <p>A list of metadata items that you can associate with your connection 166 * resource. A tag is a key-value pair.</p> 167 */ AddTags(const Tag & value)168 inline CreateConnectionRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } 169 170 /** 171 * <p>A list of metadata items that you can associate with your connection 172 * resource. A tag is a key-value pair.</p> 173 */ AddTags(Tag && value)174 inline CreateConnectionRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } 175 176 private: 177 178 Aws::String m_connectionName; 179 bool m_connectionNameHasBeenSet; 180 181 ProviderType m_providerType; 182 bool m_providerTypeHasBeenSet; 183 184 Aws::Vector<Tag> m_tags; 185 bool m_tagsHasBeenSet; 186 }; 187 188 } // namespace Model 189 } // namespace AppRunner 190 } // namespace Aws 191