Skip to content

Commit

Permalink
We have added the ability to tag resources after they are created
Browse files Browse the repository at this point in the history
  • Loading branch information
aws-sdk-cpp-automation committed Feb 27, 2024
1 parent 88963a1 commit 013587c
Show file tree
Hide file tree
Showing 20 changed files with 1,337 additions and 136 deletions.
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.11.273
1.11.274
Original file line number Diff line number Diff line change
Expand Up @@ -548,6 +548,32 @@ namespace AmplifyUIBuilder
return SubmitAsync(&AmplifyUIBuilderClient::ListForms, request, handler, context);
}

/**
* <p>Returns a list of tags for a specified Amazon Resource Name
* (ARN).</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ListTagsForResource">AWS
* API Reference</a></p>
*/
virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const;

/**
* A Callable wrapper for ListTagsForResource that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template<typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const
{
return SubmitCallable(&AmplifyUIBuilderClient::ListTagsForResource, request);
}

/**
* An Async wrapper for ListTagsForResource that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template<typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
{
return SubmitAsync(&AmplifyUIBuilderClient::ListTagsForResource, request, handler, context);
}

/**
* <p>Retrieves a list of themes for a specified Amplify app and backend
* environment.</p><p><h3>See Also:</h3> <a
Expand Down Expand Up @@ -653,6 +679,57 @@ namespace AmplifyUIBuilder
return SubmitAsync(&AmplifyUIBuilderClient::StartCodegenJob, request, handler, context);
}

/**
* <p>Tags the resource with a tag key and value.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/TagResource">AWS
* API Reference</a></p>
*/
virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const;

/**
* A Callable wrapper for TagResource that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template<typename TagResourceRequestT = Model::TagResourceRequest>
Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT& request) const
{
return SubmitCallable(&AmplifyUIBuilderClient::TagResource, request);
}

/**
* An Async wrapper for TagResource that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template<typename TagResourceRequestT = Model::TagResourceRequest>
void TagResourceAsync(const TagResourceRequestT& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
{
return SubmitAsync(&AmplifyUIBuilderClient::TagResource, request, handler, context);
}

/**
* <p>Untags a resource with a specified Amazon Resource Name (ARN).</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/UntagResource">AWS
* API Reference</a></p>
*/
virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const;

