{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.CloudDirectory.Types.BatchReadSuccessfulResponse
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.CloudDirectory.Types.BatchReadSuccessfulResponse where

import Amazonka.CloudDirectory.Types.BatchGetLinkAttributesResponse
import Amazonka.CloudDirectory.Types.BatchGetObjectAttributesResponse
import Amazonka.CloudDirectory.Types.BatchGetObjectInformationResponse
import Amazonka.CloudDirectory.Types.BatchListAttachedIndicesResponse
import Amazonka.CloudDirectory.Types.BatchListIncomingTypedLinksResponse
import Amazonka.CloudDirectory.Types.BatchListIndexResponse
import Amazonka.CloudDirectory.Types.BatchListObjectAttributesResponse
import Amazonka.CloudDirectory.Types.BatchListObjectChildrenResponse
import Amazonka.CloudDirectory.Types.BatchListObjectParentPathsResponse
import Amazonka.CloudDirectory.Types.BatchListObjectParentsResponse
import Amazonka.CloudDirectory.Types.BatchListObjectPoliciesResponse
import Amazonka.CloudDirectory.Types.BatchListOutgoingTypedLinksResponse
import Amazonka.CloudDirectory.Types.BatchListPolicyAttachmentsResponse
import Amazonka.CloudDirectory.Types.BatchLookupPolicyResponse
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude

-- | Represents the output of a @BatchRead@ success response operation.
--
-- /See:/ 'newBatchReadSuccessfulResponse' smart constructor.
data BatchReadSuccessfulResponse = BatchReadSuccessfulResponse'
  { -- | The list of attributes to retrieve from the typed link.
    BatchReadSuccessfulResponse -> Maybe BatchGetLinkAttributesResponse
getLinkAttributes :: Prelude.Maybe BatchGetLinkAttributesResponse,
    -- | Retrieves attributes within a facet that are associated with an object.
    BatchReadSuccessfulResponse
-> Maybe BatchGetObjectAttributesResponse
getObjectAttributes :: Prelude.Maybe BatchGetObjectAttributesResponse,
    -- | Retrieves metadata about an object.
    BatchReadSuccessfulResponse
-> Maybe BatchGetObjectInformationResponse
getObjectInformation :: Prelude.Maybe BatchGetObjectInformationResponse,
    -- | Lists indices attached to an object.
    BatchReadSuccessfulResponse
-> Maybe BatchListAttachedIndicesResponse
listAttachedIndices :: Prelude.Maybe BatchListAttachedIndicesResponse,
    -- | 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
    -- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/directory_objects_links.html#directory_objects_links_typedlink Typed Links>.
    BatchReadSuccessfulResponse
-> Maybe BatchListIncomingTypedLinksResponse
listIncomingTypedLinks :: Prelude.Maybe BatchListIncomingTypedLinksResponse,
    -- | Lists objects attached to the specified index.
    BatchReadSuccessfulResponse -> Maybe BatchListIndexResponse
listIndex :: Prelude.Maybe BatchListIndexResponse,
    -- | Lists all attributes that are associated with an object.
    BatchReadSuccessfulResponse
-> Maybe BatchListObjectAttributesResponse
listObjectAttributes :: Prelude.Maybe BatchListObjectAttributesResponse,
    -- | Returns a paginated list of child objects that are associated with a
    -- given object.
    BatchReadSuccessfulResponse
-> Maybe BatchListObjectChildrenResponse
listObjectChildren :: Prelude.Maybe BatchListObjectChildrenResponse,
    -- | 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
    -- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directorystructure.html Directory Structure>.
    BatchReadSuccessfulResponse
-> Maybe BatchListObjectParentPathsResponse
listObjectParentPaths :: Prelude.Maybe BatchListObjectParentPathsResponse,
    -- | The list of parent objects to retrieve.
    BatchReadSuccessfulResponse -> Maybe BatchListObjectParentsResponse
listObjectParents :: Prelude.Maybe BatchListObjectParentsResponse,
    -- | Returns policies attached to an object in pagination fashion.
    BatchReadSuccessfulResponse
-> Maybe BatchListObjectPoliciesResponse
listObjectPolicies :: Prelude.Maybe BatchListObjectPoliciesResponse,
    -- | 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
    -- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/directory_objects_links.html#directory_objects_links_typedlink Typed Links>.
    BatchReadSuccessfulResponse
-> Maybe BatchListOutgoingTypedLinksResponse
listOutgoingTypedLinks :: Prelude.Maybe BatchListOutgoingTypedLinksResponse,
    -- | Returns all of the @ObjectIdentifiers@ to which a given policy is
    -- attached.
    BatchReadSuccessfulResponse
-> Maybe BatchListPolicyAttachmentsResponse
listPolicyAttachments :: Prelude.Maybe BatchListPolicyAttachmentsResponse,
    -- | 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
    -- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directory.html#key_concepts_policies Policies>.
    BatchReadSuccessfulResponse -> Maybe BatchLookupPolicyResponse
lookupPolicy :: Prelude.Maybe BatchLookupPolicyResponse
  }
  deriving (BatchReadSuccessfulResponse -> BatchReadSuccessfulResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: BatchReadSuccessfulResponse -> BatchReadSuccessfulResponse -> Bool
$c/= :: BatchReadSuccessfulResponse -> BatchReadSuccessfulResponse -> Bool
== :: BatchReadSuccessfulResponse -> BatchReadSuccessfulResponse -> Bool
$c== :: BatchReadSuccessfulResponse -> BatchReadSuccessfulResponse -> Bool
Prelude.Eq, ReadPrec [BatchReadSuccessfulResponse]
ReadPrec BatchReadSuccessfulResponse
Int -> ReadS BatchReadSuccessfulResponse
ReadS [BatchReadSuccessfulResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [BatchReadSuccessfulResponse]
$creadListPrec :: ReadPrec [BatchReadSuccessfulResponse]
readPrec :: ReadPrec BatchReadSuccessfulResponse
$creadPrec :: ReadPrec BatchReadSuccessfulResponse
readList :: ReadS [BatchReadSuccessfulResponse]
$creadList :: ReadS [BatchReadSuccessfulResponse]
readsPrec :: Int -> ReadS BatchReadSuccessfulResponse
$creadsPrec :: Int -> ReadS BatchReadSuccessfulResponse
Prelude.Read, Int -> BatchReadSuccessfulResponse -> ShowS
[BatchReadSuccessfulResponse] -> ShowS
BatchReadSuccessfulResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [BatchReadSuccessfulResponse] -> ShowS
$cshowList :: [BatchReadSuccessfulResponse] -> ShowS
show :: BatchReadSuccessfulResponse -> String
$cshow :: BatchReadSuccessfulResponse -> String
showsPrec :: Int -> BatchReadSuccessfulResponse -> ShowS
$cshowsPrec :: Int -> BatchReadSuccessfulResponse -> ShowS
Prelude.Show, forall x.
Rep BatchReadSuccessfulResponse x -> BatchReadSuccessfulResponse
forall x.
BatchReadSuccessfulResponse -> Rep BatchReadSuccessfulResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep BatchReadSuccessfulResponse x -> BatchReadSuccessfulResponse
$cfrom :: forall x.
BatchReadSuccessfulResponse -> Rep BatchReadSuccessfulResponse x
Prelude.Generic)

-- |
-- Create a value of 'BatchReadSuccessfulResponse' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'getLinkAttributes', 'batchReadSuccessfulResponse_getLinkAttributes' - The list of attributes to retrieve from the typed link.
--
-- 'getObjectAttributes', 'batchReadSuccessfulResponse_getObjectAttributes' - Retrieves attributes within a facet that are associated with an object.
--
-- 'getObjectInformation', 'batchReadSuccessfulResponse_getObjectInformation' - Retrieves metadata about an object.
--
-- 'listAttachedIndices', 'batchReadSuccessfulResponse_listAttachedIndices' - Lists indices attached to an object.
--
-- 'listIncomingTypedLinks', 'batchReadSuccessfulResponse_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
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/directory_objects_links.html#directory_objects_links_typedlink Typed Links>.
--
-- 'listIndex', 'batchReadSuccessfulResponse_listIndex' - Lists objects attached to the specified index.
--
-- 'listObjectAttributes', 'batchReadSuccessfulResponse_listObjectAttributes' - Lists all attributes that are associated with an object.
--
-- 'listObjectChildren', 'batchReadSuccessfulResponse_listObjectChildren' - Returns a paginated list of child objects that are associated with a
-- given object.
--
-- 'listObjectParentPaths', 'batchReadSuccessfulResponse_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
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directorystructure.html Directory Structure>.
--
-- 'listObjectParents', 'batchReadSuccessfulResponse_listObjectParents' - The list of parent objects to retrieve.
--
-- 'listObjectPolicies', 'batchReadSuccessfulResponse_listObjectPolicies' - Returns policies attached to an object in pagination fashion.
--
-- 'listOutgoingTypedLinks', 'batchReadSuccessfulResponse_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
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/directory_objects_links.html#directory_objects_links_typedlink Typed Links>.
--
-- 'listPolicyAttachments', 'batchReadSuccessfulResponse_listPolicyAttachments' - Returns all of the @ObjectIdentifiers@ to which a given policy is
-- attached.
--
-- 'lookupPolicy', 'batchReadSuccessfulResponse_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
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directory.html#key_concepts_policies Policies>.
newBatchReadSuccessfulResponse ::
  BatchReadSuccessfulResponse
newBatchReadSuccessfulResponse :: BatchReadSuccessfulResponse
newBatchReadSuccessfulResponse =
  BatchReadSuccessfulResponse'
    { $sel:getLinkAttributes:BatchReadSuccessfulResponse' :: Maybe BatchGetLinkAttributesResponse
getLinkAttributes =
        forall a. Maybe a
Prelude.Nothing,
      $sel:getObjectAttributes:BatchReadSuccessfulResponse' :: Maybe BatchGetObjectAttributesResponse
getObjectAttributes = forall a. Maybe a
Prelude.Nothing,
      $sel:getObjectInformation:BatchReadSuccessfulResponse' :: Maybe BatchGetObjectInformationResponse
getObjectInformation = forall a. Maybe a
Prelude.Nothing,
      $sel:listAttachedIndices:BatchReadSuccessfulResponse' :: Maybe BatchListAttachedIndicesResponse
listAttachedIndices = forall a. Maybe a
Prelude.Nothing,
      $sel:listIncomingTypedLinks:BatchReadSuccessfulResponse' :: Maybe BatchListIncomingTypedLinksResponse
listIncomingTypedLinks = forall a. Maybe a
Prelude.Nothing,
      $sel:listIndex:BatchReadSuccessfulResponse' :: Maybe BatchListIndexResponse
listIndex = forall a. Maybe a
Prelude.Nothing,
      $sel:listObjectAttributes:BatchReadSuccessfulResponse' :: Maybe BatchListObjectAttributesResponse
listObjectAttributes = forall a. Maybe a
Prelude.Nothing,
      $sel:listObjectChildren:BatchReadSuccessfulResponse' :: Maybe BatchListObjectChildrenResponse
listObjectChildren = forall a. Maybe a
Prelude.Nothing,
      $sel:listObjectParentPaths:BatchReadSuccessfulResponse' :: Maybe BatchListObjectParentPathsResponse
listObjectParentPaths = forall a. Maybe a
Prelude.Nothing,
      $sel:listObjectParents:BatchReadSuccessfulResponse' :: Maybe BatchListObjectParentsResponse
listObjectParents = forall a. Maybe a
Prelude.Nothing,
      $sel:listObjectPolicies:BatchReadSuccessfulResponse' :: Maybe BatchListObjectPoliciesResponse
listObjectPolicies = forall a. Maybe a
Prelude.Nothing,
      $sel:listOutgoingTypedLinks:BatchReadSuccessfulResponse' :: Maybe BatchListOutgoingTypedLinksResponse
listOutgoingTypedLinks = forall a. Maybe a
Prelude.Nothing,
      $sel:listPolicyAttachments:BatchReadSuccessfulResponse' :: Maybe BatchListPolicyAttachmentsResponse
listPolicyAttachments = forall a. Maybe a
Prelude.Nothing,
      $sel:lookupPolicy:BatchReadSuccessfulResponse' :: Maybe BatchLookupPolicyResponse
lookupPolicy = forall a. Maybe a
Prelude.Nothing
    }

-- | The list of attributes to retrieve from the typed link.
batchReadSuccessfulResponse_getLinkAttributes :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchGetLinkAttributesResponse)
batchReadSuccessfulResponse_getLinkAttributes :: Lens'
  BatchReadSuccessfulResponse (Maybe BatchGetLinkAttributesResponse)
batchReadSuccessfulResponse_getLinkAttributes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchGetLinkAttributesResponse
getLinkAttributes :: Maybe BatchGetLinkAttributesResponse
$sel:getLinkAttributes:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse -> Maybe BatchGetLinkAttributesResponse
getLinkAttributes} -> Maybe BatchGetLinkAttributesResponse
getLinkAttributes) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchGetLinkAttributesResponse
a -> BatchReadSuccessfulResponse
s {$sel:getLinkAttributes:BatchReadSuccessfulResponse' :: Maybe BatchGetLinkAttributesResponse
getLinkAttributes = Maybe BatchGetLinkAttributesResponse
a} :: BatchReadSuccessfulResponse)

