{-# 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.CloudWatchEvents.ListReplays
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Lists your replays. You can either list all the replays or you can
-- provide a prefix to match to the replay names. Filter parameters are
-- exclusive.
module Amazonka.CloudWatchEvents.ListReplays
  ( -- * Creating a Request
    ListReplays (..),
    newListReplays,

    -- * Request Lenses
    listReplays_eventSourceArn,
    listReplays_limit,
    listReplays_namePrefix,
    listReplays_nextToken,
    listReplays_state,

    -- * Destructuring the Response
    ListReplaysResponse (..),
    newListReplaysResponse,

    -- * Response Lenses
    listReplaysResponse_nextToken,
    listReplaysResponse_replays,
    listReplaysResponse_httpStatus,
  )
where

import Amazonka.CloudWatchEvents.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

-- | /See:/ 'newListReplays' smart constructor.
data ListReplays = ListReplays'
  { -- | The ARN of the archive from which the events are replayed.
    ListReplays -> Maybe Text
eventSourceArn :: Prelude.Maybe Prelude.Text,
    -- | The maximum number of replays to retrieve.
    ListReplays -> Maybe Natural
limit :: Prelude.Maybe Prelude.Natural,
    -- | A name prefix to filter the replays returned. Only replays with name
    -- that match the prefix are returned.
    ListReplays -> Maybe Text
namePrefix :: Prelude.Maybe Prelude.Text,
    -- | The token returned by a previous call to retrieve the next set of
    -- results.
    ListReplays -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
    -- | The state of the replay.
    ListReplays -> Maybe ReplayState
state :: Prelude.Maybe ReplayState
  }
  deriving (ListReplays -> ListReplays -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListReplays -> ListReplays -> Bool
$c/= :: ListReplays -> ListReplays -> Bool
== :: ListReplays -> ListReplays -> Bool
$c== :: ListReplays -> ListReplays -> Bool
Prelude.Eq, ReadPrec [ListReplays]
ReadPrec ListReplays
Int -> ReadS ListReplays
ReadS [ListReplays]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListReplays]
$creadListPrec :: ReadPrec [ListReplays]
readPrec :: ReadPrec ListReplays
$creadPrec :: ReadPrec ListReplays
readList :: ReadS [ListReplays]
$creadList :: ReadS [ListReplays]
readsPrec :: Int -> ReadS ListReplays
$creadsPrec :: Int -> ReadS ListReplays
Prelude.Read, Int -> ListReplays -> ShowS
[ListReplays] -> ShowS
ListReplays -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListReplays] -> ShowS
$cshowList :: [ListReplays] -> ShowS
show :: ListReplays -> String
$cshow :: ListReplays -> String
showsPrec :: Int -> ListReplays -> ShowS
$cshowsPrec :: Int -> ListReplays -> ShowS
Prelude.Show, forall x. Rep ListReplays x -> ListReplays
forall x. ListReplays -> Rep ListReplays x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ListReplays x -> ListReplays
$cfrom :: forall x. ListReplays -> Rep ListReplays x
Prelude.Generic)

-- |
-- Create a value of 'ListReplays' 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:
--
-- 'eventSourceArn', 'listReplays_eventSourceArn' - The ARN of the archive from which the events are replayed.
--
-- 'limit', 'listReplays_limit' - The maximum number of replays to retrieve.
--
-- 'namePrefix', 'listReplays_namePrefix' - A name prefix to filter the replays returned. Only replays with name
-- that match the prefix are returned.
--
-- 'nextToken', 'listReplays_nextToken' - The token returned by a previous call to retrieve the next set of
-- results.
--
-- 'state', 'listReplays_state' - The state of the replay.
newListReplays ::
  ListReplays
newListReplays :: ListReplays
newListReplays =
  ListReplays'
    { $sel:eventSourceArn:ListReplays' :: Maybe Text
eventSourceArn = forall a. Maybe a
Prelude.Nothing,
      $sel:limit:ListReplays' :: Maybe Natural
limit = forall a. Maybe a
Prelude.Nothing,
      $sel:namePrefix:ListReplays' :: Maybe Text
namePrefix = forall a. Maybe a
Prelude.Nothing,
      $sel:nextToken:ListReplays' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing,
      $sel:state:ListReplays' :: Maybe ReplayState
state = forall a. Maybe a
Prelude.Nothing
    }

