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

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

-- |
-- Module      : Amazonka.APIGateway.ImportDocumentationParts
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Imports documentation parts
module Amazonka.APIGateway.ImportDocumentationParts
  ( -- * Creating a Request
    ImportDocumentationParts (..),
    newImportDocumentationParts,

    -- * Request Lenses
    importDocumentationParts_failOnWarnings,
    importDocumentationParts_mode,
    importDocumentationParts_restApiId,
    importDocumentationParts_body,

    -- * Destructuring the Response
    ImportDocumentationPartsResponse (..),
    newImportDocumentationPartsResponse,

    -- * Response Lenses
    importDocumentationPartsResponse_ids,
    importDocumentationPartsResponse_warnings,
    importDocumentationPartsResponse_httpStatus,
  )
where

import Amazonka.APIGateway.Types
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
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response

-- | Import documentation parts from an external (e.g., OpenAPI) definition
-- file.
--
-- /See:/ 'newImportDocumentationParts' smart constructor.
data ImportDocumentationParts = ImportDocumentationParts'
  { -- | A query parameter to specify whether to rollback the documentation
    -- importation (@true@) or not (@false@) when a warning is encountered. The
    -- default value is @false@.
    ImportDocumentationParts -> Maybe Bool
failOnWarnings :: Prelude.Maybe Prelude.Bool,
    -- | A query parameter to indicate whether to overwrite (@OVERWRITE@) any
    -- existing DocumentationParts definition or to merge (@MERGE@) the new
    -- definition into the existing one. The default value is @MERGE@.
    ImportDocumentationParts -> Maybe PutMode
mode :: Prelude.Maybe PutMode,
    -- | The string identifier of the associated RestApi.
    ImportDocumentationParts -> Text
restApiId :: Prelude.Text,
    -- | Raw byte array representing the to-be-imported documentation parts. To
    -- import from an OpenAPI file, this is a JSON object.
    ImportDocumentationParts -> ByteString
body :: Prelude.ByteString
  }
  deriving (ImportDocumentationParts -> ImportDocumentationParts -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ImportDocumentationParts -> ImportDocumentationParts -> Bool
$c/= :: ImportDocumentationParts -> ImportDocumentationParts -> Bool
== :: ImportDocumentationParts -> ImportDocumentationParts -> Bool
$c== :: ImportDocumentationParts -> ImportDocumentationParts -> Bool
Prelude.Eq, Int -> ImportDocumentationParts -> ShowS
[ImportDocumentationParts] -> ShowS
ImportDocumentationParts -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ImportDocumentationParts] -> ShowS
$cshowList :: [ImportDocumentationParts] -> ShowS
show :: ImportDocumentationParts -> String
$cshow :: ImportDocumentationParts -> String
showsPrec :: Int -> ImportDocumentationParts -> ShowS
$cshowsPrec :: Int -> ImportDocumentationParts -> ShowS
Prelude.Show, forall x.
Rep ImportDocumentationParts x -> ImportDocumentationParts
forall x.
ImportDocumentationParts -> Rep ImportDocumentationParts x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ImportDocumentationParts x -> ImportDocumentationParts
$cfrom :: forall x.
ImportDocumentationParts -> Rep ImportDocumentationParts x
Prelude.Generic)

-- |
-- Create a value of 'ImportDocumentationParts' 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:
--
-- 'failOnWarnings', 'importDocumentationParts_failOnWarnings' - A query parameter to specify whether to rollback the documentation
-- importation (@true@) or not (@false@) when a warning is encountered. The
-- default value is @false@.
--
-- 'mode', 'importDocumentationParts_mode' - A query parameter to indicate whether to overwrite (@OVERWRITE@) any
-- existing DocumentationParts definition or to merge (@MERGE@) the new
-- definition into the existing one. The default value is @MERGE@.
--
-- 'restApiId', 'importDocumentationParts_restApiId' - The string identifier of the associated RestApi.
--
-- 'body', 'importDocumentationParts_body' - Raw byte array representing the to-be-imported documentation parts. To
-- import from an OpenAPI file, this is a JSON object.
newImportDocumentationParts ::
  -- | 'restApiId'
  Prelude.Text ->
  -- | 'body'
  Prelude.ByteString ->
  ImportDocumentationParts
