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

The name of the SSM document.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the SSM document.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the SSM document.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the SSM document.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the SSM document.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the SSM document.

*/ inline DescribeAssociationRequest& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the SSM document.

*/ inline DescribeAssociationRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the SSM document.

*/ inline DescribeAssociationRequest& WithName(const char* value) { SetName(value); return *this;} /** *

The managed node ID.

*/ inline const Aws::String& GetInstanceId() const{ return m_instanceId; } /** *

The managed node ID.

*/ inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; } /** *

The managed node ID.

*/ inline void SetInstanceId(const Aws::String& value) { m_instanceIdHasBeenSet = true; m_instanceId = value; } /** *

The managed node ID.

*/ inline void SetInstanceId(Aws::String&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::move(value); } /** *

The managed node ID.

*/ inline void SetInstanceId(const char* value) { m_instanceIdHasBeenSet = true; m_instanceId.assign(value); } /** *

The managed node ID.

*/ inline DescribeAssociationRequest& WithInstanceId(const Aws::String& value) { SetInstanceId(value); return *this;} /** *

The managed node ID.

*/ inline DescribeAssociationRequest& WithInstanceId(Aws::String&& value) { SetInstanceId(std::move(value)); return *this;} /** *

The managed node ID.

*/ inline DescribeAssociationRequest& WithInstanceId(const char* value) { SetInstanceId(value); return *this;} /** *

The association ID for which you want information.

*/ inline const Aws::String& GetAssociationId() const{ return m_associationId; } /** *

The association ID for which you want information.

*/ inline bool AssociationIdHasBeenSet() const { return m_associationIdHasBeenSet; } /** *

The association ID for which you want information.

*/ inline void SetAssociationId(const Aws::String& value) { m_associationIdHasBeenSet = true; m_associationId = value; } /** *

The association ID for which you want information.

*/ inline void SetAssociationId(Aws::String&& value) { m_associationIdHasBeenSet = true; m_associationId = std::move(value); } /** *

The association ID for which you want information.

*/ inline void SetAssociationId(const char* value) { m_associationIdHasBeenSet = true; m_associationId.assign(value); } /** *

The association ID for which you want information.

*/ inline DescribeAssociationRequest& WithAssociationId(const Aws::String& value) { SetAssociationId(value); return *this;} /** *

The association ID for which you want information.

*/ inline DescribeAssociationRequest& WithAssociationId(Aws::String&& value) { SetAssociationId(std::move(value)); return *this;} /** *

The association ID for which you want information.

*/ inline DescribeAssociationRequest& WithAssociationId(const char* value) { SetAssociationId(value); return *this;} /** *

Specify the association version to retrieve. To view the latest version, * either specify $LATEST for this parameter, or omit this parameter. * To view a list of all associations for a managed node, use * ListAssociations. To get a list of versions for a specific association, * use ListAssociationVersions.

*/ inline const Aws::String& GetAssociationVersion() const{ return m_associationVersion; } /** *

Specify the association version to retrieve. To view the latest version, * either specify $LATEST for this parameter, or omit this parameter. * To view a list of all associations for a managed node, use * ListAssociations. To get a list of versions for a specific association, * use ListAssociationVersions.

*/ inline bool AssociationVersionHasBeenSet() const { return m_associationVersionHasBeenSet; } /** *

Specify the association version to retrieve. To view the latest version, * either specify $LATEST for this parameter, or omit this parameter. * To view a list of all associations for a managed node, use * ListAssociations. To get a list of versions for a specific association, * use ListAssociationVersions.

*/ inline void SetAssociationVersion(const Aws::String& value) { m_associationVersionHasBeenSet = true; m_associationVersion = value; } /** *

Specify the association version to retrieve. To view the latest version, * either specify $LATEST for this parameter, or omit this parameter. * To view a list of all associations for a managed node, use * ListAssociations. To get a list of versions for a specific association, * use ListAssociationVersions.

*/ inline void SetAssociationVersion(Aws::String&& value) { m_associationVersionHasBeenSet = true; m_associationVersion = std::move(value); } /** *

Specify the association version to retrieve. To view the latest version, * either specify $LATEST for this parameter, or omit this parameter. * To view a list of all associations for a managed node, use * ListAssociations. To get a list of versions for a specific association, * use ListAssociationVersions.

*/ inline void SetAssociationVersion(const char* value) { m_associationVersionHasBeenSet = true; m_associationVersion.assign(value); } /** *

Specify the association version to retrieve. To view the latest version, * either specify $LATEST for this parameter, or omit this parameter. * To view a list of all associations for a managed node, use * ListAssociations. To get a list of versions for a specific association, * use ListAssociationVersions.

*/ inline DescribeAssociationRequest& WithAssociationVersion(const Aws::String& value) { SetAssociationVersion(value); return *this;} /** *

Specify the association version to retrieve. To view the latest version, * either specify $LATEST for this parameter, or omit this parameter. * To view a list of all associations for a managed node, use * ListAssociations. To get a list of versions for a specific association, * use ListAssociationVersions.

*/ inline DescribeAssociationRequest& WithAssociationVersion(Aws::String&& value) { SetAssociationVersion(std::move(value)); return *this;} /** *

Specify the association version to retrieve. To view the latest version, * either specify $LATEST for this parameter, or omit this parameter. * To view a list of all associations for a managed node, use * ListAssociations. To get a list of versions for a specific association, * use ListAssociationVersions.

*/ inline DescribeAssociationRequest& WithAssociationVersion(const char* value) { SetAssociationVersion(value); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_instanceId; bool m_instanceIdHasBeenSet = false; Aws::String m_associationId; bool m_associationIdHasBeenSet = false; Aws::String m_associationVersion; bool m_associationVersionHasBeenSet = false; }; } // namespace Model } // namespace SSM } // namespace Aws