{-# 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.KinesisVideo.DescribeMappedResourceConfiguration
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Returns the most current information about the stream. Either streamName
-- or streamARN should be provided in the input.
--
-- Returns the most current information about the stream. The @streamName@
-- or @streamARN@ should be provided in the input.
--
-- This operation returns paginated results.
module Amazonka.KinesisVideo.DescribeMappedResourceConfiguration
  ( -- * Creating a Request
    DescribeMappedResourceConfiguration (..),
    newDescribeMappedResourceConfiguration,

    -- * Request Lenses
    describeMappedResourceConfiguration_maxResults,
    describeMappedResourceConfiguration_nextToken,
    describeMappedResourceConfiguration_streamARN,
    describeMappedResourceConfiguration_streamName,

    -- * Destructuring the Response
    DescribeMappedResourceConfigurationResponse (..),
    newDescribeMappedResourceConfigurationResponse,

    -- * Response Lenses
    describeMappedResourceConfigurationResponse_mappedResourceConfigurationList,
    describeMappedResourceConfigurationResponse_nextToken,
    describeMappedResourceConfigurationResponse_httpStatus,
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.KinesisVideo.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response

-- | /See:/ 'newDescribeMappedResourceConfiguration' smart constructor.
data DescribeMappedResourceConfiguration = DescribeMappedResourceConfiguration'
  { -- | The maximum number of results to return in the response.
    DescribeMappedResourceConfiguration -> Maybe Natural
maxResults :: Prelude.Maybe Prelude.Natural,
    -- | The token to provide in your next request, to get another batch of
    -- results.
    DescribeMappedResourceConfiguration -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
    -- | The Amazon Resource Name (ARN) of the stream.
    DescribeMappedResourceConfiguration -> Maybe Text
streamARN :: Prelude.Maybe Prelude.Text,
    -- | The name of the stream.
    DescribeMappedResourceConfiguration -> Maybe Text
streamName :: Prelude.Maybe Prelude.Text
  }
  deriving (DescribeMappedResourceConfiguration
-> DescribeMappedResourceConfiguration -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeMappedResourceConfiguration
-> DescribeMappedResourceConfiguration -> Bool
$c/= :: DescribeMappedResourceConfiguration
-> DescribeMappedResourceConfiguration -> Bool
== :: DescribeMappedResourceConfiguration
-> DescribeMappedResourceConfiguration -> Bool
$c== :: DescribeMappedResourceConfiguration
-> DescribeMappedResourceConfiguration -> Bool
Prelude.Eq, ReadPrec [DescribeMappedResourceConfiguration]
ReadPrec DescribeMappedResourceConfiguration
Int -> ReadS DescribeMappedResourceConfiguration
ReadS [DescribeMappedResourceConfiguration]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeMappedResourceConfiguration]
$creadListPrec :: ReadPrec [DescribeMappedResourceConfiguration]
readPrec :: ReadPrec DescribeMappedResourceConfiguration
$creadPrec :: ReadPrec DescribeMappedResourceConfiguration
readList :: ReadS [DescribeMappedResourceConfiguration]
$creadList :: ReadS [DescribeMappedResourceConfiguration]
readsPrec :: Int -> ReadS DescribeMappedResourceConfiguration
$creadsPrec :: Int -> ReadS DescribeMappedResourceConfiguration
Prelude.Read, Int -> DescribeMappedResourceConfiguration -> ShowS
[DescribeMappedResourceConfiguration] -> ShowS
DescribeMappedResourceConfiguration -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeMappedResourceConfiguration] -> ShowS
$cshowList :: [DescribeMappedResourceConfiguration] -> ShowS
show :: DescribeMappedResourceConfiguration -> String
$cshow :: DescribeMappedResourceConfiguration -> String
showsPrec :: Int -> DescribeMappedResourceConfiguration -> ShowS
$cshowsPrec :: Int -> DescribeMappedResourceConfiguration -> ShowS
Prelude.Show, forall x.
Rep DescribeMappedResourceConfiguration x
-> DescribeMappedResourceConfiguration
forall x.
DescribeMappedResourceConfiguration
-> Rep DescribeMappedResourceConfiguration x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeMappedResourceConfiguration x
-> DescribeMappedResourceConfiguration
$cfrom :: forall x.
DescribeMappedResourceConfiguration
-> Rep DescribeMappedResourceConfiguration x
Prelude.Generic)