-- | Retrieves attributes within a facet that are associated with an object.
batchReadSuccessfulResponse_getObjectAttributes :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchGetObjectAttributesResponse)
batchReadSuccessfulResponse_getObjectAttributes :: Lens'
  BatchReadSuccessfulResponse
  (Maybe BatchGetObjectAttributesResponse)
batchReadSuccessfulResponse_getObjectAttributes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchGetObjectAttributesResponse
getObjectAttributes :: Maybe BatchGetObjectAttributesResponse
$sel:getObjectAttributes:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchGetObjectAttributesResponse
getObjectAttributes} -> Maybe BatchGetObjectAttributesResponse
getObjectAttributes) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchGetObjectAttributesResponse
a -> BatchReadSuccessfulResponse
s {$sel:getObjectAttributes:BatchReadSuccessfulResponse' :: Maybe BatchGetObjectAttributesResponse
getObjectAttributes = Maybe BatchGetObjectAttributesResponse
a} :: BatchReadSuccessfulResponse)

-- | Retrieves metadata about an object.
batchReadSuccessfulResponse_getObjectInformation :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchGetObjectInformationResponse)
batchReadSuccessfulResponse_getObjectInformation :: Lens'
  BatchReadSuccessfulResponse
  (Maybe BatchGetObjectInformationResponse)
batchReadSuccessfulResponse_getObjectInformation = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchGetObjectInformationResponse
getObjectInformation :: Maybe BatchGetObjectInformationResponse
$sel:getObjectInformation:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchGetObjectInformationResponse
getObjectInformation} -> Maybe BatchGetObjectInformationResponse
getObjectInformation) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchGetObjectInformationResponse
a -> BatchReadSuccessfulResponse
s {$sel:getObjectInformation:BatchReadSuccessfulResponse' :: Maybe BatchGetObjectInformationResponse
getObjectInformation = Maybe BatchGetObjectInformationResponse
a} :: BatchReadSuccessfulResponse)

-- | Lists indices attached to an object.
batchReadSuccessfulResponse_listAttachedIndices :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchListAttachedIndicesResponse)
batchReadSuccessfulResponse_listAttachedIndices :: Lens'
  BatchReadSuccessfulResponse
  (Maybe BatchListAttachedIndicesResponse)
batchReadSuccessfulResponse_listAttachedIndices = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchListAttachedIndicesResponse
listAttachedIndices :: Maybe BatchListAttachedIndicesResponse
$sel:listAttachedIndices:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListAttachedIndicesResponse
listAttachedIndices} -> Maybe BatchListAttachedIndicesResponse
listAttachedIndices) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchListAttachedIndicesResponse
a -> BatchReadSuccessfulResponse
s {$sel:listAttachedIndices:BatchReadSuccessfulResponse' :: Maybe BatchListAttachedIndicesResponse
listAttachedIndices = Maybe BatchListAttachedIndicesResponse
a} :: BatchReadSuccessfulResponse)

-- | 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
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/directory_objects_links.html#directory_objects_links_typedlink Typed Links>.
batchReadSuccessfulResponse_listIncomingTypedLinks :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchListIncomingTypedLinksResponse)
batchReadSuccessfulResponse_listIncomingTypedLinks :: Lens'
  BatchReadSuccessfulResponse
  (Maybe BatchListIncomingTypedLinksResponse)
batchReadSuccessfulResponse_listIncomingTypedLinks = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchListIncomingTypedLinksResponse
listIncomingTypedLinks :: Maybe BatchListIncomingTypedLinksResponse
$sel:listIncomingTypedLinks:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListIncomingTypedLinksResponse
listIncomingTypedLinks} -> Maybe BatchListIncomingTypedLinksResponse
listIncomingTypedLinks) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchListIncomingTypedLinksResponse
a -> BatchReadSuccessfulResponse
s {$sel:listIncomingTypedLinks:BatchReadSuccessfulResponse' :: Maybe BatchListIncomingTypedLinksResponse
listIncomingTypedLinks = Maybe BatchListIncomingTypedLinksResponse
a} :: BatchReadSuccessfulResponse)

-- | Lists objects attached to the specified index.
batchReadSuccessfulResponse_listIndex :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchListIndexResponse)
batchReadSuccessfulResponse_listIndex :: Lens' BatchReadSuccessfulResponse (Maybe BatchListIndexResponse)
batchReadSuccessfulResponse_listIndex = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchListIndexResponse
listIndex :: Maybe BatchListIndexResponse
$sel:listIndex:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse -> Maybe BatchListIndexResponse
listIndex} -> Maybe BatchListIndexResponse
listIndex) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchListIndexResponse
a -> BatchReadSuccessfulResponse
s {$sel:listIndex:BatchReadSuccessfulResponse' :: Maybe BatchListIndexResponse
listIndex = Maybe BatchListIndexResponse
a} :: BatchReadSuccessfulResponse)

-- | Lists all attributes that are associated with an object.
batchReadSuccessfulResponse_listObjectAttributes :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchListObjectAttributesResponse)
batchReadSuccessfulResponse_listObjectAttributes :: Lens'
  BatchReadSuccessfulResponse
  (Maybe BatchListObjectAttributesResponse)
batchReadSuccessfulResponse_listObjectAttributes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchListObjectAttributesResponse
listObjectAttributes :: Maybe BatchListObjectAttributesResponse
$sel:listObjectAttributes:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListObjectAttributesResponse
listObjectAttributes} -> Maybe BatchListObjectAttributesResponse
listObjectAttributes) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchListObjectAttributesResponse
a -> BatchReadSuccessfulResponse
s {$sel:listObjectAttributes:BatchReadSuccessfulResponse' :: Maybe BatchListObjectAttributesResponse
listObjectAttributes = Maybe BatchListObjectAttributesResponse
a} :: BatchReadSuccessfulResponse)

-- | Returns a paginated list of child objects that are associated with a
-- given object.
batchReadSuccessfulResponse_listObjectChildren :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchListObjectChildrenResponse)
batchReadSuccessfulResponse_listObjectChildren :: Lens'
  BatchReadSuccessfulResponse (Maybe BatchListObjectChildrenResponse)
batchReadSuccessfulResponse_listObjectChildren = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchListObjectChildrenResponse
listObjectChildren :: Maybe BatchListObjectChildrenResponse
$sel:listObjectChildren:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListObjectChildrenResponse
listObjectChildren} -> Maybe BatchListObjectChildrenResponse
listObjectChildren) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchListObjectChildrenResponse
a -> BatchReadSuccessfulResponse
s {$sel:listObjectChildren:BatchReadSuccessfulResponse' :: Maybe BatchListObjectChildrenResponse
listObjectChildren = Maybe BatchListObjectChildrenResponse
a} :: BatchReadSuccessfulResponse)

-- | 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
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directorystructure.html Directory Structure>.
batchReadSuccessfulResponse_listObjectParentPaths :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchListObjectParentPathsResponse)
batchReadSuccessfulResponse_listObjectParentPaths :: Lens'
  BatchReadSuccessfulResponse
  (Maybe BatchListObjectParentPathsResponse)
batchReadSuccessfulResponse_listObjectParentPaths = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchListObjectParentPathsResponse
listObjectParentPaths :: Maybe BatchListObjectParentPathsResponse
$sel:listObjectParentPaths:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListObjectParentPathsResponse
listObjectParentPaths} -> Maybe BatchListObjectParentPathsResponse
listObjectParentPaths) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchListObjectParentPathsResponse
a -> BatchReadSuccessfulResponse
s {$sel:listObjectParentPaths:BatchReadSuccessfulResponse' :: Maybe BatchListObjectParentPathsResponse
listObjectParentPaths = Maybe BatchListObjectParentPathsResponse
a} :: BatchReadSuccessfulResponse)

-- | The list of parent objects to retrieve.
batchReadSuccessfulResponse_listObjectParents :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchListObjectParentsResponse)
batchReadSuccessfulResponse_listObjectParents :: Lens'
  BatchReadSuccessfulResponse (Maybe BatchListObjectParentsResponse)
batchReadSuccessfulResponse_listObjectParents = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchListObjectParentsResponse
listObjectParents :: Maybe BatchListObjectParentsResponse
$sel:listObjectParents:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse -> Maybe BatchListObjectParentsResponse
listObjectParents} -> Maybe BatchListObjectParentsResponse
listObjectParents) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchListObjectParentsResponse
a -> BatchReadSuccessfulResponse
s {$sel:listObjectParents:BatchReadSuccessfulResponse' :: Maybe BatchListObjectParentsResponse
listObjectParents = Maybe BatchListObjectParentsResponse
a} :: BatchReadSuccessfulResponse)

-- | Returns policies attached to an object in pagination fashion.
batchReadSuccessfulResponse_listObjectPolicies :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchListObjectPoliciesResponse)
batchReadSuccessfulResponse_listObjectPolicies :: Lens'
  BatchReadSuccessfulResponse (Maybe BatchListObjectPoliciesResponse)
batchReadSuccessfulResponse_listObjectPolicies = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchListObjectPoliciesResponse
listObjectPolicies :: Maybe BatchListObjectPoliciesResponse
$sel:listObjectPolicies:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListObjectPoliciesResponse
listObjectPolicies} -> Maybe BatchListObjectPoliciesResponse
listObjectPolicies) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchListObjectPoliciesResponse
a -> BatchReadSuccessfulResponse
s {$sel:listObjectPolicies:BatchReadSuccessfulResponse' :: Maybe BatchListObjectPoliciesResponse
listObjectPolicies = Maybe BatchListObjectPoliciesResponse
a} :: BatchReadSuccessfulResponse)

-- | 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
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/directory_objects_links.html#directory_objects_links_typedlink Typed Links>.
batchReadSuccessfulResponse_listOutgoingTypedLinks :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchListOutgoingTypedLinksResponse)
batchReadSuccessfulResponse_listOutgoingTypedLinks :: Lens'
  BatchReadSuccessfulResponse
  (Maybe BatchListOutgoingTypedLinksResponse)
batchReadSuccessfulResponse_listOutgoingTypedLinks = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchListOutgoingTypedLinksResponse
listOutgoingTypedLinks :: Maybe BatchListOutgoingTypedLinksResponse
$sel:listOutgoingTypedLinks:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListOutgoingTypedLinksResponse
listOutgoingTypedLinks} -> Maybe BatchListOutgoingTypedLinksResponse
listOutgoingTypedLinks) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchListOutgoingTypedLinksResponse
a -> BatchReadSuccessfulResponse
s {$sel:listOutgoingTypedLinks:BatchReadSuccessfulResponse' :: Maybe BatchListOutgoingTypedLinksResponse
listOutgoingTypedLinks = Maybe BatchListOutgoingTypedLinksResponse
a} :: BatchReadSuccessfulResponse)

-- | Returns all of the @ObjectIdentifiers@ to which a given policy is
-- attached.
batchReadSuccessfulResponse_listPolicyAttachments :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchListPolicyAttachmentsResponse)
batchReadSuccessfulResponse_listPolicyAttachments :: Lens'
  BatchReadSuccessfulResponse
  (Maybe BatchListPolicyAttachmentsResponse)
batchReadSuccessfulResponse_listPolicyAttachments = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchListPolicyAttachmentsResponse
listPolicyAttachments :: Maybe BatchListPolicyAttachmentsResponse
$sel:listPolicyAttachments:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListPolicyAttachmentsResponse
listPolicyAttachments} -> Maybe BatchListPolicyAttachmentsResponse
listPolicyAttachments) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchListPolicyAttachmentsResponse
a -> BatchReadSuccessfulResponse
s {$sel:listPolicyAttachments:BatchReadSuccessfulResponse' :: Maybe BatchListPolicyAttachmentsResponse
listPolicyAttachments = Maybe BatchListPolicyAttachmentsResponse
a} :: BatchReadSuccessfulResponse)

-- | 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
-- <https://docs.aws.amazon.com/clouddirectory/latest/developerguide/key_concepts_directory.html#key_concepts_policies Policies>.
batchReadSuccessfulResponse_lookupPolicy :: Lens.Lens' BatchReadSuccessfulResponse (Prelude.Maybe BatchLookupPolicyResponse)
batchReadSuccessfulResponse_lookupPolicy :: Lens' BatchReadSuccessfulResponse (Maybe BatchLookupPolicyResponse)
batchReadSuccessfulResponse_lookupPolicy = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BatchReadSuccessfulResponse' {Maybe BatchLookupPolicyResponse
lookupPolicy :: Maybe BatchLookupPolicyResponse
$sel:lookupPolicy:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse -> Maybe BatchLookupPolicyResponse
lookupPolicy} -> Maybe BatchLookupPolicyResponse
lookupPolicy) (\s :: BatchReadSuccessfulResponse
s@BatchReadSuccessfulResponse' {} Maybe BatchLookupPolicyResponse
a -> BatchReadSuccessfulResponse
s {$sel:lookupPolicy:BatchReadSuccessfulResponse' :: Maybe BatchLookupPolicyResponse
lookupPolicy = Maybe BatchLookupPolicyResponse
a} :: BatchReadSuccessfulResponse)

instance Data.FromJSON BatchReadSuccessfulResponse where
  parseJSON :: Value -> Parser BatchReadSuccessfulResponse
parseJSON =
    forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
      String