/**
* A Callable wrapper for UntagResource that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template<typename UntagResourceRequestT = Model::UntagResourceRequest>
Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT& request) const
{
return SubmitCallable(&AmplifyUIBuilderClient::UntagResource, request);
}

/**
* An Async wrapper for UntagResource that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template<typename UntagResourceRequestT = Model::UntagResourceRequest>
void UntagResourceAsync(const UntagResourceRequestT& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
{
return SubmitAsync(&AmplifyUIBuilderClient::UntagResource, request, handler, context);
}

/**
* <p>Updates an existing component.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/UpdateComponent">AWS
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,12 @@
#include <aws/amplifyuibuilder/model/ListCodegenJobsResult.h>
#include <aws/amplifyuibuilder/model/ListComponentsResult.h>
#include <aws/amplifyuibuilder/model/ListFormsResult.h>
#include <aws/amplifyuibuilder/model/ListTagsForResourceResult.h>
#include <aws/amplifyuibuilder/model/ListThemesResult.h>
#include <aws/amplifyuibuilder/model/RefreshTokenResult.h>
#include <aws/amplifyuibuilder/model/StartCodegenJobResult.h>
#include <aws/amplifyuibuilder/model/TagResourceResult.h>
#include <aws/amplifyuibuilder/model/UntagResourceResult.h>
#include <aws/amplifyuibuilder/model/UpdateComponentResult.h>
#include <aws/amplifyuibuilder/model/UpdateFormResult.h>
#include <aws/amplifyuibuilder/model/UpdateThemeResult.h>
Expand Down Expand Up @@ -98,10 +101,13 @@ namespace Aws
class ListCodegenJobsRequest;
class ListComponentsRequest;
class ListFormsRequest;
class ListTagsForResourceRequest;
class ListThemesRequest;
class PutMetadataFlagRequest;
class RefreshTokenRequest;
class StartCodegenJobRequest;
class TagResourceRequest;
class UntagResourceRequest;
class UpdateComponentRequest;
class UpdateFormRequest;
class UpdateThemeRequest;
Expand All @@ -126,10 +132,13 @@ namespace Aws
typedef Aws::Utils::Outcome<ListCodegenJobsResult, AmplifyUIBuilderError> ListCodegenJobsOutcome;
typedef Aws::Utils::Outcome<ListComponentsResult, AmplifyUIBuilderError> ListComponentsOutcome;
typedef Aws::Utils::Outcome<ListFormsResult, AmplifyUIBuilderError> ListFormsOutcome;
typedef Aws::Utils::Outcome<ListTagsForResourceResult, AmplifyUIBuilderError> ListTagsForResourceOutcome;
typedef Aws::Utils::Outcome<ListThemesResult, AmplifyUIBuilderError> ListThemesOutcome;
typedef Aws::Utils::Outcome<Aws::NoResult, AmplifyUIBuilderError> PutMetadataFlagOutcome;
typedef Aws::Utils::Outcome<RefreshTokenResult, AmplifyUIBuilderError> RefreshTokenOutcome;
typedef Aws::Utils::Outcome<StartCodegenJobResult, AmplifyUIBuilderError> StartCodegenJobOutcome;
typedef Aws::Utils::Outcome<TagResourceResult, AmplifyUIBuilderError> TagResourceOutcome;
typedef Aws::Utils::Outcome<UntagResourceResult, AmplifyUIBuilderError> UntagResourceOutcome;
typedef Aws::Utils::Outcome<UpdateComponentResult, AmplifyUIBuilderError> UpdateComponentOutcome;
typedef Aws::Utils::Outcome<UpdateFormResult, AmplifyUIBuilderError> UpdateFormOutcome;
typedef Aws::Utils::Outcome<UpdateThemeResult, AmplifyUIBuilderError> UpdateThemeOutcome;
Expand All @@ -154,10 +163,13 @@ namespace Aws
typedef std::future<ListCodegenJobsOutcome> ListCodegenJobsOutcomeCallable;
typedef std::future<ListComponentsOutcome> ListComponentsOutcomeCallable;
typedef std::future<ListFormsOutcome> ListFormsOutcomeCallable;
typedef std::future<ListTagsForResourceOutcome> ListTagsForResourceOutcomeCallable;
typedef std::future<ListThemesOutcome> ListThemesOutcomeCallable;
typedef std::future<PutMetadataFlagOutcome> PutMetadataFlagOutcomeCallable;
typedef std::future<RefreshTokenOutcome> RefreshTokenOutcomeCallable;
typedef std::future<StartCodegenJobOutcome> StartCodegenJobOutcomeCallable;
typedef std::future<TagResourceOutcome> TagResourceOutcomeCallable;
typedef std::future<UntagResourceOutcome> UntagResourceOutcomeCallable;
typedef std::future<UpdateComponentOutcome> UpdateComponentOutcomeCallable;
typedef std::future<UpdateFormOutcome> UpdateFormOutcomeCallable;
typedef std::future<UpdateThemeOutcome> UpdateThemeOutcomeCallable;
Expand Down Expand Up @@ -185,10 +197,13 @@ namespace Aws
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::ListCodegenJobsRequest&, const Model::ListCodegenJobsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListCodegenJobsResponseReceivedHandler;
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::ListComponentsRequest&, const Model::ListComponentsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListComponentsResponseReceivedHandler;
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::ListFormsRequest&, const Model::ListFormsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListFormsResponseReceivedHandler;
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::ListTagsForResourceRequest&, const Model::ListTagsForResourceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListTagsForResourceResponseReceivedHandler;
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::ListThemesRequest&, const Model::ListThemesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListThemesResponseReceivedHandler;
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::PutMetadataFlagRequest&, const Model::PutMetadataFlagOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutMetadataFlagResponseReceivedHandler;
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::RefreshTokenRequest&, const Model::RefreshTokenOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RefreshTokenResponseReceivedHandler;
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::StartCodegenJobRequest&, const Model::StartCodegenJobOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > StartCodegenJobResponseReceivedHandler;
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::TagResourceRequest&, const Model::TagResourceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > TagResourceResponseReceivedHandler;
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::UntagResourceRequest&, const Model::UntagResourceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UntagResourceResponseReceivedHandler;
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::UpdateComponentRequest&, const Model::UpdateComponentOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateComponentResponseReceivedHandler;
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::UpdateFormRequest&, const Model::UpdateFormOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateFormResponseReceivedHandler;
typedef std::function<void(const AmplifyUIBuilderClient*, const Model::UpdateThemeRequest&, const Model::UpdateThemeOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateThemeResponseReceivedHandler;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/

#pragma once
#include <aws/amplifyuibuilder/AmplifyUIBuilder_EXPORTS.h>
#include <aws/amplifyuibuilder/AmplifyUIBuilderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>

namespace Aws
{
namespace AmplifyUIBuilder
{
namespace Model
{

/**
*/
class ListTagsForResourceRequest : public AmplifyUIBuilderRequest
{
public:
AWS_AMPLIFYUIBUILDER_API ListTagsForResourceRequest();

// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
// Note: this is not true for response, multiple operations may have the same response name,
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListTagsForResource"; }

AWS_AMPLIFYUIBUILDER_API Aws::String SerializePayload() const override;


/**
* <p>The Amazon Resource Name (ARN) to use to list tags.</p>
*/
inline const Aws::String& GetResourceArn() const{ return m_resourceArn; }

/**
* <p>The Amazon Resource Name (ARN) to use to list tags.</p>
*/
inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; }

/**
* <p>The Amazon Resource Name (ARN) to use to list tags.</p>
*/
inline void SetResourceArn(const Aws::String& value) { m_resourceArnHasBeenSet = true; m_resourceArn = value; }

/**
* <p>The Amazon Resource Name (ARN) to use to list tags.</p>
*/
inline void SetResourceArn(Aws::String&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::move(value); }

/**
* <p>The Amazon Resource Name (ARN) to use to list tags.</p>
*/
inline void SetResourceArn(const char* value) { m_resourceArnHasBeenSet = true; m_resourceArn.assign(value); }

/**
* <p>The Amazon Resource Name (ARN) to use to list tags.</p>
*/
inline ListTagsForResourceRequest& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;}

/**
* <p>The Amazon Resource Name (ARN) to use to list tags.</p>
*/
inline ListTagsForResourceRequest& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;}

/**
* <p>The Amazon Resource Name (ARN) to use to list tags.</p>
*/
inline ListTagsForResourceRequest& WithResourceArn(const char* value) { SetResourceArn(value); return *this;}

private:

Aws::String m_resourceArn;
bool m_resourceArnHasBeenSet = false;
};

} // namespace Model
} // namespace AmplifyUIBuilder
} // namespace Aws
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/

#pragma once
#include <aws/amplifyuibuilder/AmplifyUIBuilder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>

namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;

namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace AmplifyUIBuilder
{
namespace Model
{
class ListTagsForResourceResult
{
public:
AWS_AMPLIFYUIBUILDER_API ListTagsForResourceResult();
AWS_AMPLIFYUIBUILDER_API ListTagsForResourceResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
AWS_AMPLIFYUIBUILDER_API ListTagsForResourceResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);


/**
* <p>A list of tag key value pairs for a specified Amazon Resource Name (ARN).</p>
*/
inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; }

/**
* <p>A list of tag key value pairs for a specified Amazon Resource Name (ARN).</p>
*/
inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tags = value; }

/**
* <p>A list of tag key value pairs for a specified Amazon Resource Name (ARN).</p>
*/
inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tags = std::move(value); }

/**
* <p>A list of tag key value pairs for a specified Amazon Resource Name (ARN).</p>
*/
inline ListTagsForResourceResult& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;}

/**
* <p>A list of tag key value pairs for a specified Amazon Resource Name (ARN).</p>
*/
inline ListTagsForResourceResult& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;}

/**
* <p>A list of tag key value pairs for a specified Amazon Resource Name (ARN).</p>
*/
inline ListTagsForResourceResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; }

/**
* <p>A list of tag key value pairs for a specified Amazon Resource Name (ARN).</p>
*/
inline ListTagsForResourceResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; }

/**
* <p>A list of tag key value pairs for a specified Amazon Resource Name (ARN).</p>
*/
inline ListTagsForResourceResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; }

/**
* <p>A list of tag key value pairs for a specified Amazon Resource Name (ARN).</p>
*/
inline ListTagsForResourceResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; }

/**
* <p>A list of tag key value pairs for a specified Amazon Resource Name (ARN).</p>
*/
inline ListTagsForResourceResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; }

/**
* <p>A list of tag key value pairs for a specified Amazon Resource Name (ARN).</p>
*/
inline ListTagsForResourceResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; }

/**
* <p>A list of tag key value pairs for a specified Amazon Resource Name (ARN).</p>
*/
inline ListTagsForResourceResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; }



inline const Aws::String& GetRequestId() const{ return m_requestId; }


inline void SetRequestId(const Aws::String& value) { m_requestId = value; }


inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); }


inline void SetRequestId(const char* value) { m_requestId.assign(value); }


inline ListTagsForResourceResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;}


inline ListTagsForResourceResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;}


inline ListTagsForResourceResult& WithRequestId(const char* value) { SetRequestId(value); return *this;}

private:

Aws::Map<Aws::String, Aws::String> m_tags;

Aws::String m_requestId;
};

} // namespace Model
} // namespace AmplifyUIBuilder
} // namespace Aws
Loading

0 comments on commit 013587c

Please sign in to comment.