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

The name of the domain that contains the workflow executions to list.

*/ inline const Aws::String& GetDomain() const{ return m_domain; } /** *

The name of the domain that contains the workflow executions to list.

*/ inline bool DomainHasBeenSet() const { return m_domainHasBeenSet; } /** *

The name of the domain that contains the workflow executions to list.

*/ inline void SetDomain(const Aws::String& value) { m_domainHasBeenSet = true; m_domain = value; } /** *

The name of the domain that contains the workflow executions to list.

*/ inline void SetDomain(Aws::String&& value) { m_domainHasBeenSet = true; m_domain = std::move(value); } /** *

The name of the domain that contains the workflow executions to list.

*/ inline void SetDomain(const char* value) { m_domainHasBeenSet = true; m_domain.assign(value); } /** *

The name of the domain that contains the workflow executions to list.

*/ inline ListOpenWorkflowExecutionsRequest& WithDomain(const Aws::String& value) { SetDomain(value); return *this;} /** *

The name of the domain that contains the workflow executions to list.

*/ inline ListOpenWorkflowExecutionsRequest& WithDomain(Aws::String&& value) { SetDomain(std::move(value)); return *this;} /** *

The name of the domain that contains the workflow executions to list.

*/ inline ListOpenWorkflowExecutionsRequest& WithDomain(const char* value) { SetDomain(value); return *this;} /** *

Workflow executions are included in the returned results based on whether * their start times are within the range specified by this filter.

*/ inline const ExecutionTimeFilter& GetStartTimeFilter() const{ return m_startTimeFilter; } /** *

Workflow executions are included in the returned results based on whether * their start times are within the range specified by this filter.

*/ inline bool StartTimeFilterHasBeenSet() const { return m_startTimeFilterHasBeenSet; } /** *

Workflow executions are included in the returned results based on whether * their start times are within the range specified by this filter.

*/ inline void SetStartTimeFilter(const ExecutionTimeFilter& value) { m_startTimeFilterHasBeenSet = true; m_startTimeFilter = value; } /** *

Workflow executions are included in the returned results based on whether * their start times are within the range specified by this filter.

*/ inline void SetStartTimeFilter(ExecutionTimeFilter&& value) { m_startTimeFilterHasBeenSet = true; m_startTimeFilter = std::move(value); } /** *

Workflow executions are included in the returned results based on whether * their start times are within the range specified by this filter.

*/ inline ListOpenWorkflowExecutionsRequest& WithStartTimeFilter(const ExecutionTimeFilter& value) { SetStartTimeFilter(value); return *this;} /** *

Workflow executions are included in the returned results based on whether * their start times are within the range specified by this filter.

*/ inline ListOpenWorkflowExecutionsRequest& WithStartTimeFilter(ExecutionTimeFilter&& value) { SetStartTimeFilter(std::move(value)); return *this;} /** *

If specified, only executions of the type specified in the filter are * returned.

executionFilter, typeFilter * and tagFilter are mutually exclusive. You can specify at most one * of these in a request.

*/ inline const WorkflowTypeFilter& GetTypeFilter() const{ return m_typeFilter; } /** *

If specified, only executions of the type specified in the filter are * returned.

executionFilter, typeFilter * and tagFilter are mutually exclusive. You can specify at most one * of these in a request.

*/ inline bool TypeFilterHasBeenSet() const { return m_typeFilterHasBeenSet; } /** *

If specified, only executions of the type specified in the filter are * returned.

executionFilter, typeFilter * and tagFilter are mutually exclusive. You can specify at most one * of these in a request.

*/ inline void SetTypeFilter(const WorkflowTypeFilter& value) { m_typeFilterHasBeenSet = true; m_typeFilter = value; } /** *

If specified, only executions of the type specified in the filter are * returned.

executionFilter, typeFilter * and tagFilter are mutually exclusive. You can specify at most one * of these in a request.

*/ inline void SetTypeFilter(WorkflowTypeFilter&& value) { m_typeFilterHasBeenSet = true; m_typeFilter = std::move(value); } /** *

If specified, only executions of the type specified in the filter are * returned.

executionFilter, typeFilter * and tagFilter are mutually exclusive. You can specify at most one * of these in a request.

*/ inline ListOpenWorkflowExecutionsRequest& WithTypeFilter(const WorkflowTypeFilter& value) { SetTypeFilter(value); return *this;} /** *

If specified, only executions of the type specified in the filter are * returned.

executionFilter, typeFilter * and tagFilter are mutually exclusive. You can specify at most one * of these in a request.

*/ inline ListOpenWorkflowExecutionsRequest& WithTypeFilter(WorkflowTypeFilter&& value) { SetTypeFilter(std::move(value)); return *this;} /** *

If specified, only executions that have the matching tag are listed.

*

executionFilter, typeFilter and * tagFilter are mutually exclusive. You can specify at most one of * these in a request.

*/ inline const TagFilter& GetTagFilter() const{ return m_tagFilter; } /** *

If specified, only executions that have the matching tag are listed.

*

executionFilter, typeFilter and * tagFilter are mutually exclusive. You can specify at most one of * these in a request.

*/ inline bool TagFilterHasBeenSet() const { return m_tagFilterHasBeenSet; } /** *

If specified, only executions that have the matching tag are listed.

*

executionFilter, typeFilter and * tagFilter are mutually exclusive. You can specify at most one of * these in a request.

*/ inline void SetTagFilter(const TagFilter& value) { m_tagFilterHasBeenSet = true; m_tagFilter = value; } /** *

If specified, only executions that have the matching tag are listed.

*

executionFilter, typeFilter and * tagFilter are mutually exclusive. You can specify at most one of * these in a request.

*/ inline void SetTagFilter(TagFilter&& value) { m_tagFilterHasBeenSet = true; m_tagFilter = std::move(value); } /** *

If specified, only executions that have the matching tag are listed.

*

executionFilter, typeFilter and * tagFilter are mutually exclusive. You can specify at most one of * these in a request.

*/ inline ListOpenWorkflowExecutionsRequest& WithTagFilter(const TagFilter& value) { SetTagFilter(value); return *this;} /** *

If specified, only executions that have the matching tag are listed.

*

executionFilter, typeFilter and * tagFilter are mutually exclusive. You can specify at most one of * these in a request.

*/ inline ListOpenWorkflowExecutionsRequest& WithTagFilter(TagFilter&& value) { SetTagFilter(std::move(value)); return *this;} /** *

If NextPageToken is returned there are more results available. * The value of NextPageToken is a unique pagination token for each * page. Make the call again using the returned token to retrieve the next page. * Keep all other arguments unchanged. Each pagination token expires after 24 * hours. Using an expired pagination token will return a 400 error: * "Specified token has exceeded its maximum lifetime".

The * configured maximumPageSize determines how many results can be * returned in a single call.

*/ inline const Aws::String& GetNextPageToken() const{ return m_nextPageToken; } /** *

If NextPageToken is returned there are more results available. * The value of NextPageToken is a unique pagination token for each * page. Make the call again using the returned token to retrieve the next page. * Keep all other arguments unchanged. Each pagination token expires after 24 * hours. Using an expired pagination token will return a 400 error: * "Specified token has exceeded its maximum lifetime".

The * configured maximumPageSize determines how many results can be * returned in a single call.

*/ inline bool NextPageTokenHasBeenSet() const { return m_nextPageTokenHasBeenSet; } /** *

If NextPageToken is returned there are more results available. * The value of NextPageToken is a unique pagination token for each * page. Make the call again using the returned token to retrieve the next page. * Keep all other arguments unchanged. Each pagination token expires after 24 * hours. Using an expired pagination token will return a 400 error: * "Specified token has exceeded its maximum lifetime".

The * configured maximumPageSize determines how many results can be * returned in a single call.

*/ inline void SetNextPageToken(const Aws::String& value) { m_nextPageTokenHasBeenSet = true; m_nextPageToken = value; } /** *

If NextPageToken is returned there are more results available. * The value of NextPageToken is a unique pagination token for each * page. Make the call again using the returned token to retrieve the next page. * Keep all other arguments unchanged. Each pagination token expires after 24 * hours. Using an expired pagination token will return a 400 error: * "Specified token has exceeded its maximum lifetime".

The * configured maximumPageSize determines how many results can be * returned in a single call.

*/ inline void SetNextPageToken(Aws::String&& value) { m_nextPageTokenHasBeenSet = true; m_nextPageToken = std::move(value); } /** *

If NextPageToken is returned there are more results available. * The value of NextPageToken is a unique pagination token for each * page. Make the call again using the returned token to retrieve the next page. * Keep all other arguments unchanged. Each pagination token expires after 24 * hours. Using an expired pagination token will return a 400 error: * "Specified token has exceeded its maximum lifetime".

The * configured maximumPageSize determines how many results can be * returned in a single call.

*/ inline void SetNextPageToken(const char* value) { m_nextPageTokenHasBeenSet = true; m_nextPageToken.assign(value); } /** *

If NextPageToken is returned there are more results available. * The value of NextPageToken is a unique pagination token for each * page. Make the call again using the returned token to retrieve the next page. * Keep all other arguments unchanged. Each pagination token expires after 24 * hours. Using an expired pagination token will return a 400 error: * "Specified token has exceeded its maximum lifetime".

The * configured maximumPageSize determines how many results can be * returned in a single call.

*/ inline ListOpenWorkflowExecutionsRequest& WithNextPageToken(const Aws::String& value) { SetNextPageToken(value); return *this;} /** *

If NextPageToken is returned there are more results available. * The value of NextPageToken is a unique pagination token for each * page. Make the call again using the returned token to retrieve the next page. * Keep all other arguments unchanged. Each pagination token expires after 24 * hours. Using an expired pagination token will return a 400 error: * "Specified token has exceeded its maximum lifetime".

The * configured maximumPageSize determines how many results can be * returned in a single call.

*/ inline ListOpenWorkflowExecutionsRequest& WithNextPageToken(Aws::String&& value) { SetNextPageToken(std::move(value)); return *this;} /** *

If NextPageToken is returned there are more results available. * The value of NextPageToken is a unique pagination token for each * page. Make the call again using the returned token to retrieve the next page. * Keep all other arguments unchanged. Each pagination token expires after 24 * hours. Using an expired pagination token will return a 400 error: * "Specified token has exceeded its maximum lifetime".

The * configured maximumPageSize determines how many results can be * returned in a single call.

*/ inline ListOpenWorkflowExecutionsRequest& WithNextPageToken(const char* value) { SetNextPageToken(value); return *this;} /** *

The maximum number of results that are returned per call. Use * nextPageToken to obtain further pages of results.

*/ inline int GetMaximumPageSize() const{ return m_maximumPageSize; } /** *

The maximum number of results that are returned per call. Use * nextPageToken to obtain further pages of results.

*/ inline bool MaximumPageSizeHasBeenSet() const { return m_maximumPageSizeHasBeenSet; } /** *

The maximum number of results that are returned per call. Use * nextPageToken to obtain further pages of results.

*/ inline void SetMaximumPageSize(int value) { m_maximumPageSizeHasBeenSet = true; m_maximumPageSize = value; } /** *

The maximum number of results that are returned per call. Use * nextPageToken to obtain further pages of results.

*/ inline ListOpenWorkflowExecutionsRequest& WithMaximumPageSize(int value) { SetMaximumPageSize(value); return *this;} /** *

When set to true, returns the results in reverse order. By * default the results are returned in descending order of the start time of the * executions.

*/ inline bool GetReverseOrder() const{ return m_reverseOrder; } /** *

When set to true, returns the results in reverse order. By * default the results are returned in descending order of the start time of the * executions.

*/ inline bool ReverseOrderHasBeenSet() const { return m_reverseOrderHasBeenSet; } /** *

When set to true, returns the results in reverse order. By * default the results are returned in descending order of the start time of the * executions.

*/ inline void SetReverseOrder(bool value) { m_reverseOrderHasBeenSet = true; m_reverseOrder = value; } /** *

When set to true, returns the results in reverse order. By * default the results are returned in descending order of the start time of the * executions.

*/ inline ListOpenWorkflowExecutionsRequest& WithReverseOrder(bool value) { SetReverseOrder(value); return *this;} /** *

If specified, only workflow executions matching the workflow ID specified in * the filter are returned.

executionFilter, * typeFilter and tagFilter are mutually exclusive. You * can specify at most one of these in a request.

*/ inline const WorkflowExecutionFilter& GetExecutionFilter() const{ return m_executionFilter; } /** *

If specified, only workflow executions matching the workflow ID specified in * the filter are returned.

executionFilter, * typeFilter and tagFilter are mutually exclusive. You * can specify at most one of these in a request.

*/ inline bool ExecutionFilterHasBeenSet() const { return m_executionFilterHasBeenSet; } /** *

If specified, only workflow executions matching the workflow ID specified in * the filter are returned.

executionFilter, * typeFilter and tagFilter are mutually exclusive. You * can specify at most one of these in a request.

*/ inline void SetExecutionFilter(const WorkflowExecutionFilter& value) { m_executionFilterHasBeenSet = true; m_executionFilter = value; } /** *

If specified, only workflow executions matching the workflow ID specified in * the filter are returned.

executionFilter, * typeFilter and tagFilter are mutually exclusive. You * can specify at most one of these in a request.

*/ inline void SetExecutionFilter(WorkflowExecutionFilter&& value) { m_executionFilterHasBeenSet = true; m_executionFilter = std::move(value); } /** *

If specified, only workflow executions matching the workflow ID specified in * the filter are returned.

executionFilter, * typeFilter and tagFilter are mutually exclusive. You * can specify at most one of these in a request.

*/ inline ListOpenWorkflowExecutionsRequest& WithExecutionFilter(const WorkflowExecutionFilter& value) { SetExecutionFilter(value); return *this;} /** *

If specified, only workflow executions matching the workflow ID specified in * the filter are returned.

executionFilter, * typeFilter and tagFilter are mutually exclusive. You * can specify at most one of these in a request.

*/ inline ListOpenWorkflowExecutionsRequest& WithExecutionFilter(WorkflowExecutionFilter&& value) { SetExecutionFilter(std::move(value)); return *this;} private: Aws::String m_domain; bool m_domainHasBeenSet = false; ExecutionTimeFilter m_startTimeFilter; bool m_startTimeFilterHasBeenSet = false; WorkflowTypeFilter m_typeFilter; bool m_typeFilterHasBeenSet = false; TagFilter m_tagFilter; bool m_tagFilterHasBeenSet = false; Aws::String m_nextPageToken; bool m_nextPageTokenHasBeenSet = false; int m_maximumPageSize; bool m_maximumPageSizeHasBeenSet = false; bool m_reverseOrder; bool m_reverseOrderHasBeenSet = false; WorkflowExecutionFilter m_executionFilter; bool m_executionFilterHasBeenSet = false; }; } // namespace Model } // namespace SWF } // namespace Aws