-- | The ARN of the archive from which the events are replayed.
listReplays_eventSourceArn :: Lens.Lens' ListReplays (Prelude.Maybe Prelude.Text)
listReplays_eventSourceArn :: Lens' ListReplays (Maybe Text)
listReplays_eventSourceArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListReplays' {Maybe Text
eventSourceArn :: Maybe Text
$sel:eventSourceArn:ListReplays' :: ListReplays -> Maybe Text
eventSourceArn} -> Maybe Text
eventSourceArn) (\s :: ListReplays
s@ListReplays' {} Maybe Text
a -> ListReplays
s {$sel:eventSourceArn:ListReplays' :: Maybe Text
eventSourceArn = Maybe Text
a} :: ListReplays)

-- | The maximum number of replays to retrieve.
listReplays_limit :: Lens.Lens' ListReplays (Prelude.Maybe Prelude.Natural)
listReplays_limit :: Lens' ListReplays (Maybe Natural)
listReplays_limit = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListReplays' {Maybe Natural
limit :: Maybe Natural
$sel:limit:ListReplays' :: ListReplays -> Maybe Natural
limit} -> Maybe Natural
limit) (\s :: ListReplays
s@ListReplays' {} Maybe Natural
a -> ListReplays
s {$sel:limit:ListReplays' :: Maybe Natural
limit = Maybe Natural
a} :: ListReplays)

-- | A name prefix to filter the replays returned. Only replays with name
-- that match the prefix are returned.
listReplays_namePrefix :: Lens.Lens' ListReplays (Prelude.Maybe Prelude.Text)
listReplays_namePrefix :: Lens' ListReplays (Maybe Text)
listReplays_namePrefix = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListReplays' {Maybe Text
namePrefix :: Maybe Text
$sel:namePrefix:ListReplays' :: ListReplays -> Maybe Text
namePrefix} -> Maybe Text
namePrefix) (\s :: ListReplays
s@ListReplays' {} Maybe Text
a -> ListReplays
s {$sel:namePrefix:ListReplays' :: Maybe Text
namePrefix = Maybe Text
a} :: ListReplays)

-- | The token returned by a previous call to retrieve the next set of
-- results.
listReplays_nextToken :: Lens.Lens' ListReplays (Prelude.Maybe Prelude.Text)
listReplays_nextToken :: Lens' ListReplays (Maybe Text)
listReplays_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListReplays' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:ListReplays' :: ListReplays -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: ListReplays
s@ListReplays' {} Maybe Text
a -> ListReplays
s {$sel:nextToken:ListReplays' :: Maybe Text
nextToken = Maybe Text
a} :: ListReplays)

-- | The state of the replay.
listReplays_state :: Lens.Lens' ListReplays (Prelude.Maybe ReplayState)
listReplays_state :: Lens' ListReplays (Maybe ReplayState)
listReplays_state = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListReplays' {Maybe ReplayState
state :: Maybe ReplayState
$sel:state:ListReplays' :: ListReplays -> Maybe ReplayState
state} -> Maybe ReplayState
state) (\s :: ListReplays
s@ListReplays' {} Maybe ReplayState
a -> ListReplays
s {$sel:state:ListReplays' :: Maybe ReplayState
state = Maybe ReplayState
a} :: ListReplays)

instance Core.AWSRequest ListReplays where
  type AWSResponse ListReplays = ListReplaysResponse
  request :: (Service -> Service) -> ListReplays -> Request ListReplays
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 ListReplays
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse ListReplays)))
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 [Replay] -> Int -> ListReplaysResponse
ListReplaysResponse'
            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
"NextToken")
            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
"Replays" 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 ListReplays where
  hashWithSalt :: Int -> ListReplays -> Int
hashWithSalt Int
_salt ListReplays' {Maybe Natural
Maybe Text
Maybe ReplayState
state :: Maybe ReplayState
nextToken :: Maybe Text
namePrefix :: Maybe Text
limit :: Maybe Natural
eventSourceArn :: Maybe Text
$sel:state:ListReplays' :: ListReplays -> Maybe ReplayState
$sel:nextToken:ListReplays' :: ListReplays -> Maybe Text
$sel:namePrefix:ListReplays' :: ListReplays -> Maybe Text
$sel:limit:ListReplays' :: ListReplays -> Maybe Natural
$sel:eventSourceArn:ListReplays' :: ListReplays -> Maybe Text
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
eventSourceArn
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
limit
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
namePrefix
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
nextToken
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ReplayState
state

