/** * 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 RedshiftDataAPIService { namespace Model { /** */ class ListStatementsRequest : public RedshiftDataAPIServiceRequest { public: AWS_REDSHIFTDATAAPISERVICE_API ListStatementsRequest(); // 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 "ListStatements"; } AWS_REDSHIFTDATAAPISERVICE_API Aws::String SerializePayload() const override; AWS_REDSHIFTDATAAPISERVICE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The maximum number of SQL statements to return in the response. If more SQL * statements exist than fit in one response, then NextToken is * returned to page through the results.

*/ inline int GetMaxResults() const{ return m_maxResults; } /** *

The maximum number of SQL statements to return in the response. If more SQL * statements exist than fit in one response, then NextToken is * returned to page through the results.

*/ inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } /** *

The maximum number of SQL statements to return in the response. If more SQL * statements exist than fit in one response, then NextToken is * returned to page through the results.

*/ inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } /** *

The maximum number of SQL statements to return in the response. If more SQL * statements exist than fit in one response, then NextToken is * returned to page through the results.

*/ inline ListStatementsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} /** *

A value that indicates the starting point for the next set of response * records in a subsequent request. If a value is returned in a response, you can * retrieve the next set of records by providing this returned NextToken value in * the next NextToken parameter and retrying the command. If the NextToken field is * empty, all response records have been retrieved for the request.

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

A value that indicates the starting point for the next set of response * records in a subsequent request. If a value is returned in a response, you can * retrieve the next set of records by providing this returned NextToken value in * the next NextToken parameter and retrying the command. If the NextToken field is * empty, all response records have been retrieved for the request.

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

A value that indicates the starting point for the next set of response * records in a subsequent request. If a value is returned in a response, you can * retrieve the next set of records by providing this returned NextToken value in * the next NextToken parameter and retrying the command. If the NextToken field is * empty, all response records have been retrieved for the request.

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

A value that indicates the starting point for the next set of response * records in a subsequent request. If a value is returned in a response, you can * retrieve the next set of records by providing this returned NextToken value in * the next NextToken parameter and retrying the command. If the NextToken field is * empty, all response records have been retrieved for the request.

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

A value that indicates the starting point for the next set of response * records in a subsequent request. If a value is returned in a response, you can * retrieve the next set of records by providing this returned NextToken value in * the next NextToken parameter and retrying the command. If the NextToken field is * empty, all response records have been retrieved for the request.

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

A value that indicates the starting point for the next set of response * records in a subsequent request. If a value is returned in a response, you can * retrieve the next set of records by providing this returned NextToken value in * the next NextToken parameter and retrying the command. If the NextToken field is * empty, all response records have been retrieved for the request.

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

A value that indicates the starting point for the next set of response * records in a subsequent request. If a value is returned in a response, you can * retrieve the next set of records by providing this returned NextToken value in * the next NextToken parameter and retrying the command. If the NextToken field is * empty, all response records have been retrieved for the request.

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

A value that indicates the starting point for the next set of response * records in a subsequent request. If a value is returned in a response, you can * retrieve the next set of records by providing this returned NextToken value in * the next NextToken parameter and retrying the command. If the NextToken field is * empty, all response records have been retrieved for the request.

*/ inline ListStatementsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} /** *

A value that filters which statements to return in the response. If true, all * statements run by the caller's IAM role are returned. If false, only statements * run by the caller's IAM role in the current IAM session are returned. The * default is true.

*/ inline bool GetRoleLevel() const{ return m_roleLevel; } /** *

A value that filters which statements to return in the response. If true, all * statements run by the caller's IAM role are returned. If false, only statements * run by the caller's IAM role in the current IAM session are returned. The * default is true.

*/ inline bool RoleLevelHasBeenSet() const { return m_roleLevelHasBeenSet; } /** *

A value that filters which statements to return in the response. If true, all * statements run by the caller's IAM role are returned. If false, only statements * run by the caller's IAM role in the current IAM session are returned. The * default is true.

*/ inline void SetRoleLevel(bool value) { m_roleLevelHasBeenSet = true; m_roleLevel = value; } /** *

A value that filters which statements to return in the response. If true, all * statements run by the caller's IAM role are returned. If false, only statements * run by the caller's IAM role in the current IAM session are returned. The * default is true.

*/ inline ListStatementsRequest& WithRoleLevel(bool value) { SetRoleLevel(value); return *this;} /** *

The name of the SQL statement specified as input to * BatchExecuteStatement or ExecuteStatement to identify * the query. You can list multiple statements by providing a prefix that matches * the beginning of the statement name. For example, to list myStatement1, * myStatement2, myStatement3, and so on, then provide the a value of * myStatement. Data API does a case-sensitive match of SQL statement * names to the prefix value you provide.

*/ inline const Aws::String& GetStatementName() const{ return m_statementName; } /** *

The name of the SQL statement specified as input to * BatchExecuteStatement or ExecuteStatement to identify * the query. You can list multiple statements by providing a prefix that matches * the beginning of the statement name. For example, to list myStatement1, * myStatement2, myStatement3, and so on, then provide the a value of * myStatement. Data API does a case-sensitive match of SQL statement * names to the prefix value you provide.

*/ inline bool StatementNameHasBeenSet() const { return m_statementNameHasBeenSet; } /** *

The name of the SQL statement specified as input to * BatchExecuteStatement or ExecuteStatement to identify * the query. You can list multiple statements by providing a prefix that matches * the beginning of the statement name. For example, to list myStatement1, * myStatement2, myStatement3, and so on, then provide the a value of * myStatement. Data API does a case-sensitive match of SQL statement * names to the prefix value you provide.

*/ inline void SetStatementName(const Aws::String& value) { m_statementNameHasBeenSet = true; m_statementName = value; } /** *

The name of the SQL statement specified as input to * BatchExecuteStatement or ExecuteStatement to identify * the query. You can list multiple statements by providing a prefix that matches * the beginning of the statement name. For example, to list myStatement1, * myStatement2, myStatement3, and so on, then provide the a value of * myStatement. Data API does a case-sensitive match of SQL statement * names to the prefix value you provide.

*/ inline void SetStatementName(Aws::String&& value) { m_statementNameHasBeenSet = true; m_statementName = std::move(value); } /** *

The name of the SQL statement specified as input to * BatchExecuteStatement or ExecuteStatement to identify * the query. You can list multiple statements by providing a prefix that matches * the beginning of the statement name. For example, to list myStatement1, * myStatement2, myStatement3, and so on, then provide the a value of * myStatement. Data API does a case-sensitive match of SQL statement * names to the prefix value you provide.

*/ inline void SetStatementName(const char* value) { m_statementNameHasBeenSet = true; m_statementName.assign(value); } /** *

The name of the SQL statement specified as input to * BatchExecuteStatement or ExecuteStatement to identify * the query. You can list multiple statements by providing a prefix that matches * the beginning of the statement name. For example, to list myStatement1, * myStatement2, myStatement3, and so on, then provide the a value of * myStatement. Data API does a case-sensitive match of SQL statement * names to the prefix value you provide.

*/ inline ListStatementsRequest& WithStatementName(const Aws::String& value) { SetStatementName(value); return *this;} /** *

The name of the SQL statement specified as input to * BatchExecuteStatement or ExecuteStatement to identify * the query. You can list multiple statements by providing a prefix that matches * the beginning of the statement name. For example, to list myStatement1, * myStatement2, myStatement3, and so on, then provide the a value of * myStatement. Data API does a case-sensitive match of SQL statement * names to the prefix value you provide.

*/ inline ListStatementsRequest& WithStatementName(Aws::String&& value) { SetStatementName(std::move(value)); return *this;} /** *

The name of the SQL statement specified as input to * BatchExecuteStatement or ExecuteStatement to identify * the query. You can list multiple statements by providing a prefix that matches * the beginning of the statement name. For example, to list myStatement1, * myStatement2, myStatement3, and so on, then provide the a value of * myStatement. Data API does a case-sensitive match of SQL statement * names to the prefix value you provide.

*/ inline ListStatementsRequest& WithStatementName(const char* value) { SetStatementName(value); return *this;} /** *

The status of the SQL statement to list. Status values are defined as * follows:

  • ABORTED - The query run was stopped by the user.

    *
  • ALL - A status value that includes all query statuses. This value * can be used to filter results.

  • FAILED - The query run failed. *

  • FINISHED - The query has finished running.

  • *

    PICKED - The query has been chosen to be run.

  • STARTED - * The query run has started.

  • SUBMITTED - The query was * submitted, but not yet processed.

*/ inline const StatusString& GetStatus() const{ return m_status; } /** *

The status of the SQL statement to list. Status values are defined as * follows:

  • ABORTED - The query run was stopped by the user.

    *
  • ALL - A status value that includes all query statuses. This value * can be used to filter results.

  • FAILED - The query run failed. *

  • FINISHED - The query has finished running.

  • *

    PICKED - The query has been chosen to be run.

  • STARTED - * The query run has started.

  • SUBMITTED - The query was * submitted, but not yet processed.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status of the SQL statement to list. Status values are defined as * follows:

  • ABORTED - The query run was stopped by the user.

    *
  • ALL - A status value that includes all query statuses. This value * can be used to filter results.

  • FAILED - The query run failed. *

  • FINISHED - The query has finished running.

  • *

    PICKED - The query has been chosen to be run.

  • STARTED - * The query run has started.

  • SUBMITTED - The query was * submitted, but not yet processed.

*/ inline void SetStatus(const StatusString& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status of the SQL statement to list. Status values are defined as * follows:

  • ABORTED - The query run was stopped by the user.

    *
  • ALL - A status value that includes all query statuses. This value * can be used to filter results.

  • FAILED - The query run failed. *

  • FINISHED - The query has finished running.

  • *

    PICKED - The query has been chosen to be run.

  • STARTED - * The query run has started.

  • SUBMITTED - The query was * submitted, but not yet processed.

*/ inline void SetStatus(StatusString&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The status of the SQL statement to list. Status values are defined as * follows:

  • ABORTED - The query run was stopped by the user.

    *
  • ALL - A status value that includes all query statuses. This value * can be used to filter results.

  • FAILED - The query run failed. *

  • FINISHED - The query has finished running.

  • *

    PICKED - The query has been chosen to be run.

  • STARTED - * The query run has started.

  • SUBMITTED - The query was * submitted, but not yet processed.

*/ inline ListStatementsRequest& WithStatus(const StatusString& value) { SetStatus(value); return *this;} /** *

The status of the SQL statement to list. Status values are defined as * follows:

  • ABORTED - The query run was stopped by the user.

    *
  • ALL - A status value that includes all query statuses. This value * can be used to filter results.

  • FAILED - The query run failed. *

  • FINISHED - The query has finished running.

  • *

    PICKED - The query has been chosen to be run.

  • STARTED - * The query run has started.

  • SUBMITTED - The query was * submitted, but not yet processed.

*/ inline ListStatementsRequest& WithStatus(StatusString&& value) { SetStatus(std::move(value)); return *this;} private: int m_maxResults; bool m_maxResultsHasBeenSet = false; Aws::String m_nextToken; bool m_nextTokenHasBeenSet = false; bool m_roleLevel; bool m_roleLevelHasBeenSet = false; Aws::String m_statementName; bool m_statementNameHasBeenSet = false; StatusString m_status; bool m_statusHasBeenSet = false; }; } // namespace Model } // namespace RedshiftDataAPIService } // namespace Aws