-- |
-- Create a value of 'DescribeMappedResourceConfiguration' 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:
--
-- 'maxResults', 'describeMappedResourceConfiguration_maxResults' - The maximum number of results to return in the response.
--
-- 'nextToken', 'describeMappedResourceConfiguration_nextToken' - The token to provide in your next request, to get another batch of
-- results.
--
-- 'streamARN', 'describeMappedResourceConfiguration_streamARN' - The Amazon Resource Name (ARN) of the stream.
--
-- 'streamName', 'describeMappedResourceConfiguration_streamName' - The name of the stream.
newDescribeMappedResourceConfiguration ::
  DescribeMappedResourceConfiguration
newDescribeMappedResourceConfiguration :: DescribeMappedResourceConfiguration
newDescribeMappedResourceConfiguration =
  DescribeMappedResourceConfiguration'
    { $sel:maxResults:DescribeMappedResourceConfiguration' :: Maybe Natural
maxResults =
        forall a. Maybe a
Prelude.Nothing,
      $sel:nextToken:DescribeMappedResourceConfiguration' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing,
      $sel:streamARN:DescribeMappedResourceConfiguration' :: Maybe Text
streamARN = forall a. Maybe a
Prelude.Nothing,
      $sel:streamName:DescribeMappedResourceConfiguration' :: Maybe Text
streamName = forall a. Maybe a
Prelude.Nothing
    }

-- | The maximum number of results to return in the response.
describeMappedResourceConfiguration_maxResults :: Lens.Lens' DescribeMappedResourceConfiguration (Prelude.Maybe Prelude.Natural)
describeMappedResourceConfiguration_maxResults :: Lens' DescribeMappedResourceConfiguration (Maybe Natural)
describeMappedResourceConfiguration_maxResults = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeMappedResourceConfiguration' {Maybe Natural
maxResults :: Maybe Natural
$sel:maxResults:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Natural
maxResults} -> Maybe Natural
maxResults) (\s :: DescribeMappedResourceConfiguration
s@DescribeMappedResourceConfiguration' {} Maybe Natural
a -> DescribeMappedResourceConfiguration
s {$sel:maxResults:DescribeMappedResourceConfiguration' :: Maybe Natural
maxResults = Maybe Natural
a} :: DescribeMappedResourceConfiguration)

-- | The token to provide in your next request, to get another batch of
-- results.
describeMappedResourceConfiguration_nextToken :: Lens.Lens' DescribeMappedResourceConfiguration (Prelude.Maybe Prelude.Text)
describeMappedResourceConfiguration_nextToken :: Lens' DescribeMappedResourceConfiguration (Maybe Text)
describeMappedResourceConfiguration_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeMappedResourceConfiguration' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: DescribeMappedResourceConfiguration
s@DescribeMappedResourceConfiguration' {} Maybe Text
a -> DescribeMappedResourceConfiguration
s {$sel:nextToken:DescribeMappedResourceConfiguration' :: Maybe Text
nextToken = Maybe Text
a} :: DescribeMappedResourceConfiguration)

-- | The Amazon Resource Name (ARN) of the stream.
describeMappedResourceConfiguration_streamARN :: Lens.Lens' DescribeMappedResourceConfiguration (Prelude.Maybe Prelude.Text)
describeMappedResourceConfiguration_streamARN :: Lens' DescribeMappedResourceConfiguration (Maybe Text)
describeMappedResourceConfiguration_streamARN = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeMappedResourceConfiguration' {Maybe Text
streamARN :: Maybe Text
$sel:streamARN:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Text
streamARN} -> Maybe Text
streamARN) (\s :: DescribeMappedResourceConfiguration
s@DescribeMappedResourceConfiguration' {} Maybe Text
a -> DescribeMappedResourceConfiguration
s {$sel:streamARN:DescribeMappedResourceConfiguration' :: Maybe Text
streamARN = Maybe Text
a} :: DescribeMappedResourceConfiguration)

-- | The name of the stream.
describeMappedResourceConfiguration_streamName :: Lens.Lens' DescribeMappedResourceConfiguration (Prelude.Maybe Prelude.Text)
describeMappedResourceConfiguration_streamName :: Lens' DescribeMappedResourceConfiguration (Maybe Text)
describeMappedResourceConfiguration_streamName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeMappedResourceConfiguration' {Maybe Text
streamName :: Maybe Text
$sel:streamName:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Text
streamName} -> Maybe Text
streamName) (\s :: DescribeMappedResourceConfiguration
s@DescribeMappedResourceConfiguration' {} Maybe Text
a -> DescribeMappedResourceConfiguration
s {$sel:streamName:DescribeMappedResourceConfiguration' :: Maybe Text
streamName = Maybe Text
a} :: DescribeMappedResourceConfiguration)

instance
  Core.AWSPager
    DescribeMappedResourceConfiguration
  where
  page :: DescribeMappedResourceConfiguration
-> AWSResponse DescribeMappedResourceConfiguration
-> Maybe DescribeMappedResourceConfiguration
page DescribeMappedResourceConfiguration
rq AWSResponse DescribeMappedResourceConfiguration
rs
    | forall a. AWSTruncated a => a -> Bool
Core.stop
        ( AWSResponse DescribeMappedResourceConfiguration
rs
            forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' DescribeMappedResourceConfigurationResponse (Maybe Text)
describeMappedResourceConfigurationResponse_nextToken
            forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
        ) =
        forall a. Maybe a
Prelude.Nothing
    | forall a. AWSTruncated a => a -> Bool
Core.stop
        ( AWSResponse DescribeMappedResourceConfiguration
rs
            forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens'
  DescribeMappedResourceConfigurationResponse
  (Maybe [MappedResourceConfigurationListItem])
describeMappedResourceConfigurationResponse_mappedResourceConfigurationList
            forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
        ) =
        forall a. Maybe a
Prelude.Nothing
    | Bool
Prelude.otherwise =
        forall a. a -> Maybe a
Prelude.Just
          forall a b. (a -> b) -> a -> b
Prelude.$ DescribeMappedResourceConfiguration
rq
          forall a b. a -> (a -> b) -> b
Prelude.& Lens' DescribeMappedResourceConfiguration (Maybe Text)
describeMappedResourceConfiguration_nextToken
          forall s t a b. ASetter s t a b -> b -> s -> t
Lens..~ AWSResponse DescribeMappedResourceConfiguration
rs
          forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' DescribeMappedResourceConfigurationResponse (Maybe Text)
describeMappedResourceConfigurationResponse_nextToken
          forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just

instance
  Core.AWSRequest
    DescribeMappedResourceConfiguration
  where
  type
    AWSResponse DescribeMappedResourceConfiguration =
      DescribeMappedResourceConfigurationResponse
  request :: (Service -> Service)
-> DescribeMappedResourceConfiguration
-> Request DescribeMappedResourceConfiguration
request Service -> Service
overrides =
    forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
  response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DescribeMappedResourceConfiguration
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse (AWSResponse DescribeMappedResourceConfiguration)))
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 [MappedResourceConfigurationListItem]
-> Maybe Text -> Int -> DescribeMappedResourceConfigurationResponse
DescribeMappedResourceConfigurationResponse'
            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
"MappedResourceConfigurationList"
                            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
"NextToken")
            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
    DescribeMappedResourceConfiguration
  where
  hashWithSalt :: Int -> DescribeMappedResourceConfiguration -> Int
hashWithSalt
    Int
_salt
    DescribeMappedResourceConfiguration' {Maybe Natural
Maybe Text
streamName :: Maybe Text
streamARN :: Maybe Text
nextToken :: Maybe Text
maxResults :: Maybe Natural
$sel:streamName:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Text
$sel:streamARN:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Text
$sel:nextToken:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Text
$sel:maxResults:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Natural
..} =
      Int
_salt
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
maxResults
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
nextToken
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
streamARN
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
streamName

instance
  Prelude.NFData
    DescribeMappedResourceConfiguration
  where
  rnf :: DescribeMappedResourceConfiguration -> ()
rnf DescribeMappedResourceConfiguration' {Maybe Natural
Maybe Text
streamName :: Maybe Text
streamARN :: Maybe Text
nextToken :: Maybe Text
maxResults :: Maybe Natural
$sel:streamName:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Text
$sel:streamARN:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Text
$sel:nextToken:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Text
$sel:maxResults:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Natural
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
maxResults
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
nextToken
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
streamARN
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
streamName

instance
  Data.ToHeaders
    DescribeMappedResourceConfiguration
  where
  toHeaders :: DescribeMappedResourceConfiguration -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty

instance
  Data.ToJSON
    DescribeMappedResourceConfiguration
  where
  toJSON :: DescribeMappedResourceConfiguration -> Value
toJSON DescribeMappedResourceConfiguration' {Maybe Natural
Maybe Text
streamName :: Maybe Text
streamARN :: Maybe Text
nextToken :: Maybe Text
maxResults :: Maybe Natural
$sel:streamName:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Text
$sel:streamARN:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Text
$sel:nextToken:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Text
$sel:maxResults:DescribeMappedResourceConfiguration' :: DescribeMappedResourceConfiguration -> Maybe Natural
..} =
    [Pair] -> Value
Data.object
      ( forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ (Key
"MaxResults" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Natural
maxResults,
            (Key
"NextToken" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
nextToken,
            (Key
"StreamARN" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
streamARN,
            (Key
"StreamName" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
streamName
          ]
      )

instance
  Data.ToPath
    DescribeMappedResourceConfiguration
  where
  toPath :: DescribeMappedResourceConfiguration -> ByteString
toPath =
    forall a b. a -> b -> a
Prelude.const
      ByteString
"/describeMappedResourceConfiguration"

instance
  Data.ToQuery
    DescribeMappedResourceConfiguration
  where
  toQuery :: DescribeMappedResourceConfiguration -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty

-- | /See:/ 'newDescribeMappedResourceConfigurationResponse' smart constructor.
data DescribeMappedResourceConfigurationResponse = DescribeMappedResourceConfigurationResponse'
  { -- | A structure that encapsulates, or contains, the media storage
    -- configuration properties.
    DescribeMappedResourceConfigurationResponse
-> Maybe [MappedResourceConfigurationListItem]
mappedResourceConfigurationList :: Prelude.Maybe [MappedResourceConfigurationListItem],
    -- | The token that was used in the @NextToken@request to fetch the next set
    -- of results.
    DescribeMappedResourceConfigurationResponse -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
    -- | The response's http status code.
    DescribeMappedResourceConfigurationResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (DescribeMappedResourceConfigurationResponse
-> DescribeMappedResourceConfigurationResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeMappedResourceConfigurationResponse
-> DescribeMappedResourceConfigurationResponse -> Bool
$c/= :: DescribeMappedResourceConfigurationResponse
-> DescribeMappedResourceConfigurationResponse -> Bool
== :: DescribeMappedResourceConfigurationResponse
-> DescribeMappedResourceConfigurationResponse -> Bool
$c== :: DescribeMappedResourceConfigurationResponse
-> DescribeMappedResourceConfigurationResponse -> Bool
Prelude.Eq, ReadPrec [DescribeMappedResourceConfigurationResponse]
ReadPrec DescribeMappedResourceConfigurationResponse
Int -> ReadS DescribeMappedResourceConfigurationResponse
ReadS [DescribeMappedResourceConfigurationResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeMappedResourceConfigurationResponse]
$creadListPrec :: ReadPrec [DescribeMappedResourceConfigurationResponse]
readPrec :: ReadPrec DescribeMappedResourceConfigurationResponse
$creadPrec :: ReadPrec DescribeMappedResourceConfigurationResponse
readList :: ReadS [DescribeMappedResourceConfigurationResponse]
$creadList :: ReadS [DescribeMappedResourceConfigurationResponse]
readsPrec :: Int -> ReadS DescribeMappedResourceConfigurationResponse
$creadsPrec :: Int -> ReadS DescribeMappedResourceConfigurationResponse
Prelude.Read, Int -> DescribeMappedResourceConfigurationResponse -> ShowS
[DescribeMappedResourceConfigurationResponse] -> ShowS
DescribeMappedResourceConfigurationResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeMappedResourceConfigurationResponse] -> ShowS
$cshowList :: [DescribeMappedResourceConfigurationResponse] -> ShowS
show :: DescribeMappedResourceConfigurationResponse -> String
$cshow :: DescribeMappedResourceConfigurationResponse -> String
showsPrec :: Int -> DescribeMappedResourceConfigurationResponse -> ShowS
$cshowsPrec :: Int -> DescribeMappedResourceConfigurationResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeMappedResourceConfigurationResponse x
-> DescribeMappedResourceConfigurationResponse
forall x.
DescribeMappedResourceConfigurationResponse
-> Rep DescribeMappedResourceConfigurationResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeMappedResourceConfigurationResponse x
-> DescribeMappedResourceConfigurationResponse
$cfrom :: forall x.
DescribeMappedResourceConfigurationResponse
-> Rep DescribeMappedResourceConfigurationResponse x
Prelude.Generic)

-- |
-- Create a value of 'DescribeMappedResourceConfigurationResponse' 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:
--
-- 'mappedResourceConfigurationList', 'describeMappedResourceConfigurationResponse_mappedResourceConfigurationList' - A structure that encapsulates, or contains, the media storage
-- configuration properties.
--
-- 'nextToken', 'describeMappedResourceConfigurationResponse_nextToken' - The token that was used in the @NextToken@request to fetch the next set
-- of results.
--
-- 'httpStatus', 'describeMappedResourceConfigurationResponse_httpStatus' - The response's http status code.
newDescribeMappedResourceConfigurationResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  DescribeMappedResourceConfigurationResponse
newDescribeMappedResourceConfigurationResponse :: Int -> DescribeMappedResourceConfigurationResponse
newDescribeMappedResourceConfigurationResponse
  Int
pHttpStatus_ =
    DescribeMappedResourceConfigurationResponse'
      { $sel:mappedResourceConfigurationList:DescribeMappedResourceConfigurationResponse' :: Maybe [MappedResourceConfigurationListItem]
mappedResourceConfigurationList =
          forall a. Maybe a
Prelude.Nothing,
        $sel:nextToken:DescribeMappedResourceConfigurationResponse' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing,
        $sel:httpStatus:DescribeMappedResourceConfigurationResponse' :: Int
httpStatus = Int
pHttpStatus_
      }

-- | A structure that encapsulates, or contains, the media storage
-- configuration properties.
describeMappedResourceConfigurationResponse_mappedResourceConfigurationList :: Lens.Lens' DescribeMappedResourceConfigurationResponse (Prelude.Maybe [MappedResourceConfigurationListItem])
describeMappedResourceConfigurationResponse_mappedResourceConfigurationList :: Lens'
  DescribeMappedResourceConfigurationResponse
  (Maybe [MappedResourceConfigurationListItem])
describeMappedResourceConfigurationResponse_mappedResourceConfigurationList = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeMappedResourceConfigurationResponse' {Maybe [MappedResourceConfigurationListItem]
mappedResourceConfigurationList :: Maybe [MappedResourceConfigurationListItem]
$sel:mappedResourceConfigurationList:DescribeMappedResourceConfigurationResponse' :: DescribeMappedResourceConfigurationResponse
-> Maybe [MappedResourceConfigurationListItem]
mappedResourceConfigurationList} -> Maybe [MappedResourceConfigurationListItem]
mappedResourceConfigurationList) (\s :: DescribeMappedResourceConfigurationResponse
s@DescribeMappedResourceConfigurationResponse' {} Maybe [MappedResourceConfigurationListItem]
a -> DescribeMappedResourceConfigurationResponse
s {$sel:mappedResourceConfigurationList:DescribeMappedResourceConfigurationResponse' :: Maybe [MappedResourceConfigurationListItem]
mappedResourceConfigurationList = Maybe [MappedResourceConfigurationListItem]
a} :: DescribeMappedResourceConfigurationResponse) 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 token that was used in the @NextToken@request to fetch the next set
-- of results.
describeMappedResourceConfigurationResponse_nextToken :: Lens.Lens' DescribeMappedResourceConfigurationResponse (Prelude.Maybe Prelude.Text)
describeMappedResourceConfigurationResponse_nextToken :: Lens' DescribeMappedResourceConfigurationResponse (Maybe Text)
describeMappedResourceConfigurationResponse_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeMappedResourceConfigurationResponse' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:DescribeMappedResourceConfigurationResponse' :: DescribeMappedResourceConfigurationResponse -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: DescribeMappedResourceConfigurationResponse
s@DescribeMappedResourceConfigurationResponse' {} Maybe Text
a -> DescribeMappedResourceConfigurationResponse
s {$sel:nextToken:DescribeMappedResourceConfigurationResponse' :: Maybe Text
nextToken = Maybe Text
a} :: DescribeMappedResourceConfigurationResponse)

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

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