instance Prelude.NFData ListReplays where
  rnf :: ListReplays -> ()
rnf ListReplays' {Maybe Natural
Maybe Text
Maybe ReplayState
state :: Maybe ReplayState
nextToken :: Maybe Text
namePrefix :: Maybe Text
limit :: Maybe Natural
eventSourceArn :: Maybe Text
$sel:state:ListReplays' :: ListReplays -> Maybe ReplayState
$sel:nextToken:ListReplays' :: ListReplays -> Maybe Text
$sel:namePrefix:ListReplays' :: ListReplays -> Maybe Text
$sel:limit:ListReplays' :: ListReplays -> Maybe Natural
$sel:eventSourceArn:ListReplays' :: ListReplays -> Maybe Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
eventSourceArn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
limit
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
namePrefix
      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 ReplayState
state

instance Data.ToHeaders ListReplays where
  toHeaders :: ListReplays -> ResponseHeaders
toHeaders =
    forall a b. a -> b -> a
Prelude.const
      ( forall a. Monoid a => [a] -> a
Prelude.mconcat
          [ HeaderName
"X-Amz-Target"
              forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# (ByteString
"AWSEvents.ListReplays" :: Prelude.ByteString),
            HeaderName
"Content-Type"
              forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
                          Prelude.ByteString
                      )
          ]
      )

instance Data.ToJSON ListReplays where
  toJSON :: ListReplays -> Value
toJSON ListReplays' {Maybe Natural
Maybe Text
Maybe ReplayState
state :: Maybe ReplayState
nextToken :: Maybe Text
namePrefix :: Maybe Text
limit :: Maybe Natural
eventSourceArn :: Maybe Text
$sel:state:ListReplays' :: ListReplays -> Maybe ReplayState
$sel:nextToken:ListReplays' :: ListReplays -> Maybe Text
$sel:namePrefix:ListReplays' :: ListReplays -> Maybe Text
$sel:limit:ListReplays' :: ListReplays -> Maybe Natural
$sel:eventSourceArn:ListReplays' :: ListReplays -> Maybe Text
..} =
    [Pair] -> Value
