/** * 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 #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace CloudDirectory { namespace Model { /** *

Represents the output of a BatchRead success response * operation.

See Also:

AWS * API Reference

*/ class BatchReadSuccessfulResponse { public: AWS_CLOUDDIRECTORY_API BatchReadSuccessfulResponse(); AWS_CLOUDDIRECTORY_API BatchReadSuccessfulResponse(Aws::Utils::Json::JsonView jsonValue); AWS_CLOUDDIRECTORY_API BatchReadSuccessfulResponse& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_CLOUDDIRECTORY_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Lists all attributes that are associated with an object.

*/ inline const BatchListObjectAttributesResponse& GetListObjectAttributes() const{ return m_listObjectAttributes; } /** *

Lists all attributes that are associated with an object.

*/ inline bool ListObjectAttributesHasBeenSet() const { return m_listObjectAttributesHasBeenSet; } /** *

Lists all attributes that are associated with an object.

*/ inline void SetListObjectAttributes(const BatchListObjectAttributesResponse& value) { m_listObjectAttributesHasBeenSet = true; m_listObjectAttributes = value; } /** *

Lists all attributes that are associated with an object.

*/ inline void SetListObjectAttributes(BatchListObjectAttributesResponse&& value) { m_listObjectAttributesHasBeenSet = true; m_listObjectAttributes = std::move(value); } /** *

Lists all attributes that are associated with an object.

*/ inline BatchReadSuccessfulResponse& WithListObjectAttributes(const BatchListObjectAttributesResponse& value) { SetListObjectAttributes(value); return *this;} /** *

Lists all attributes that are associated with an object.

*/ inline BatchReadSuccessfulResponse& WithListObjectAttributes(BatchListObjectAttributesResponse&& value) { SetListObjectAttributes(std::move(value)); return *this;} /** *

Returns a paginated list of child objects that are associated with a given * object.

*/ inline const BatchListObjectChildrenResponse& GetListObjectChildren() const{ return m_listObjectChildren; } /** *

Returns a paginated list of child objects that are associated with a given * object.

*/ inline bool ListObjectChildrenHasBeenSet() const { return m_listObjectChildrenHasBeenSet; } /** *

Returns a paginated list of child objects that are associated with a given * object.

*/ inline void SetListObjectChildren(const BatchListObjectChildrenResponse& value) { m_listObjectChildrenHasBeenSet = true; m_listObjectChildren = value; } /** *

Returns a paginated list of child objects that are associated with a given * object.

*/ inline void SetListObjectChildren(BatchListObjectChildrenResponse&& value) { m_listObjectChildrenHasBeenSet = true; m_listObjectChildren = std::move(value); } /** *

Returns a paginated list of child objects that are associated with a given * object.

*/ inline BatchReadSuccessfulResponse& WithListObjectChildren(const BatchListObjectChildrenResponse& value) { SetListObjectChildren(value); return *this;} /** *

Returns a paginated list of child objects that are associated with a given * object.

*/ inline BatchReadSuccessfulResponse& WithListObjectChildren(BatchListObjectChildrenResponse&& value) { SetListObjectChildren(std::move(value)); return *this;} /** *

Retrieves metadata about an object.

*/ inline const BatchGetObjectInformationResponse& GetGetObjectInformation() const{ return m_getObjectInformation; } /** *

Retrieves metadata about an object.

*/ inline bool GetObjectInformationHasBeenSet() const { return m_getObjectInformationHasBeenSet; } /** *

Retrieves metadata about an object.

*/ inline void SetGetObjectInformation(const BatchGetObjectInformationResponse& value) { m_getObjectInformationHasBeenSet = true; m_getObjectInformation = value; } /** *

Retrieves metadata about an object.

*/ inline void SetGetObjectInformation(BatchGetObjectInformationResponse&& value) { m_getObjectInformationHasBeenSet = true; m_getObjectInformation = std::move(value); } /** *

Retrieves metadata about an object.

*/ inline BatchReadSuccessfulResponse& WithGetObjectInformation(const BatchGetObjectInformationResponse& value) { SetGetObjectInformation(value); return *this;} /** *

Retrieves metadata about an object.

*/ inline BatchReadSuccessfulResponse& WithGetObjectInformation(BatchGetObjectInformationResponse&& value) { SetGetObjectInformation(std::move(value)); return *this;} /** *

Retrieves attributes within a facet that are associated with an object.

*/ inline const BatchGetObjectAttributesResponse& GetGetObjectAttributes() const{ return m_getObjectAttributes; } /** *

Retrieves attributes within a facet that are associated with an object.

*/ inline bool GetObjectAttributesHasBeenSet() const { return m_getObjectAttributesHasBeenSet; } /** *

Retrieves attributes within a facet that are associated with an object.

*/ inline void SetGetObjectAttributes(const BatchGetObjectAttributesResponse& value) { m_getObjectAttributesHasBeenSet = true; m_getObjectAttributes = value; } /** *

Retrieves attributes within a facet that are associated with an object.

*/ inline void SetGetObjectAttributes(BatchGetObjectAttributesResponse&& value) { m_getObjectAttributesHasBeenSet = true; m_getObjectAttributes = std::move(value); } /** *

Retrieves attributes within a facet that are associated with an object.

*/ inline BatchReadSuccessfulResponse& WithGetObjectAttributes(const BatchGetObjectAttributesResponse& value) { SetGetObjectAttributes(value); return *this;} /** *

Retrieves attributes within a facet that are associated with an object.

*/ inline BatchReadSuccessfulResponse& WithGetObjectAttributes(BatchGetObjectAttributesResponse&& value) { SetGetObjectAttributes(std::move(value)); return *this;} /** *

Lists indices attached to an object.

*/ inline const BatchListAttachedIndicesResponse& GetListAttachedIndices() const{ return m_listAttachedIndices; } /** *

Lists indices attached to an object.

*/ inline bool ListAttachedIndicesHasBeenSet() const { return m_listAttachedIndicesHasBeenSet; } /** *

Lists indices attached to an object.

*/ inline void SetListAttachedIndices(const BatchListAttachedIndicesResponse& value) { m_listAttachedIndicesHasBeenSet = true; m_listAttachedIndices = value; } /** *

Lists indices attached to an object.

*/ inline void SetListAttachedIndices(BatchListAttachedIndicesResponse&& value) { m_listAttachedIndicesHasBeenSet = true; m_listAttachedIndices = std::move(value); } /** *

Lists indices attached to an object.

*/ inline BatchReadSuccessfulResponse& WithListAttachedIndices(const BatchListAttachedIndicesResponse& value) { SetListAttachedIndices(value); return *this;} /** *

Lists indices attached to an object.

*/ inline BatchReadSuccessfulResponse& WithListAttachedIndices(BatchListAttachedIndicesResponse&& value) { SetListAttachedIndices(std::move(value)); return *this;} /** *

Retrieves all available parent paths for any object type such as node, leaf * node, policy node, and index node objects. For more information about objects, * see Directory * Structure.

*/ inline const BatchListObjectParentPathsResponse& GetListObjectParentPaths() const{ return m_listObjectParentPaths; } /** *

Retrieves all available parent paths for any object type such as node, leaf * node, policy node, and index node objects. For more information about objects, * see Directory * Structure.

*/ inline bool ListObjectParentPathsHasBeenSet() const { return m_listObjectParentPathsHasBeenSet; } /** *

Retrieves all available parent paths for any object type such as node, leaf * node, policy node, and index node objects. For more information about objects, * see Directory * Structure.

*/ inline void SetListObjectParentPaths(const BatchListObjectParentPathsResponse& value) { m_listObjectParentPathsHasBeenSet = true; m_listObjectParentPaths = value; } /** *

Retrieves all available parent paths for any object type such as node, leaf * node, policy node, and index node objects. For more information about objects, * see Directory * Structure.

*/ inline void SetListObjectParentPaths(BatchListObjectParentPathsResponse&& value) { m_listObjectParentPathsHasBeenSet = true; m_listObjectParentPaths = std::move(value); } /** *

Retrieves all available parent paths for any object type such as node, leaf * node, policy node, and index node objects. For more information about objects, * see Directory * Structure.

*/ inline BatchReadSuccessfulResponse& WithListObjectParentPaths(const BatchListObjectParentPathsResponse& value) { SetListObjectParentPaths(value); return *this;} /** *

Retrieves all available parent paths for any object type such as node, leaf * node, policy node, and index node objects. For more information about objects, * see Directory * Structure.

*/ inline BatchReadSuccessfulResponse& WithListObjectParentPaths(BatchListObjectParentPathsResponse&& value) { SetListObjectParentPaths(std::move(value)); return *this;} /** *

Returns policies attached to an object in pagination fashion.

*/ inline const BatchListObjectPoliciesResponse& GetListObjectPolicies() const{ return m_listObjectPolicies; } /** *

Returns policies attached to an object in pagination fashion.

*/ inline bool ListObjectPoliciesHasBeenSet() const { return m_listObjectPoliciesHasBeenSet; } /** *

Returns policies attached to an object in pagination fashion.

*/ inline void SetListObjectPolicies(const BatchListObjectPoliciesResponse& value) { m_listObjectPoliciesHasBeenSet = true; m_listObjectPolicies = value; } /** *

Returns policies attached to an object in pagination fashion.

*/ inline void SetListObjectPolicies(BatchListObjectPoliciesResponse&& value) { m_listObjectPoliciesHasBeenSet = true; m_listObjectPolicies = std::move(value); } /** *

Returns policies attached to an object in pagination fashion.

*/ inline BatchReadSuccessfulResponse& WithListObjectPolicies(const BatchListObjectPoliciesResponse& value) { SetListObjectPolicies(value); return *this;} /** *

Returns policies attached to an object in pagination fashion.

*/ inline BatchReadSuccessfulResponse& WithListObjectPolicies(BatchListObjectPoliciesResponse&& value) { SetListObjectPolicies(std::move(value)); return *this;} /** *

Returns all of the ObjectIdentifiers to which a given policy is * attached.

*/ inline const BatchListPolicyAttachmentsResponse& GetListPolicyAttachments() const{ return m_listPolicyAttachments; } /** *

Returns all of the ObjectIdentifiers to which a given policy is * attached.

*/ inline bool ListPolicyAttachmentsHasBeenSet() const { return m_listPolicyAttachmentsHasBeenSet; } /** *

Returns all of the ObjectIdentifiers to which a given policy is * attached.

*/ inline void SetListPolicyAttachments(const BatchListPolicyAttachmentsResponse& value) { m_listPolicyAttachmentsHasBeenSet = true; m_listPolicyAttachments = value; } /** *

Returns all of the ObjectIdentifiers to which a given policy is * attached.

*/ inline void SetListPolicyAttachments(BatchListPolicyAttachmentsResponse&& value) { m_listPolicyAttachmentsHasBeenSet = true; m_listPolicyAttachments = std::move(value); } /** *

Returns all of the ObjectIdentifiers to which a given policy is * attached.

*/ inline BatchReadSuccessfulResponse& WithListPolicyAttachments(const BatchListPolicyAttachmentsResponse& value) { SetListPolicyAttachments(value); return *this;} /** *

Returns all of the ObjectIdentifiers to which a given policy is * attached.

*/ inline BatchReadSuccessfulResponse& WithListPolicyAttachments(BatchListPolicyAttachmentsResponse&& value) { SetListPolicyAttachments(std::move(value)); return *this;} /** *

Lists all policies from the root of the Directory to the object * specified. If there are no policies present, an empty list is returned. If * policies are present, and if some objects don't have the policies attached, it * returns the ObjectIdentifier for such objects. If policies are * present, it returns ObjectIdentifier, policyId, and * policyType. Paths that don't lead to the root from the target * object are ignored. For more information, see Policies.

*/ inline const BatchLookupPolicyResponse& GetLookupPolicy() const{ return m_lookupPolicy; } /** *

Lists all policies from the root of the Directory to the object * specified. If there are no policies present, an empty list is returned. If * policies are present, and if some objects don't have the policies attached, it * returns the ObjectIdentifier for such objects. If policies are * present, it returns ObjectIdentifier, policyId, and * policyType. Paths that don't lead to the root from the target * object are ignored. For more information, see Policies.

*/ inline bool LookupPolicyHasBeenSet() const { return m_lookupPolicyHasBeenSet; } /** *

Lists all policies from the root of the Directory to the object * specified. If there are no policies present, an empty list is returned. If * policies are present, and if some objects don't have the policies attached, it * returns the ObjectIdentifier for such objects. If policies are * present, it returns ObjectIdentifier, policyId, and * policyType. Paths that don't lead to the root from the target * object are ignored. For more information, see Policies.

*/ inline void SetLookupPolicy(const BatchLookupPolicyResponse& value) { m_lookupPolicyHasBeenSet = true; m_lookupPolicy = value; } /** *

Lists all policies from the root of the Directory to the object * specified. If there are no policies present, an empty list is returned. If * policies are present, and if some objects don't have the policies attached, it * returns the ObjectIdentifier for such objects. If policies are * present, it returns ObjectIdentifier, policyId, and * policyType. Paths that don't lead to the root from the target * object are ignored. For more information, see Policies.

*/ inline void SetLookupPolicy(BatchLookupPolicyResponse&& value) { m_lookupPolicyHasBeenSet = true; m_lookupPolicy = std::move(value); } /** *

Lists all policies from the root of the Directory to the object * specified. If there are no policies present, an empty list is returned. If * policies are present, and if some objects don't have the policies attached, it * returns the ObjectIdentifier for such objects. If policies are * present, it returns ObjectIdentifier, policyId, and * policyType. Paths that don't lead to the root from the target * object are ignored. For more information, see Policies.

*/ inline BatchReadSuccessfulResponse& WithLookupPolicy(const BatchLookupPolicyResponse& value) { SetLookupPolicy(value); return *this;} /** *

Lists all policies from the root of the Directory to the object * specified. If there are no policies present, an empty list is returned. If * policies are present, and if some objects don't have the policies attached, it * returns the ObjectIdentifier for such objects. If policies are * present, it returns ObjectIdentifier, policyId, and * policyType. Paths that don't lead to the root from the target * object are ignored. For more information, see Policies.

*/ inline BatchReadSuccessfulResponse& WithLookupPolicy(BatchLookupPolicyResponse&& value) { SetLookupPolicy(std::move(value)); return *this;} /** *

Lists objects attached to the specified index.

*/ inline const BatchListIndexResponse& GetListIndex() const{ return m_listIndex; } /** *

Lists objects attached to the specified index.

*/ inline bool ListIndexHasBeenSet() const { return m_listIndexHasBeenSet; } /** *

Lists objects attached to the specified index.

*/ inline void SetListIndex(const BatchListIndexResponse& value) { m_listIndexHasBeenSet = true; m_listIndex = value; } /** *

Lists objects attached to the specified index.

*/ inline void SetListIndex(BatchListIndexResponse&& value) { m_listIndexHasBeenSet = true; m_listIndex = std::move(value); } /** *

Lists objects attached to the specified index.

*/ inline BatchReadSuccessfulResponse& WithListIndex(const BatchListIndexResponse& value) { SetListIndex(value); return *this;} /** *

Lists objects attached to the specified index.

*/ inline BatchReadSuccessfulResponse& WithListIndex(BatchListIndexResponse&& value) { SetListIndex(std::move(value)); return *this;} /** *

Returns a paginated list of all the outgoing TypedLinkSpecifier * information for an object. It also supports filtering by typed link facet and * identity attributes. For more information, see Typed * Links.

*/ inline const BatchListOutgoingTypedLinksResponse& GetListOutgoingTypedLinks() const{ return m_listOutgoingTypedLinks; } /** *

Returns a paginated list of all the outgoing TypedLinkSpecifier * information for an object. It also supports filtering by typed link facet and * identity attributes. For more information, see Typed * Links.

*/ inline bool ListOutgoingTypedLinksHasBeenSet() const { return m_listOutgoingTypedLinksHasBeenSet; } /** *

Returns a paginated list of all the outgoing TypedLinkSpecifier * information for an object. It also supports filtering by typed link facet and * identity attributes. For more information, see Typed * Links.

*/ inline void SetListOutgoingTypedLinks(const BatchListOutgoingTypedLinksResponse& value) { m_listOutgoingTypedLinksHasBeenSet = true; m_listOutgoingTypedLinks = value; } /** *

Returns a paginated list of all the outgoing TypedLinkSpecifier * information for an object. It also supports filtering by typed link facet and * identity attributes. For more information, see Typed * Links.

*/ inline void SetListOutgoingTypedLinks(BatchListOutgoingTypedLinksResponse&& value) { m_listOutgoingTypedLinksHasBeenSet = true; m_listOutgoingTypedLinks = std::move(value); } /** *

Returns a paginated list of all the outgoing TypedLinkSpecifier * information for an object. It also supports filtering by typed link facet and * identity attributes. For more information, see Typed * Links.

*/ inline BatchReadSuccessfulResponse& WithListOutgoingTypedLinks(const BatchListOutgoingTypedLinksResponse& value) { SetListOutgoingTypedLinks(value); return *this;} /** *

Returns a paginated list of all the outgoing TypedLinkSpecifier * information for an object. It also supports filtering by typed link facet and * identity attributes. For more information, see Typed * Links.

*/ inline BatchReadSuccessfulResponse& WithListOutgoingTypedLinks(BatchListOutgoingTypedLinksResponse&& value) { SetListOutgoingTypedLinks(std::move(value)); return *this;} /** *

Returns a paginated list of all the incoming TypedLinkSpecifier * information for an object. It also supports filtering by typed link facet and * identity attributes. For more information, see Typed * Links.

*/ inline const BatchListIncomingTypedLinksResponse& GetListIncomingTypedLinks() const{ return m_listIncomingTypedLinks; } /** *

Returns a paginated list of all the incoming TypedLinkSpecifier * information for an object. It also supports filtering by typed link facet and * identity attributes. For more information, see Typed * Links.

*/ inline bool ListIncomingTypedLinksHasBeenSet() const { return m_listIncomingTypedLinksHasBeenSet; } /** *

Returns a paginated list of all the incoming TypedLinkSpecifier * information for an object. It also supports filtering by typed link facet and * identity attributes. For more information, see Typed * Links.

*/ inline void SetListIncomingTypedLinks(const BatchListIncomingTypedLinksResponse& value) { m_listIncomingTypedLinksHasBeenSet = true; m_listIncomingTypedLinks = value; } /** *

Returns a paginated list of all the incoming TypedLinkSpecifier * information for an object. It also supports filtering by typed link facet and * identity attributes. For more information, see Typed * Links.

*/ inline void SetListIncomingTypedLinks(BatchListIncomingTypedLinksResponse&& value) { m_listIncomingTypedLinksHasBeenSet = true; m_listIncomingTypedLinks = std::move(value); } /** *

Returns a paginated list of all the incoming TypedLinkSpecifier * information for an object. It also supports filtering by typed link facet and * identity attributes. For more information, see Typed * Links.

*/ inline BatchReadSuccessfulResponse& WithListIncomingTypedLinks(const BatchListIncomingTypedLinksResponse& value) { SetListIncomingTypedLinks(value); return *this;} /** *

Returns a paginated list of all the incoming TypedLinkSpecifier * information for an object. It also supports filtering by typed link facet and * identity attributes. For more information, see Typed * Links.

*/ inline BatchReadSuccessfulResponse& WithListIncomingTypedLinks(BatchListIncomingTypedLinksResponse&& value) { SetListIncomingTypedLinks(std::move(value)); return *this;} /** *

The list of attributes to retrieve from the typed link.

*/ inline const BatchGetLinkAttributesResponse& GetGetLinkAttributes() const{ return m_getLinkAttributes; } /** *

The list of attributes to retrieve from the typed link.

*/ inline bool GetLinkAttributesHasBeenSet() const { return m_getLinkAttributesHasBeenSet; } /** *

The list of attributes to retrieve from the typed link.

*/ inline void SetGetLinkAttributes(const BatchGetLinkAttributesResponse& value) { m_getLinkAttributesHasBeenSet = true; m_getLinkAttributes = value; } /** *

The list of attributes to retrieve from the typed link.

*/ inline void SetGetLinkAttributes(BatchGetLinkAttributesResponse&& value) { m_getLinkAttributesHasBeenSet = true; m_getLinkAttributes = std::move(value); } /** *

The list of attributes to retrieve from the typed link.

*/ inline BatchReadSuccessfulResponse& WithGetLinkAttributes(const BatchGetLinkAttributesResponse& value) { SetGetLinkAttributes(value); return *this;} /** *

The list of attributes to retrieve from the typed link.

*/ inline BatchReadSuccessfulResponse& WithGetLinkAttributes(BatchGetLinkAttributesResponse&& value) { SetGetLinkAttributes(std::move(value)); return *this;} /** *

The list of parent objects to retrieve.

*/ inline const BatchListObjectParentsResponse& GetListObjectParents() const{ return m_listObjectParents; } /** *

The list of parent objects to retrieve.

*/ inline bool ListObjectParentsHasBeenSet() const { return m_listObjectParentsHasBeenSet; } /** *

The list of parent objects to retrieve.

*/ inline void SetListObjectParents(const BatchListObjectParentsResponse& value) { m_listObjectParentsHasBeenSet = true; m_listObjectParents = value; } /** *

The list of parent objects to retrieve.

*/ inline void SetListObjectParents(BatchListObjectParentsResponse&& value) { m_listObjectParentsHasBeenSet = true; m_listObjectParents = std::move(value); } /** *

The list of parent objects to retrieve.

*/ inline BatchReadSuccessfulResponse& WithListObjectParents(const BatchListObjectParentsResponse& value) { SetListObjectParents(value); return *this;} /** *

The list of parent objects to retrieve.

*/ inline BatchReadSuccessfulResponse& WithListObjectParents(BatchListObjectParentsResponse&& value) { SetListObjectParents(std::move(value)); return *this;} private: BatchListObjectAttributesResponse m_listObjectAttributes; bool m_listObjectAttributesHasBeenSet = false; BatchListObjectChildrenResponse m_listObjectChildren; bool m_listObjectChildrenHasBeenSet = false; BatchGetObjectInformationResponse m_getObjectInformation; bool m_getObjectInformationHasBeenSet = false; BatchGetObjectAttributesResponse m_getObjectAttributes; bool m_getObjectAttributesHasBeenSet = false; BatchListAttachedIndicesResponse m_listAttachedIndices; bool m_listAttachedIndicesHasBeenSet = false; BatchListObjectParentPathsResponse m_listObjectParentPaths; bool m_listObjectParentPathsHasBeenSet = false; BatchListObjectPoliciesResponse m_listObjectPolicies; bool m_listObjectPoliciesHasBeenSet = false; BatchListPolicyAttachmentsResponse m_listPolicyAttachments; bool m_listPolicyAttachmentsHasBeenSet = false; BatchLookupPolicyResponse m_lookupPolicy; bool m_lookupPolicyHasBeenSet = false; BatchListIndexResponse m_listIndex; bool m_listIndexHasBeenSet = false; BatchListOutgoingTypedLinksResponse m_listOutgoingTypedLinks; bool m_listOutgoingTypedLinksHasBeenSet = false; BatchListIncomingTypedLinksResponse m_listIncomingTypedLinks; bool m_listIncomingTypedLinksHasBeenSet = false; BatchGetLinkAttributesResponse m_getLinkAttributes; bool m_getLinkAttributesHasBeenSet = false; BatchListObjectParentsResponse m_listObjectParents; bool m_listObjectParentsHasBeenSet = false; }; } // namespace Model } // namespace CloudDirectory } // namespace Aws