newImportDocumentationParts :: Text -> ByteString -> ImportDocumentationParts
newImportDocumentationParts Text
pRestApiId_ ByteString
pBody_ =
  ImportDocumentationParts'
    { $sel:failOnWarnings:ImportDocumentationParts' :: Maybe Bool
failOnWarnings =
        forall a. Maybe a
Prelude.Nothing,
      $sel:mode:ImportDocumentationParts' :: Maybe PutMode
mode = forall a. Maybe a
Prelude.Nothing,
      $sel:restApiId:ImportDocumentationParts' :: Text
restApiId = Text
pRestApiId_,
      $sel:body:ImportDocumentationParts' :: ByteString
body = ByteString
pBody_
    }

-- | A query parameter to specify whether to rollback the documentation
-- importation (@true@) or not (@false@) when a warning is encountered. The
-- default value is @false@.
importDocumentationParts_failOnWarnings :: Lens.Lens' ImportDocumentationParts (Prelude.Maybe Prelude.Bool)
importDocumentationParts_failOnWarnings :: Lens' ImportDocumentationParts (Maybe Bool)
importDocumentationParts_failOnWarnings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportDocumentationParts' {Maybe Bool
failOnWarnings :: Maybe Bool
$sel:failOnWarnings:ImportDocumentationParts' :: ImportDocumentationParts -> Maybe Bool
failOnWarnings} -> Maybe Bool
failOnWarnings) (\s :: ImportDocumentationParts
s@ImportDocumentationParts' {} Maybe Bool
a -> ImportDocumentationParts
s {$sel:failOnWarnings:ImportDocumentationParts' :: Maybe Bool
failOnWarnings = Maybe Bool
a} :: ImportDocumentationParts)

-- | A query parameter to indicate whether to overwrite (@OVERWRITE@) any
-- existing DocumentationParts definition or to merge (@MERGE@) the new
-- definition into the existing one. The default value is @MERGE@.
importDocumentationParts_mode :: Lens.Lens' ImportDocumentationParts (Prelude.Maybe PutMode)
importDocumentationParts_mode :: Lens' ImportDocumentationParts (Maybe PutMode)
importDocumentationParts_mode = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportDocumentationParts' {Maybe PutMode
mode :: Maybe PutMode
$sel:mode:ImportDocumentationParts' :: ImportDocumentationParts -> Maybe PutMode
mode} -> Maybe PutMode
mode) (\s :: ImportDocumentationParts
s@ImportDocumentationParts' {} Maybe PutMode
a -> ImportDocumentationParts
s {$sel:mode:ImportDocumentationParts' :: Maybe PutMode
mode = Maybe PutMode
a} :: ImportDocumentationParts)

-- | The string identifier of the associated RestApi.
importDocumentationParts_restApiId :: Lens.Lens' ImportDocumentationParts Prelude.Text
importDocumentationParts_restApiId :: Lens' ImportDocumentationParts Text
importDocumentationParts_restApiId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportDocumentationParts' {Text
restApiId :: Text
$sel:restApiId:ImportDocumentationParts' :: ImportDocumentationParts -> Text
restApiId} -> Text
restApiId) (\s :: ImportDocumentationParts
s@ImportDocumentationParts' {} Text
a -> ImportDocumentationParts
s {$sel:restApiId:ImportDocumentationParts' :: Text
restApiId = Text
a} :: ImportDocumentationParts)

-- | Raw byte array representing the to-be-imported documentation parts. To
-- import from an OpenAPI file, this is a JSON object.
importDocumentationParts_body :: Lens.Lens' ImportDocumentationParts Prelude.ByteString
importDocumentationParts_body :: Lens' ImportDocumentationParts ByteString
importDocumentationParts_body = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportDocumentationParts' {ByteString
body :: ByteString
$sel:body:ImportDocumentationParts' :: ImportDocumentationParts -> ByteString
body} -> ByteString
body) (\s :: ImportDocumentationParts
s@ImportDocumentationParts' {} ByteString
a -> ImportDocumentationParts
s {$sel:body:ImportDocumentationParts' :: ByteString
body = ByteString
a} :: ImportDocumentationParts)

instance Core.AWSRequest ImportDocumentationParts where
  type
    AWSResponse ImportDocumentationParts =
      ImportDocumentationPartsResponse
  request :: (Service -> Service)