Data.object
      ( forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ (Key
"EventSourceArn" 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
eventSourceArn,
            (Key
"Limit" 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
limit,
            (Key
"NamePrefix" 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
namePrefix,
            (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
"State" 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 ReplayState
state
          ]
      )

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

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

-- | /See:/ 'newListReplaysResponse' smart constructor.
data ListReplaysResponse = ListReplaysResponse'
  { -- | The token returned by a previous call to retrieve the next set of
    -- results.
    ListReplaysResponse -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
    -- | An array of @Replay@ objects that contain information about the replay.
    ListReplaysResponse -> Maybe [Replay]
replays :: Prelude.Maybe [Replay],
    -- | The response's http status code.
    ListReplaysResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (ListReplaysResponse -> ListReplaysResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListReplaysResponse -> ListReplaysResponse -> Bool
$c/= :: ListReplaysResponse -> ListReplaysResponse -> Bool
== :: ListReplaysResponse -> ListReplaysResponse -> Bool
$c== :: ListReplaysResponse -> ListReplaysResponse -> Bool
Prelude.Eq, ReadPrec [ListReplaysResponse]
ReadPrec ListReplaysResponse
Int -> ReadS ListReplaysResponse
ReadS [ListReplaysResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListReplaysResponse]
$creadListPrec :: ReadPrec [ListReplaysResponse]
readPrec :: ReadPrec ListReplaysResponse
$creadPrec :: ReadPrec ListReplaysResponse
readList :: ReadS [ListReplaysResponse]
$creadList :: ReadS [ListReplaysResponse]
readsPrec :: Int -> ReadS ListReplaysResponse
$creadsPrec :: Int -> ReadS ListReplaysResponse
Prelude.Read, Int -> ListReplaysResponse -> ShowS
[ListReplaysResponse] -> ShowS
ListReplaysResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListReplaysResponse] -> ShowS
$cshowList :: [ListReplaysResponse] -> ShowS
show :: ListReplaysResponse -> String
$cshow :: ListReplaysResponse -> String
showsPrec :: Int -> ListReplaysResponse -> ShowS
$cshowsPrec :: Int -> ListReplaysResponse -> ShowS
Prelude.Show, forall x. Rep ListReplaysResponse x -> ListReplaysResponse
forall x. ListReplaysResponse -> Rep ListReplaysResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ListReplaysResponse x -> ListReplaysResponse
$cfrom :: forall x. ListReplaysResponse -> Rep ListReplaysResponse x
Prelude.Generic)

-- |
-- Create a value of 'ListReplaysResponse' 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:
--
-- 'nextToken', 'listReplaysResponse_nextToken' - The token returned by a previous call to retrieve the next set of
-- results.
--
-- 'replays', 'listReplaysResponse_replays' - An array of @Replay@ objects that contain information about the replay.
--
-- 'httpStatus', 'listReplaysResponse_httpStatus' - The response's http status code.
newListReplaysResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  ListReplaysResponse
newListReplaysResponse :: Int -> ListReplaysResponse
newListReplaysResponse Int
pHttpStatus_ =
  ListReplaysResponse'
    { $sel:nextToken:ListReplaysResponse' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing,
      $sel:replays:ListReplaysResponse' :: Maybe [Replay]
replays = forall a. Maybe a
Prelude.Nothing,
      $sel:httpStatus:ListReplaysResponse' :: Int
httpStatus = Int
pHttpStatus_
    }

-- | The token returned by a previous call to retrieve the next set of
-- results.
listReplaysResponse_nextToken :: Lens.Lens' ListReplaysResponse (Prelude.Maybe Prelude.Text)
listReplaysResponse_nextToken :: Lens' ListReplaysResponse (Maybe Text)
listReplaysResponse_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListReplaysResponse' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:ListReplaysResponse' :: ListReplaysResponse -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: ListReplaysResponse
s@ListReplaysResponse' {} Maybe Text
a -> ListReplaysResponse
s {$sel:nextToken:ListReplaysResponse' :: Maybe Text
nextToken = Maybe Text
a} :: ListReplaysResponse)

-- | An array of @Replay@ objects that contain information about the replay.
listReplaysResponse_replays :: Lens.Lens' ListReplaysResponse (Prelude.Maybe [Replay])
listReplaysResponse_replays :: Lens' ListReplaysResponse (Maybe [Replay])
listReplaysResponse_replays = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListReplaysResponse' {Maybe [Replay]
replays :: Maybe [Replay]
$sel:replays:ListReplaysResponse' :: ListReplaysResponse -> Maybe [Replay]
replays} -> Maybe [Replay]
replays) (\s :: ListReplaysResponse
s@ListReplaysResponse' {} Maybe [Replay]
a -> ListReplaysResponse
s {$sel:replays:ListReplaysResponse' :: Maybe [Replay]
replays = Maybe [Replay]
a} :: ListReplaysResponse) 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.
listReplaysResponse_httpStatus :: Lens.Lens' ListReplaysResponse Prelude.Int
listReplaysResponse_httpStatus :: Lens' ListReplaysResponse Int
listReplaysResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListReplaysResponse' {Int
httpStatus :: Int
$sel:httpStatus:ListReplaysResponse' :: ListReplaysResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: ListReplaysResponse
s@ListReplaysResponse' {} Int
a -> ListReplaysResponse
s {$sel:httpStatus:ListReplaysResponse' :: Int
httpStatus = Int
a} :: ListReplaysResponse)

instance Prelude.NFData ListReplaysResponse where
  rnf :: ListReplaysResponse -> ()
rnf ListReplaysResponse' {Int
Maybe [Replay]
Maybe Text
httpStatus :: Int
replays :: Maybe [Replay]
nextToken :: Maybe Text
$sel:httpStatus:ListReplaysResponse' :: ListReplaysResponse -> Int
$sel:replays:ListReplaysResponse' :: ListReplaysResponse -> Maybe [Replay]
$sel:nextToken:ListReplaysResponse' :: ListReplaysResponse -> Maybe Text
..} =
    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 [Replay]
replays
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus