/** * 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 EMR { namespace Model { /** *

This input determines which instances to list.

See Also:

AWS * API Reference

*/ class ListInstancesRequest : public EMRRequest { public: AWS_EMR_API ListInstancesRequest(); // 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 "ListInstances"; } AWS_EMR_API Aws::String SerializePayload() const override; AWS_EMR_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The identifier of the cluster for which to list the instances.

*/ inline const Aws::String& GetClusterId() const{ return m_clusterId; } /** *

The identifier of the cluster for which to list the instances.

*/ inline bool ClusterIdHasBeenSet() const { return m_clusterIdHasBeenSet; } /** *

The identifier of the cluster for which to list the instances.

*/ inline void SetClusterId(const Aws::String& value) { m_clusterIdHasBeenSet = true; m_clusterId = value; } /** *

The identifier of the cluster for which to list the instances.

*/ inline void SetClusterId(Aws::String&& value) { m_clusterIdHasBeenSet = true; m_clusterId = std::move(value); } /** *

The identifier of the cluster for which to list the instances.

*/ inline void SetClusterId(const char* value) { m_clusterIdHasBeenSet = true; m_clusterId.assign(value); } /** *

The identifier of the cluster for which to list the instances.

*/ inline ListInstancesRequest& WithClusterId(const Aws::String& value) { SetClusterId(value); return *this;} /** *

The identifier of the cluster for which to list the instances.

*/ inline ListInstancesRequest& WithClusterId(Aws::String&& value) { SetClusterId(std::move(value)); return *this;} /** *

The identifier of the cluster for which to list the instances.

*/ inline ListInstancesRequest& WithClusterId(const char* value) { SetClusterId(value); return *this;} /** *

The identifier of the instance group for which to list the instances.

*/ inline const Aws::String& GetInstanceGroupId() const{ return m_instanceGroupId; } /** *

The identifier of the instance group for which to list the instances.

*/ inline bool InstanceGroupIdHasBeenSet() const { return m_instanceGroupIdHasBeenSet; } /** *

The identifier of the instance group for which to list the instances.

*/ inline void SetInstanceGroupId(const Aws::String& value) { m_instanceGroupIdHasBeenSet = true; m_instanceGroupId = value; } /** *

The identifier of the instance group for which to list the instances.

*/ inline void SetInstanceGroupId(Aws::String&& value) { m_instanceGroupIdHasBeenSet = true; m_instanceGroupId = std::move(value); } /** *

The identifier of the instance group for which to list the instances.

*/ inline void SetInstanceGroupId(const char* value) { m_instanceGroupIdHasBeenSet = true; m_instanceGroupId.assign(value); } /** *

The identifier of the instance group for which to list the instances.

*/ inline ListInstancesRequest& WithInstanceGroupId(const Aws::String& value) { SetInstanceGroupId(value); return *this;} /** *

The identifier of the instance group for which to list the instances.

*/ inline ListInstancesRequest& WithInstanceGroupId(Aws::String&& value) { SetInstanceGroupId(std::move(value)); return *this;} /** *

The identifier of the instance group for which to list the instances.

*/ inline ListInstancesRequest& WithInstanceGroupId(const char* value) { SetInstanceGroupId(value); return *this;} /** *

The type of instance group for which to list the instances.

*/ inline const Aws::Vector& GetInstanceGroupTypes() const{ return m_instanceGroupTypes; } /** *

The type of instance group for which to list the instances.

*/ inline bool InstanceGroupTypesHasBeenSet() const { return m_instanceGroupTypesHasBeenSet; } /** *

The type of instance group for which to list the instances.

*/ inline void SetInstanceGroupTypes(const Aws::Vector& value) { m_instanceGroupTypesHasBeenSet = true; m_instanceGroupTypes = value; } /** *

The type of instance group for which to list the instances.

*/ inline void SetInstanceGroupTypes(Aws::Vector&& value) { m_instanceGroupTypesHasBeenSet = true; m_instanceGroupTypes = std::move(value); } /** *

The type of instance group for which to list the instances.

*/ inline ListInstancesRequest& WithInstanceGroupTypes(const Aws::Vector& value) { SetInstanceGroupTypes(value); return *this;} /** *

The type of instance group for which to list the instances.

*/ inline ListInstancesRequest& WithInstanceGroupTypes(Aws::Vector&& value) { SetInstanceGroupTypes(std::move(value)); return *this;} /** *

The type of instance group for which to list the instances.

*/ inline ListInstancesRequest& AddInstanceGroupTypes(const InstanceGroupType& value) { m_instanceGroupTypesHasBeenSet = true; m_instanceGroupTypes.push_back(value); return *this; } /** *

The type of instance group for which to list the instances.

*/ inline ListInstancesRequest& AddInstanceGroupTypes(InstanceGroupType&& value) { m_instanceGroupTypesHasBeenSet = true; m_instanceGroupTypes.push_back(std::move(value)); return *this; } /** *

The unique identifier of the instance fleet.

*/ inline const Aws::String& GetInstanceFleetId() const{ return m_instanceFleetId; } /** *

The unique identifier of the instance fleet.

*/ inline bool InstanceFleetIdHasBeenSet() const { return m_instanceFleetIdHasBeenSet; } /** *

The unique identifier of the instance fleet.

*/ inline void SetInstanceFleetId(const Aws::String& value) { m_instanceFleetIdHasBeenSet = true; m_instanceFleetId = value; } /** *

The unique identifier of the instance fleet.

*/ inline void SetInstanceFleetId(Aws::String&& value) { m_instanceFleetIdHasBeenSet = true; m_instanceFleetId = std::move(value); } /** *

The unique identifier of the instance fleet.

*/ inline void SetInstanceFleetId(const char* value) { m_instanceFleetIdHasBeenSet = true; m_instanceFleetId.assign(value); } /** *

The unique identifier of the instance fleet.

*/ inline ListInstancesRequest& WithInstanceFleetId(const Aws::String& value) { SetInstanceFleetId(value); return *this;} /** *

The unique identifier of the instance fleet.

*/ inline ListInstancesRequest& WithInstanceFleetId(Aws::String&& value) { SetInstanceFleetId(std::move(value)); return *this;} /** *

The unique identifier of the instance fleet.

*/ inline ListInstancesRequest& WithInstanceFleetId(const char* value) { SetInstanceFleetId(value); return *this;} /** *

The node type of the instance fleet. For example MASTER, CORE, or TASK.

*/ inline const InstanceFleetType& GetInstanceFleetType() const{ return m_instanceFleetType; } /** *

The node type of the instance fleet. For example MASTER, CORE, or TASK.

*/ inline bool InstanceFleetTypeHasBeenSet() const { return m_instanceFleetTypeHasBeenSet; } /** *

The node type of the instance fleet. For example MASTER, CORE, or TASK.

*/ inline void SetInstanceFleetType(const InstanceFleetType& value) { m_instanceFleetTypeHasBeenSet = true; m_instanceFleetType = value; } /** *

The node type of the instance fleet. For example MASTER, CORE, or TASK.

*/ inline void SetInstanceFleetType(InstanceFleetType&& value) { m_instanceFleetTypeHasBeenSet = true; m_instanceFleetType = std::move(value); } /** *

The node type of the instance fleet. For example MASTER, CORE, or TASK.

*/ inline ListInstancesRequest& WithInstanceFleetType(const InstanceFleetType& value) { SetInstanceFleetType(value); return *this;} /** *

The node type of the instance fleet. For example MASTER, CORE, or TASK.

*/ inline ListInstancesRequest& WithInstanceFleetType(InstanceFleetType&& value) { SetInstanceFleetType(std::move(value)); return *this;} /** *

A list of instance states that will filter the instances returned with this * request.

*/ inline const Aws::Vector& GetInstanceStates() const{ return m_instanceStates; } /** *

A list of instance states that will filter the instances returned with this * request.

*/ inline bool InstanceStatesHasBeenSet() const { return m_instanceStatesHasBeenSet; } /** *

A list of instance states that will filter the instances returned with this * request.

*/ inline void SetInstanceStates(const Aws::Vector& value) { m_instanceStatesHasBeenSet = true; m_instanceStates = value; } /** *

A list of instance states that will filter the instances returned with this * request.

*/ inline void SetInstanceStates(Aws::Vector&& value) { m_instanceStatesHasBeenSet = true; m_instanceStates = std::move(value); } /** *

A list of instance states that will filter the instances returned with this * request.

*/ inline ListInstancesRequest& WithInstanceStates(const Aws::Vector& value) { SetInstanceStates(value); return *this;} /** *

A list of instance states that will filter the instances returned with this * request.

*/ inline ListInstancesRequest& WithInstanceStates(Aws::Vector&& value) { SetInstanceStates(std::move(value)); return *this;} /** *

A list of instance states that will filter the instances returned with this * request.

*/ inline ListInstancesRequest& AddInstanceStates(const InstanceState& value) { m_instanceStatesHasBeenSet = true; m_instanceStates.push_back(value); return *this; } /** *

A list of instance states that will filter the instances returned with this * request.

*/ inline ListInstancesRequest& AddInstanceStates(InstanceState&& value) { m_instanceStatesHasBeenSet = true; m_instanceStates.push_back(std::move(value)); return *this; } /** *

The pagination token that indicates the next set of results to retrieve.

*/ inline const Aws::String& GetMarker() const{ return m_marker; } /** *

The pagination token that indicates the next set of results to retrieve.

*/ inline bool MarkerHasBeenSet() const { return m_markerHasBeenSet; } /** *

The pagination token that indicates the next set of results to retrieve.

*/ inline void SetMarker(const Aws::String& value) { m_markerHasBeenSet = true; m_marker = value; } /** *

The pagination token that indicates the next set of results to retrieve.

*/ inline void SetMarker(Aws::String&& value) { m_markerHasBeenSet = true; m_marker = std::move(value); } /** *

The pagination token that indicates the next set of results to retrieve.

*/ inline void SetMarker(const char* value) { m_markerHasBeenSet = true; m_marker.assign(value); } /** *

The pagination token that indicates the next set of results to retrieve.

*/ inline ListInstancesRequest& WithMarker(const Aws::String& value) { SetMarker(value); return *this;} /** *

The pagination token that indicates the next set of results to retrieve.

*/ inline ListInstancesRequest& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;} /** *

The pagination token that indicates the next set of results to retrieve.

*/ inline ListInstancesRequest& WithMarker(const char* value) { SetMarker(value); return *this;} private: Aws::String m_clusterId; bool m_clusterIdHasBeenSet = false; Aws::String m_instanceGroupId; bool m_instanceGroupIdHasBeenSet = false; Aws::Vector m_instanceGroupTypes; bool m_instanceGroupTypesHasBeenSet = false; Aws::String m_instanceFleetId; bool m_instanceFleetIdHasBeenSet = false; InstanceFleetType m_instanceFleetType; bool m_instanceFleetTypeHasBeenSet = false; Aws::Vector m_instanceStates; bool m_instanceStatesHasBeenSet = false; Aws::String m_marker; bool m_markerHasBeenSet = false; }; } // namespace Model } // namespace EMR } // namespace Aws