"BatchReadSuccessfulResponse"
      ( \Object
x ->
          Maybe BatchGetLinkAttributesResponse
-> Maybe BatchGetObjectAttributesResponse
-> Maybe BatchGetObjectInformationResponse
-> Maybe BatchListAttachedIndicesResponse
-> Maybe BatchListIncomingTypedLinksResponse
-> Maybe BatchListIndexResponse
-> Maybe BatchListObjectAttributesResponse
-> Maybe BatchListObjectChildrenResponse
-> Maybe BatchListObjectParentPathsResponse
-> Maybe BatchListObjectParentsResponse
-> Maybe BatchListObjectPoliciesResponse
-> Maybe BatchListOutgoingTypedLinksResponse
-> Maybe BatchListPolicyAttachmentsResponse
-> Maybe BatchLookupPolicyResponse
-> BatchReadSuccessfulResponse
BatchReadSuccessfulResponse'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"GetLinkAttributes")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"GetObjectAttributes")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"GetObjectInformation")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ListAttachedIndices")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ListIncomingTypedLinks")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ListIndex")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ListObjectAttributes")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ListObjectChildren")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ListObjectParentPaths")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ListObjectParents")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ListObjectPolicies")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ListOutgoingTypedLinks")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ListPolicyAttachments")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"LookupPolicy")
      )

instance Prelude.Hashable BatchReadSuccessfulResponse where
  hashWithSalt :: Int -> BatchReadSuccessfulResponse -> Int
hashWithSalt Int
_salt BatchReadSuccessfulResponse' {Maybe BatchListObjectChildrenResponse
Maybe BatchListObjectPoliciesResponse
Maybe BatchListPolicyAttachmentsResponse
Maybe BatchListObjectParentsResponse
Maybe BatchListObjectParentPathsResponse
Maybe BatchLookupPolicyResponse
Maybe BatchGetObjectInformationResponse
Maybe BatchListIndexResponse
Maybe BatchListAttachedIndicesResponse
Maybe BatchListObjectAttributesResponse
Maybe BatchGetObjectAttributesResponse
Maybe BatchGetLinkAttributesResponse
Maybe BatchListOutgoingTypedLinksResponse
Maybe BatchListIncomingTypedLinksResponse
lookupPolicy :: Maybe BatchLookupPolicyResponse
listPolicyAttachments :: Maybe BatchListPolicyAttachmentsResponse
listOutgoingTypedLinks :: Maybe BatchListOutgoingTypedLinksResponse
listObjectPolicies :: Maybe BatchListObjectPoliciesResponse
listObjectParents :: Maybe BatchListObjectParentsResponse
listObjectParentPaths :: Maybe BatchListObjectParentPathsResponse
listObjectChildren :: Maybe BatchListObjectChildrenResponse
listObjectAttributes :: Maybe BatchListObjectAttributesResponse
listIndex :: Maybe BatchListIndexResponse
listIncomingTypedLinks :: Maybe BatchListIncomingTypedLinksResponse
listAttachedIndices :: Maybe BatchListAttachedIndicesResponse
getObjectInformation :: Maybe BatchGetObjectInformationResponse
getObjectAttributes :: Maybe BatchGetObjectAttributesResponse
getLinkAttributes :: Maybe BatchGetLinkAttributesResponse
$sel:lookupPolicy:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse -> Maybe BatchLookupPolicyResponse
$sel:listPolicyAttachments:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListPolicyAttachmentsResponse
$sel:listOutgoingTypedLinks:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListOutgoingTypedLinksResponse
$sel:listObjectPolicies:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListObjectPoliciesResponse
$sel:listObjectParents:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse -> Maybe BatchListObjectParentsResponse
$sel:listObjectParentPaths:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListObjectParentPathsResponse
$sel:listObjectChildren:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListObjectChildrenResponse
$sel:listObjectAttributes:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListObjectAttributesResponse
$sel:listIndex:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse -> Maybe BatchListIndexResponse
$sel:listIncomingTypedLinks:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListIncomingTypedLinksResponse
$sel:listAttachedIndices:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListAttachedIndicesResponse
$sel:getObjectInformation:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchGetObjectInformationResponse
$sel:getObjectAttributes:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchGetObjectAttributesResponse
$sel:getLinkAttributes:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse -> Maybe BatchGetLinkAttributesResponse
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchGetLinkAttributesResponse
getLinkAttributes
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchGetObjectAttributesResponse
getObjectAttributes
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchGetObjectInformationResponse
getObjectInformation
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListAttachedIndicesResponse
listAttachedIndices
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListIncomingTypedLinksResponse
listIncomingTypedLinks
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListIndexResponse
listIndex
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListObjectAttributesResponse
listObjectAttributes
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListObjectChildrenResponse
listObjectChildren
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListObjectParentPathsResponse
listObjectParentPaths
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListObjectParentsResponse
listObjectParents
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListObjectPoliciesResponse
listObjectPolicies
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListOutgoingTypedLinksResponse
listOutgoingTypedLinks
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchListPolicyAttachmentsResponse
listPolicyAttachments
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BatchLookupPolicyResponse
lookupPolicy

