/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace WorkSpaces { namespace Model { /** */ class DescribeWorkspacesRequest : public WorkSpacesRequest { public: AWS_WORKSPACES_API DescribeWorkspacesRequest(); // 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 "DescribeWorkspaces"; } AWS_WORKSPACES_API Aws::String SerializePayload() const override; AWS_WORKSPACES_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The identifiers of the WorkSpaces. You cannot combine this parameter with any * other filter.

Because the CreateWorkspaces operation is * asynchronous, the identifier it returns is not immediately available. If you * immediately call DescribeWorkspaces with this identifier, no information * is returned.

*/ inline const Aws::Vector& GetWorkspaceIds() const{ return m_workspaceIds; } /** *

The identifiers of the WorkSpaces. You cannot combine this parameter with any * other filter.

Because the CreateWorkspaces operation is * asynchronous, the identifier it returns is not immediately available. If you * immediately call DescribeWorkspaces with this identifier, no information * is returned.

*/ inline bool WorkspaceIdsHasBeenSet() const { return m_workspaceIdsHasBeenSet; } /** *

The identifiers of the WorkSpaces. You cannot combine this parameter with any * other filter.

Because the CreateWorkspaces operation is * asynchronous, the identifier it returns is not immediately available. If you * immediately call DescribeWorkspaces with this identifier, no information * is returned.

*/ inline void SetWorkspaceIds(const Aws::Vector& value) { m_workspaceIdsHasBeenSet = true; m_workspaceIds = value; } /** *

The identifiers of the WorkSpaces. You cannot combine this parameter with any * other filter.

Because the CreateWorkspaces operation is * asynchronous, the identifier it returns is not immediately available. If you * immediately call DescribeWorkspaces with this identifier, no information * is returned.

*/ inline void SetWorkspaceIds(Aws::Vector&& value) { m_workspaceIdsHasBeenSet = true; m_workspaceIds = std::move(value); } /** *

The identifiers of the WorkSpaces. You cannot combine this parameter with any * other filter.

Because the CreateWorkspaces operation is * asynchronous, the identifier it returns is not immediately available. If you * immediately call DescribeWorkspaces with this identifier, no information * is returned.

*/ inline DescribeWorkspacesRequest& WithWorkspaceIds(const Aws::Vector& value) { SetWorkspaceIds(value); return *this;} /** *

The identifiers of the WorkSpaces. You cannot combine this parameter with any * other filter.

Because the CreateWorkspaces operation is * asynchronous, the identifier it returns is not immediately available. If you * immediately call DescribeWorkspaces with this identifier, no information * is returned.

*/ inline DescribeWorkspacesRequest& WithWorkspaceIds(Aws::Vector&& value) { SetWorkspaceIds(std::move(value)); return *this;} /** *

The identifiers of the WorkSpaces. You cannot combine this parameter with any * other filter.

Because the CreateWorkspaces operation is * asynchronous, the identifier it returns is not immediately available. If you * immediately call DescribeWorkspaces with this identifier, no information * is returned.

*/ inline DescribeWorkspacesRequest& AddWorkspaceIds(const Aws::String& value) { m_workspaceIdsHasBeenSet = true; m_workspaceIds.push_back(value); return *this; } /** *

The identifiers of the WorkSpaces. You cannot combine this parameter with any * other filter.

Because the CreateWorkspaces operation is * asynchronous, the identifier it returns is not immediately available. If you * immediately call DescribeWorkspaces with this identifier, no information * is returned.

*/ inline DescribeWorkspacesRequest& AddWorkspaceIds(Aws::String&& value) { m_workspaceIdsHasBeenSet = true; m_workspaceIds.push_back(std::move(value)); return *this; } /** *

The identifiers of the WorkSpaces. You cannot combine this parameter with any * other filter.

Because the CreateWorkspaces operation is * asynchronous, the identifier it returns is not immediately available. If you * immediately call DescribeWorkspaces with this identifier, no information * is returned.

*/ inline DescribeWorkspacesRequest& AddWorkspaceIds(const char* value) { m_workspaceIdsHasBeenSet = true; m_workspaceIds.push_back(value); return *this; } /** *

The identifier of the directory. In addition, you can optionally specify a * specific directory user (see UserName). You cannot combine this * parameter with any other filter.

*/ inline const Aws::String& GetDirectoryId() const{ return m_directoryId; } /** *

The identifier of the directory. In addition, you can optionally specify a * specific directory user (see UserName). You cannot combine this * parameter with any other filter.

*/ inline bool DirectoryIdHasBeenSet() const { return m_directoryIdHasBeenSet; } /** *

The identifier of the directory. In addition, you can optionally specify a * specific directory user (see UserName). You cannot combine this * parameter with any other filter.

*/ inline void SetDirectoryId(const Aws::String& value) { m_directoryIdHasBeenSet = true; m_directoryId = value; } /** *

The identifier of the directory. In addition, you can optionally specify a * specific directory user (see UserName). You cannot combine this * parameter with any other filter.

*/ inline void SetDirectoryId(Aws::String&& value) { m_directoryIdHasBeenSet = true; m_directoryId = std::move(value); } /** *

The identifier of the directory. In addition, you can optionally specify a * specific directory user (see UserName). You cannot combine this * parameter with any other filter.

*/ inline void SetDirectoryId(const char* value) { m_directoryIdHasBeenSet = true; m_directoryId.assign(value); } /** *

The identifier of the directory. In addition, you can optionally specify a * specific directory user (see UserName). You cannot combine this * parameter with any other filter.

*/ inline DescribeWorkspacesRequest& WithDirectoryId(const Aws::String& value) { SetDirectoryId(value); return *this;} /** *

The identifier of the directory. In addition, you can optionally specify a * specific directory user (see UserName). You cannot combine this * parameter with any other filter.

*/ inline DescribeWorkspacesRequest& WithDirectoryId(Aws::String&& value) { SetDirectoryId(std::move(value)); return *this;} /** *

The identifier of the directory. In addition, you can optionally specify a * specific directory user (see UserName). You cannot combine this * parameter with any other filter.

*/ inline DescribeWorkspacesRequest& WithDirectoryId(const char* value) { SetDirectoryId(value); return *this;} /** *

The name of the directory user. You must specify this parameter with * DirectoryId.

*/ inline const Aws::String& GetUserName() const{ return m_userName; } /** *

The name of the directory user. You must specify this parameter with * DirectoryId.

*/ inline bool UserNameHasBeenSet() const { return m_userNameHasBeenSet; } /** *

The name of the directory user. You must specify this parameter with * DirectoryId.

*/ inline void SetUserName(const Aws::String& value) { m_userNameHasBeenSet = true; m_userName = value; } /** *

The name of the directory user. You must specify this parameter with * DirectoryId.

*/ inline void SetUserName(Aws::String&& value) { m_userNameHasBeenSet = true; m_userName = std::move(value); } /** *

The name of the directory user. You must specify this parameter with * DirectoryId.

*/ inline void SetUserName(const char* value) { m_userNameHasBeenSet = true; m_userName.assign(value); } /** *

The name of the directory user. You must specify this parameter with * DirectoryId.

*/ inline DescribeWorkspacesRequest& WithUserName(const Aws::String& value) { SetUserName(value); return *this;} /** *

The name of the directory user. You must specify this parameter with * DirectoryId.

*/ inline DescribeWorkspacesRequest& WithUserName(Aws::String&& value) { SetUserName(std::move(value)); return *this;} /** *

The name of the directory user. You must specify this parameter with * DirectoryId.

*/ inline DescribeWorkspacesRequest& WithUserName(const char* value) { SetUserName(value); return *this;} /** *

The identifier of the bundle. All WorkSpaces that are created from this * bundle are retrieved. You cannot combine this parameter with any other * filter.

*/ inline const Aws::String& GetBundleId() const{ return m_bundleId; } /** *

The identifier of the bundle. All WorkSpaces that are created from this * bundle are retrieved. You cannot combine this parameter with any other * filter.

*/ inline bool BundleIdHasBeenSet() const { return m_bundleIdHasBeenSet; } /** *

The identifier of the bundle. All WorkSpaces that are created from this * bundle are retrieved. You cannot combine this parameter with any other * filter.

*/ inline void SetBundleId(const Aws::String& value) { m_bundleIdHasBeenSet = true; m_bundleId = value; } /** *

The identifier of the bundle. All WorkSpaces that are created from this * bundle are retrieved. You cannot combine this parameter with any other * filter.

*/ inline void SetBundleId(Aws::String&& value) { m_bundleIdHasBeenSet = true; m_bundleId = std::move(value); } /** *

The identifier of the bundle. All WorkSpaces that are created from this * bundle are retrieved. You cannot combine this parameter with any other * filter.

*/ inline void SetBundleId(const char* value) { m_bundleIdHasBeenSet = true; m_bundleId.assign(value); } /** *

The identifier of the bundle. All WorkSpaces that are created from this * bundle are retrieved. You cannot combine this parameter with any other * filter.

*/ inline DescribeWorkspacesRequest& WithBundleId(const Aws::String& value) { SetBundleId(value); return *this;} /** *

The identifier of the bundle. All WorkSpaces that are created from this * bundle are retrieved. You cannot combine this parameter with any other * filter.

*/ inline DescribeWorkspacesRequest& WithBundleId(Aws::String&& value) { SetBundleId(std::move(value)); return *this;} /** *

The identifier of the bundle. All WorkSpaces that are created from this * bundle are retrieved. You cannot combine this parameter with any other * filter.

*/ inline DescribeWorkspacesRequest& WithBundleId(const char* value) { SetBundleId(value); return *this;} /** *

The maximum number of items to return.

*/ inline int GetLimit() const{ return m_limit; } /** *

The maximum number of items to return.

*/ inline bool LimitHasBeenSet() const { return m_limitHasBeenSet; } /** *

The maximum number of items to return.

*/ inline void SetLimit(int value) { m_limitHasBeenSet = true; m_limit = value; } /** *

The maximum number of items to return.

*/ inline DescribeWorkspacesRequest& WithLimit(int value) { SetLimit(value); return *this;} /** *

If you received a NextToken from a previous call that was * paginated, provide this token to receive the next set of results.

*/ inline const Aws::String& GetNextToken() const{ return m_nextToken; } /** *

If you received a NextToken from a previous call that was * paginated, provide this token to receive the next set of results.

*/ inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } /** *

If you received a NextToken from a previous call that was * paginated, provide this token to receive the next set of results.

*/ inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } /** *

If you received a NextToken from a previous call that was * paginated, provide this token to receive the next set of results.

*/ inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } /** *

If you received a NextToken from a previous call that was * paginated, provide this token to receive the next set of results.

*/ inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } /** *

If you received a NextToken from a previous call that was * paginated, provide this token to receive the next set of results.

*/ inline DescribeWorkspacesRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} /** *

If you received a NextToken from a previous call that was * paginated, provide this token to receive the next set of results.

*/ inline DescribeWorkspacesRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} /** *

If you received a NextToken from a previous call that was * paginated, provide this token to receive the next set of results.

*/ inline DescribeWorkspacesRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} private: Aws::Vector m_workspaceIds; bool m_workspaceIdsHasBeenSet = false; Aws::String m_directoryId; bool m_directoryIdHasBeenSet = false; Aws::String m_userName; bool m_userNameHasBeenSet = false; Aws::String m_bundleId; bool m_bundleIdHasBeenSet = false; int m_limit; bool m_limitHasBeenSet = false; Aws::String m_nextToken; bool m_nextTokenHasBeenSet = false; }; } // namespace Model } // namespace WorkSpaces } // namespace Aws