/** * 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 #include namespace Aws { namespace SWF { namespace Model { /** */ class CountClosedWorkflowExecutionsRequest : public SWFRequest { public: AWS_SWF_API CountClosedWorkflowExecutionsRequest(); // 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 "CountClosedWorkflowExecutions"; } AWS_SWF_API Aws::String SerializePayload() const override; AWS_SWF_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name of the domain containing the workflow executions to count.

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

The name of the domain containing the workflow executions to count.

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

The name of the domain containing the workflow executions to count.

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

The name of the domain containing the workflow executions to count.

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

The name of the domain containing the workflow executions to count.

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

The name of the domain containing the workflow executions to count.

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

The name of the domain containing the workflow executions to count.

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

The name of the domain containing the workflow executions to count.

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

If specified, only workflow executions that meet the start time criteria of * the filter are counted.

startTimeFilter and * closeTimeFilter are mutually exclusive. You must specify one of * these in a request but not both.

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

If specified, only workflow executions that meet the start time criteria of * the filter are counted.

startTimeFilter and * closeTimeFilter are mutually exclusive. You must specify one of * these in a request but not both.

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

If specified, only workflow executions that meet the start time criteria of * the filter are counted.

startTimeFilter and * closeTimeFilter are mutually exclusive. You must specify one of * these in a request but not both.

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

If specified, only workflow executions that meet the start time criteria of * the filter are counted.

startTimeFilter and * closeTimeFilter are mutually exclusive. You must specify one of * these in a request but not both.

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

If specified, only workflow executions that meet the start time criteria of * the filter are counted.

startTimeFilter and * closeTimeFilter are mutually exclusive. You must specify one of * these in a request but not both.

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

If specified, only workflow executions that meet the start time criteria of * the filter are counted.

startTimeFilter and * closeTimeFilter are mutually exclusive. You must specify one of * these in a request but not both.

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

If specified, only workflow executions that meet the close time criteria of * the filter are counted.

startTimeFilter and * closeTimeFilter are mutually exclusive. You must specify one of * these in a request but not both.

*/ inline const ExecutionTimeFilter& GetCloseTimeFilter() const{ return m_closeTimeFilter; } /** *

If specified, only workflow executions that meet the close time criteria of * the filter are counted.

startTimeFilter and * closeTimeFilter are mutually exclusive. You must specify one of * these in a request but not both.

*/ inline bool CloseTimeFilterHasBeenSet() const { return m_closeTimeFilterHasBeenSet; } /** *

If specified, only workflow executions that meet the close time criteria of * the filter are counted.

startTimeFilter and * closeTimeFilter are mutually exclusive. You must specify one of * these in a request but not both.

*/ inline void SetCloseTimeFilter(const ExecutionTimeFilter& value) { m_closeTimeFilterHasBeenSet = true; m_closeTimeFilter = value; } /** *

If specified, only workflow executions that meet the close time criteria of * the filter are counted.

startTimeFilter and * closeTimeFilter are mutually exclusive. You must specify one of * these in a request but not both.

*/ inline void SetCloseTimeFilter(ExecutionTimeFilter&& value) { m_closeTimeFilterHasBeenSet = true; m_closeTimeFilter = std::move(value); } /** *

If specified, only workflow executions that meet the close time criteria of * the filter are counted.

startTimeFilter and * closeTimeFilter are mutually exclusive. You must specify one of * these in a request but not both.

*/ inline CountClosedWorkflowExecutionsRequest& WithCloseTimeFilter(const ExecutionTimeFilter& value) { SetCloseTimeFilter(value); return *this;} /** *

If specified, only workflow executions that meet the close time criteria of * the filter are counted.

startTimeFilter and * closeTimeFilter are mutually exclusive. You must specify one of * these in a request but not both.

*/ inline CountClosedWorkflowExecutionsRequest& WithCloseTimeFilter(ExecutionTimeFilter&& value) { SetCloseTimeFilter(std::move(value)); return *this;} /** *

If specified, only workflow executions matching the WorkflowId * in the filter are counted.

closeStatusFilter, * 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 WorkflowId * in the filter are counted.

closeStatusFilter, * 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 WorkflowId * in the filter are counted.

closeStatusFilter, * 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 WorkflowId * in the filter are counted.

closeStatusFilter, * 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 WorkflowId * in the filter are counted.

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

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

If specified, only workflow executions matching the WorkflowId * in the filter are counted.

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

* */ inline CountClosedWorkflowExecutionsRequest& WithExecutionFilter(WorkflowExecutionFilter&& value) { SetExecutionFilter(std::move(value)); return *this;} /** *

If specified, indicates the type of the workflow executions to be * counted.

closeStatusFilter, * 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, indicates the type of the workflow executions to be * counted.

closeStatusFilter, * 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, indicates the type of the workflow executions to be * counted.

closeStatusFilter, * 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, indicates the type of the workflow executions to be * counted.

closeStatusFilter, * 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, indicates the type of the workflow executions to be * counted.

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

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

If specified, indicates the type of the workflow executions to be * counted.

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

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

If specified, only executions that have a tag that matches the filter are * counted.

closeStatusFilter, * 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 a tag that matches the filter are * counted.

closeStatusFilter, * 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 a tag that matches the filter are * counted.

closeStatusFilter, * 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 a tag that matches the filter are * counted.

closeStatusFilter, * 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 a tag that matches the filter are * counted.

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

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

If specified, only executions that have a tag that matches the filter are * counted.

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

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

If specified, only workflow executions that match this close status are * counted. This filter has an affect only if executionStatus is * specified as CLOSED.

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

* */ inline const CloseStatusFilter& GetCloseStatusFilter() const{ return m_closeStatusFilter; } /** *

If specified, only workflow executions that match this close status are * counted. This filter has an affect only if executionStatus is * specified as CLOSED.

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

* */ inline bool CloseStatusFilterHasBeenSet() const { return m_closeStatusFilterHasBeenSet; } /** *

If specified, only workflow executions that match this close status are * counted. This filter has an affect only if executionStatus is * specified as CLOSED.

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

* */ inline void SetCloseStatusFilter(const CloseStatusFilter& value) { m_closeStatusFilterHasBeenSet = true; m_closeStatusFilter = value; } /** *

If specified, only workflow executions that match this close status are * counted. This filter has an affect only if executionStatus is * specified as CLOSED.

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

* */ inline void SetCloseStatusFilter(CloseStatusFilter&& value) { m_closeStatusFilterHasBeenSet = true; m_closeStatusFilter = std::move(value); } /** *

If specified, only workflow executions that match this close status are * counted. This filter has an affect only if executionStatus is * specified as CLOSED.

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

* */ inline CountClosedWorkflowExecutionsRequest& WithCloseStatusFilter(const CloseStatusFilter& value) { SetCloseStatusFilter(value); return *this;} /** *

If specified, only workflow executions that match this close status are * counted. This filter has an affect only if executionStatus is * specified as CLOSED.

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

* */ inline CountClosedWorkflowExecutionsRequest& WithCloseStatusFilter(CloseStatusFilter&& value) { SetCloseStatusFilter(std::move(value)); return *this;} private: Aws::String m_domain; bool m_domainHasBeenSet = false; ExecutionTimeFilter m_startTimeFilter; bool m_startTimeFilterHasBeenSet = false; ExecutionTimeFilter m_closeTimeFilter; bool m_closeTimeFilterHasBeenSet = false; WorkflowExecutionFilter m_executionFilter; bool m_executionFilterHasBeenSet = false; WorkflowTypeFilter m_typeFilter; bool m_typeFilterHasBeenSet = false; TagFilter m_tagFilter; bool m_tagFilterHasBeenSet = false; CloseStatusFilter m_closeStatusFilter; bool m_closeStatusFilterHasBeenSet = false; }; } // namespace Model } // namespace SWF } // namespace Aws