instance Prelude.NFData BatchReadSuccessfulResponse where
  rnf :: BatchReadSuccessfulResponse -> ()
rnf BatchReadSuccessfulResponse' {Maybe BatchListObjectChildrenResponse
Maybe BatchListObjectPoliciesResponse
Maybe BatchListPolicyAttachmentsResponse
Maybe BatchListObjectParentsResponse
Maybe BatchListObjectParentPathsResponse
Maybe BatchLookupPolicyResponse
Maybe BatchGetObjectInformationResponse
Maybe BatchListIndexResponse
Maybe BatchListAttachedIndicesResponse
Maybe BatchListObjectAttributesResponse
Maybe BatchGetObjectAttributesResponse
Maybe BatchGetLinkAttributesResponse
Maybe BatchListOutgoingTypedLinksResponse
Maybe BatchListIncomingTypedLinksResponse
lookupPolicy :: Maybe BatchLookupPolicyResponse
listPolicyAttachments :: Maybe BatchListPolicyAttachmentsResponse
listOutgoingTypedLinks :: Maybe BatchListOutgoingTypedLinksResponse
listObjectPolicies :: Maybe BatchListObjectPoliciesResponse
listObjectParents :: Maybe BatchListObjectParentsResponse
listObjectParentPaths :: Maybe BatchListObjectParentPathsResponse
listObjectChildren :: Maybe BatchListObjectChildrenResponse
listObjectAttributes :: Maybe BatchListObjectAttributesResponse
listIndex :: Maybe BatchListIndexResponse
listIncomingTypedLinks :: Maybe BatchListIncomingTypedLinksResponse
listAttachedIndices :: Maybe BatchListAttachedIndicesResponse
getObjectInformation :: Maybe BatchGetObjectInformationResponse
getObjectAttributes :: Maybe BatchGetObjectAttributesResponse
getLinkAttributes :: Maybe BatchGetLinkAttributesResponse
$sel:lookupPolicy:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse -> Maybe BatchLookupPolicyResponse
$sel:listPolicyAttachments:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListPolicyAttachmentsResponse
$sel:listOutgoingTypedLinks:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListOutgoingTypedLinksResponse
$sel:listObjectPolicies:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListObjectPoliciesResponse
$sel:listObjectParents:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse -> Maybe BatchListObjectParentsResponse
$sel:listObjectParentPaths:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListObjectParentPathsResponse
$sel:listObjectChildren:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListObjectChildrenResponse
$sel:listObjectAttributes:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListObjectAttributesResponse
$sel:listIndex:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse -> Maybe BatchListIndexResponse
$sel:listIncomingTypedLinks:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListIncomingTypedLinksResponse
$sel:listAttachedIndices:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchListAttachedIndicesResponse
$sel:getObjectInformation:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchGetObjectInformationResponse
$sel:getObjectAttributes:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse
-> Maybe BatchGetObjectAttributesResponse
$sel:getLinkAttributes:BatchReadSuccessfulResponse' :: BatchReadSuccessfulResponse -> Maybe BatchGetLinkAttributesResponse
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchGetLinkAttributesResponse
getLinkAttributes
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchGetObjectAttributesResponse
getObjectAttributes
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchGetObjectInformationResponse
getObjectInformation
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListAttachedIndicesResponse
listAttachedIndices
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListIncomingTypedLinksResponse
listIncomingTypedLinks
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListIndexResponse
listIndex
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListObjectAttributesResponse
listObjectAttributes
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListObjectChildrenResponse
listObjectChildren
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListObjectParentPathsResponse
listObjectParentPaths
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListObjectParentsResponse
listObjectParents
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListObjectPoliciesResponse
listObjectPolicies
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListOutgoingTypedLinksResponse
listOutgoingTypedLinks
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchListPolicyAttachmentsResponse
listPolicyAttachments
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BatchLookupPolicyResponse
lookupPolicy