-> ImportDocumentationParts -> Request ImportDocumentationParts
request Service -> Service
overrides =
    forall a. (ToRequest a, ToBody a) => Service -> a -> Request a
Request.putBody (Service -> Service
overrides Service
defaultService)
  response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy ImportDocumentationParts
-> ClientResponse ClientBody
-> m (Either
        Error (ClientResponse (AWSResponse ImportDocumentationParts)))
response =
    forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
      ( \Int
s ResponseHeaders
h Object
x ->
          Maybe [Text]
-> Maybe [Text] -> Int -> ImportDocumentationPartsResponse
ImportDocumentationPartsResponse'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"ids" forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty)
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"warnings" forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty)
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
      )

instance Prelude.Hashable ImportDocumentationParts where
  hashWithSalt :: Int -> ImportDocumentationParts -> Int
hashWithSalt Int
_salt ImportDocumentationParts' {Maybe Bool
Maybe PutMode
ByteString
Text
body :: ByteString
restApiId :: Text
mode :: Maybe PutMode
failOnWarnings :: Maybe Bool
$sel:body:ImportDocumentationParts' :: ImportDocumentationParts -> ByteString
$sel:restApiId:ImportDocumentationParts' :: ImportDocumentationParts -> Text
$sel:mode:ImportDocumentationParts' :: ImportDocumentationParts -> Maybe PutMode
$sel:failOnWarnings:ImportDocumentationParts' :: ImportDocumentationParts -> Maybe Bool
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
failOnWarnings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe PutMode
mode
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
restApiId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` ByteString
body

instance Prelude.NFData ImportDocumentationParts where
  rnf :: ImportDocumentationParts -> ()
rnf ImportDocumentationParts' {Maybe Bool
Maybe PutMode
ByteString
Text
body :: ByteString
restApiId :: Text
mode :: Maybe PutMode
failOnWarnings :: Maybe Bool
$sel:body:ImportDocumentationParts' :: ImportDocumentationParts -> ByteString
$sel:restApiId:ImportDocumentationParts' :: ImportDocumentationParts -> Text
$sel:mode:ImportDocumentationParts' :: ImportDocumentationParts -> Maybe PutMode
$sel:failOnWarnings:ImportDocumentationParts' :: ImportDocumentationParts -> Maybe Bool
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
failOnWarnings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe PutMode
mode
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
restApiId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf ByteString
body

instance Data.ToBody ImportDocumentationParts where
  toBody :: ImportDocumentationParts -> RequestBody
toBody ImportDocumentationParts' {Maybe Bool
Maybe PutMode
ByteString
Text
body :: ByteString
restApiId :: Text
mode :: Maybe PutMode
failOnWarnings :: Maybe Bool
$sel:body:ImportDocumentationParts' :: ImportDocumentationParts -> ByteString
$sel:restApiId:ImportDocumentationParts' :: ImportDocumentationParts -> Text
$sel:mode:ImportDocumentationParts' :: ImportDocumentationParts -> Maybe PutMode
$sel:failOnWarnings:ImportDocumentationParts' :: ImportDocumentationParts -> Maybe Bool
..} =
    forall a. ToBody a => a -> RequestBody
Data.toBody ByteString
body

instance Data.ToHeaders ImportDocumentationParts where
  toHeaders :: ImportDocumentationParts -> ResponseHeaders
toHeaders =
    forall a b. a -> b -> a
Prelude.const
      ( forall a. Monoid a => [a] -> a
Prelude.mconcat
          [ HeaderName
"Accept"
              forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# (ByteString
"application/json" :: Prelude.ByteString)
          ]
      )

instance Data.ToPath ImportDocumentationParts where
  toPath :: ImportDocumentationParts -> ByteString
toPath ImportDocumentationParts' {Maybe Bool
Maybe PutMode
ByteString
Text
body :: ByteString
restApiId :: Text
mode :: Maybe PutMode
failOnWarnings :: Maybe Bool
$sel:body:ImportDocumentationParts' :: ImportDocumentationParts -> ByteString
$sel:restApiId:ImportDocumentationParts' :: ImportDocumentationParts -> Text
$sel:mode:ImportDocumentationParts' :: ImportDocumentationParts -> Maybe PutMode
$sel:failOnWarnings:ImportDocumentationParts' :: ImportDocumentationParts -> Maybe Bool
..} =
    forall a. Monoid a => [a] -> a
Prelude.mconcat
      [ ByteString
"/restapis/",
        forall a. ToByteString a => a -> ByteString
Data.toBS Text
restApiId,
        ByteString
"/documentation/parts"
      ]

instance Data.ToQuery ImportDocumentationParts where
  toQuery :: ImportDocumentationParts -> QueryString
toQuery ImportDocumentationParts' {Maybe Bool
Maybe PutMode
ByteString
Text
body :: ByteString
restApiId :: Text
mode :: Maybe PutMode
failOnWarnings :: Maybe Bool
$sel:body:ImportDocumentationParts' :: ImportDocumentationParts -> ByteString
$sel:restApiId:ImportDocumentationParts' :: ImportDocumentationParts -> Text
$sel:mode:ImportDocumentationParts' :: ImportDocumentationParts -> Maybe PutMode
$sel:failOnWarnings:ImportDocumentationParts' :: ImportDocumentationParts -> Maybe Bool
..} =
    forall a. Monoid a => [a] -> a
Prelude.mconcat
      [ ByteString
"failonwarnings" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Bool
failOnWarnings,
        ByteString
"mode" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe PutMode
mode
      ]

-- | A collection of the imported DocumentationPart identifiers.
--
-- /See:/ 'newImportDocumentationPartsResponse' smart constructor.
data ImportDocumentationPartsResponse = ImportDocumentationPartsResponse'
  { -- | A list of the returned documentation part identifiers.
    ImportDocumentationPartsResponse -> Maybe [Text]
ids :: Prelude.Maybe [Prelude.Text],
    -- | A list of warning messages reported during import of documentation
    -- parts.
    ImportDocumentationPartsResponse -> Maybe [Text]
warnings :: Prelude.Maybe [Prelude.Text],
    -- | The response's http status code.
    ImportDocumentationPartsResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (ImportDocumentationPartsResponse
-> ImportDocumentationPartsResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ImportDocumentationPartsResponse
-> ImportDocumentationPartsResponse -> Bool
$c/= :: ImportDocumentationPartsResponse
-> ImportDocumentationPartsResponse -> Bool
== :: ImportDocumentationPartsResponse
-> ImportDocumentationPartsResponse -> Bool
$c== :: ImportDocumentationPartsResponse
-> ImportDocumentationPartsResponse -> Bool
Prelude.Eq, ReadPrec [ImportDocumentationPartsResponse]
ReadPrec ImportDocumentationPartsResponse
Int -> ReadS ImportDocumentationPartsResponse
ReadS [ImportDocumentationPartsResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ImportDocumentationPartsResponse]
$creadListPrec :: ReadPrec [ImportDocumentationPartsResponse]
readPrec :: ReadPrec ImportDocumentationPartsResponse
$creadPrec :: ReadPrec ImportDocumentationPartsResponse
readList :: ReadS [ImportDocumentationPartsResponse]
$creadList :: ReadS [ImportDocumentationPartsResponse]
readsPrec :: Int -> ReadS ImportDocumentationPartsResponse
$creadsPrec :: Int -> ReadS ImportDocumentationPartsResponse
Prelude.Read, Int -> ImportDocumentationPartsResponse -> ShowS
[ImportDocumentationPartsResponse] -> ShowS
ImportDocumentationPartsResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ImportDocumentationPartsResponse] -> ShowS
$cshowList :: [ImportDocumentationPartsResponse] -> ShowS
show :: ImportDocumentationPartsResponse -> String
$cshow :: ImportDocumentationPartsResponse -> String
showsPrec :: Int -> ImportDocumentationPartsResponse -> ShowS
$cshowsPrec :: Int -> ImportDocumentationPartsResponse -> ShowS
Prelude.Show, forall x.
Rep ImportDocumentationPartsResponse x
-> ImportDocumentationPartsResponse
forall x.
ImportDocumentationPartsResponse
-> Rep ImportDocumentationPartsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ImportDocumentationPartsResponse x
-> ImportDocumentationPartsResponse
$cfrom :: forall x.
ImportDocumentationPartsResponse
-> Rep ImportDocumentationPartsResponse x
Prelude.Generic)

-- |
-- Create a value of 'ImportDocumentationPartsResponse' 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:
--
-- 'ids', 'importDocumentationPartsResponse_ids' - A list of the returned documentation part identifiers.
--
-- 'warnings', 'importDocumentationPartsResponse_warnings' - A list of warning messages reported during import of documentation
-- parts.
--
-- 'httpStatus', 'importDocumentationPartsResponse_httpStatus' - The response's http status code.
newImportDocumentationPartsResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  ImportDocumentationPartsResponse
newImportDocumentationPartsResponse :: Int -> ImportDocumentationPartsResponse
newImportDocumentationPartsResponse Int
pHttpStatus_ =
  ImportDocumentationPartsResponse'
    { $sel:ids:ImportDocumentationPartsResponse' :: Maybe [Text]
ids =
        forall a. Maybe a
Prelude.Nothing,
      $sel:warnings:ImportDocumentationPartsResponse' :: Maybe [Text]
warnings = forall a. Maybe a
Prelude.Nothing,
      $sel:httpStatus:ImportDocumentationPartsResponse' :: Int
httpStatus = Int
pHttpStatus_
    }

-- | A list of the returned documentation part identifiers.
importDocumentationPartsResponse_ids :: Lens.Lens' ImportDocumentationPartsResponse (Prelude.Maybe [Prelude.Text])
importDocumentationPartsResponse_ids :: Lens' ImportDocumentationPartsResponse (Maybe [Text])
importDocumentationPartsResponse_ids = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportDocumentationPartsResponse' {Maybe [Text]
ids :: Maybe [Text]
$sel:ids:ImportDocumentationPartsResponse' :: ImportDocumentationPartsResponse -> Maybe [Text]
ids} -> Maybe [Text]
ids) (\s :: ImportDocumentationPartsResponse
s@ImportDocumentationPartsResponse' {} Maybe [Text]
a -> ImportDocumentationPartsResponse
s {$sel:ids:ImportDocumentationPartsResponse' :: Maybe [Text]
ids = Maybe [Text]
a} :: ImportDocumentationPartsResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced

-- | A list of warning messages reported during import of documentation
-- parts.
importDocumentationPartsResponse_warnings :: Lens.Lens' ImportDocumentationPartsResponse (Prelude.Maybe [Prelude.Text])
importDocumentationPartsResponse_warnings :: Lens' ImportDocumentationPartsResponse (Maybe [Text])
importDocumentationPartsResponse_warnings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportDocumentationPartsResponse' {Maybe [Text]
warnings :: Maybe [Text]
$sel:warnings:ImportDocumentationPartsResponse' :: ImportDocumentationPartsResponse -> Maybe [Text]
warnings} -> Maybe [Text]
warnings) (\s :: ImportDocumentationPartsResponse
s@ImportDocumentationPartsResponse' {} Maybe [Text]
a -> ImportDocumentationPartsResponse
s {$sel:warnings:ImportDocumentationPartsResponse' :: Maybe [Text]
warnings = Maybe [Text]
a} :: ImportDocumentationPartsResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced

-- | The response's http status code.
importDocumentationPartsResponse_httpStatus :: Lens.Lens' ImportDocumentationPartsResponse Prelude.Int
importDocumentationPartsResponse_httpStatus :: Lens' ImportDocumentationPartsResponse Int
importDocumentationPartsResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportDocumentationPartsResponse' {Int
httpStatus :: Int
$sel:httpStatus:ImportDocumentationPartsResponse' :: ImportDocumentationPartsResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: ImportDocumentationPartsResponse
s@ImportDocumentationPartsResponse' {} Int
a -> ImportDocumentationPartsResponse
s {$sel:httpStatus:ImportDocumentationPartsResponse' :: Int
httpStatus = Int
a} :: ImportDocumentationPartsResponse)

instance
  Prelude.NFData
    ImportDocumentationPartsResponse
  where
  rnf :: ImportDocumentationPartsResponse -> ()
rnf ImportDocumentationPartsResponse' {Int
Maybe [Text]
httpStatus :: Int
warnings :: Maybe [Text]
ids :: Maybe [Text]
$sel:httpStatus:ImportDocumentationPartsResponse' :: ImportDocumentationPartsResponse -> Int
$sel:warnings:ImportDocumentationPartsResponse' :: ImportDocumentationPartsResponse -> Maybe [Text]
$sel:ids:ImportDocumentationPartsResponse' :: ImportDocumentationPartsResponse -> Maybe [Text]
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe [Text]
ids
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Text]
warnings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus