{-# 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.DMS.DescribeReplicationInstanceTaskLogs
-- Copyright   : (c) 2013-2021 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Returns information about the task logs for the specified task.
module Amazonka.DMS.DescribeReplicationInstanceTaskLogs
  ( -- * Creating a Request
    DescribeReplicationInstanceTaskLogs (..),
    newDescribeReplicationInstanceTaskLogs,

    -- * Request Lenses
    describeReplicationInstanceTaskLogs_marker,
    describeReplicationInstanceTaskLogs_maxRecords,
    describeReplicationInstanceTaskLogs_replicationInstanceArn,

    -- * Destructuring the Response
    DescribeReplicationInstanceTaskLogsResponse (..),
    newDescribeReplicationInstanceTaskLogsResponse,

    -- * Response Lenses
    describeReplicationInstanceTaskLogsResponse_replicationInstanceTaskLogs,
    describeReplicationInstanceTaskLogsResponse_marker,
    describeReplicationInstanceTaskLogsResponse_replicationInstanceArn,
    describeReplicationInstanceTaskLogsResponse_httpStatus,
  )
where

import qualified Amazonka.Core as Core
import Amazonka.DMS.Types
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response

-- | /See:/ 'newDescribeReplicationInstanceTaskLogs' smart constructor.
data DescribeReplicationInstanceTaskLogs = DescribeReplicationInstanceTaskLogs'
  { -- | An optional pagination token provided by a previous request. If this
    -- parameter is specified, the response includes only records beyond the
    -- marker, up to the value specified by @MaxRecords@.
    DescribeReplicationInstanceTaskLogs -> Maybe Text
marker :: Prelude.Maybe Prelude.Text,
    -- | The maximum number of records to include in the response. If more
    -- records exist than the specified @MaxRecords@ value, a pagination token
    -- called a marker is included in the response so that the remaining
    -- results can be retrieved.
    --
    -- Default: 100
    --
    -- Constraints: Minimum 20, maximum 100.
    DescribeReplicationInstanceTaskLogs -> Maybe Int
maxRecords :: Prelude.Maybe Prelude.Int,
    -- | The Amazon Resource Name (ARN) of the replication instance.
    DescribeReplicationInstanceTaskLogs -> Text
replicationInstanceArn :: Prelude.Text
  }
  deriving (DescribeReplicationInstanceTaskLogs
-> DescribeReplicationInstanceTaskLogs -> Bool
(DescribeReplicationInstanceTaskLogs
 -> DescribeReplicationInstanceTaskLogs -> Bool)
-> (DescribeReplicationInstanceTaskLogs
    -> DescribeReplicationInstanceTaskLogs -> Bool)
-> Eq DescribeReplicationInstanceTaskLogs
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeReplicationInstanceTaskLogs
-> DescribeReplicationInstanceTaskLogs -> Bool
$c/= :: DescribeReplicationInstanceTaskLogs
-> DescribeReplicationInstanceTaskLogs -> Bool
== :: DescribeReplicationInstanceTaskLogs
-> DescribeReplicationInstanceTaskLogs -> Bool
$c== :: DescribeReplicationInstanceTaskLogs
-> DescribeReplicationInstanceTaskLogs -> Bool
Prelude.Eq, ReadPrec [DescribeReplicationInstanceTaskLogs]
ReadPrec DescribeReplicationInstanceTaskLogs
Int -> ReadS DescribeReplicationInstanceTaskLogs
ReadS [DescribeReplicationInstanceTaskLogs]
(Int -> ReadS DescribeReplicationInstanceTaskLogs)
-> ReadS [DescribeReplicationInstanceTaskLogs]
-> ReadPrec DescribeReplicationInstanceTaskLogs
-> ReadPrec [DescribeReplicationInstanceTaskLogs]
-> Read DescribeReplicationInstanceTaskLogs
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeReplicationInstanceTaskLogs]
$creadListPrec :: ReadPrec [DescribeReplicationInstanceTaskLogs]
readPrec :: ReadPrec DescribeReplicationInstanceTaskLogs
$creadPrec :: ReadPrec DescribeReplicationInstanceTaskLogs
readList :: ReadS [DescribeReplicationInstanceTaskLogs]
$creadList :: ReadS [DescribeReplicationInstanceTaskLogs]
readsPrec :: Int -> ReadS DescribeReplicationInstanceTaskLogs
$creadsPrec :: Int -> ReadS DescribeReplicationInstanceTaskLogs
Prelude.Read, Int -> DescribeReplicationInstanceTaskLogs -> ShowS
[DescribeReplicationInstanceTaskLogs] -> ShowS
DescribeReplicationInstanceTaskLogs -> String
(Int -> DescribeReplicationInstanceTaskLogs -> ShowS)
-> (DescribeReplicationInstanceTaskLogs -> String)
-> ([DescribeReplicationInstanceTaskLogs] -> ShowS)
-> Show DescribeReplicationInstanceTaskLogs
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeReplicationInstanceTaskLogs] -> ShowS
$cshowList :: [DescribeReplicationInstanceTaskLogs] -> ShowS
show :: DescribeReplicationInstanceTaskLogs -> String
$cshow :: DescribeReplicationInstanceTaskLogs -> String
showsPrec :: Int -> DescribeReplicationInstanceTaskLogs -> ShowS
$cshowsPrec :: Int -> DescribeReplicationInstanceTaskLogs -> ShowS
Prelude.Show, (forall x.
 DescribeReplicationInstanceTaskLogs
 -> Rep DescribeReplicationInstanceTaskLogs x)
-> (forall x.
    Rep DescribeReplicationInstanceTaskLogs x
    -> DescribeReplicationInstanceTaskLogs)
-> Generic DescribeReplicationInstanceTaskLogs
forall x.
Rep DescribeReplicationInstanceTaskLogs x
-> DescribeReplicationInstanceTaskLogs
forall x.
DescribeReplicationInstanceTaskLogs
-> Rep DescribeReplicationInstanceTaskLogs x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeReplicationInstanceTaskLogs x
-> DescribeReplicationInstanceTaskLogs
$cfrom :: forall x.
DescribeReplicationInstanceTaskLogs
-> Rep DescribeReplicationInstanceTaskLogs x
Prelude.Generic)

-- |
-- Create a value of 'DescribeReplicationInstanceTaskLogs' 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:
--
-- 'marker', 'describeReplicationInstanceTaskLogs_marker' - An optional pagination token provided by a previous request. If this
-- parameter is specified, the response includes only records beyond the
-- marker, up to the value specified by @MaxRecords@.
--
-- 'maxRecords', 'describeReplicationInstanceTaskLogs_maxRecords' - The maximum number of records to include in the response. If more
-- records exist than the specified @MaxRecords@ value, a pagination token
-- called a marker is included in the response so that the remaining
-- results can be retrieved.
--
-- Default: 100
--
-- Constraints: Minimum 20, maximum 100.
--
-- 'replicationInstanceArn', 'describeReplicationInstanceTaskLogs_replicationInstanceArn' - The Amazon Resource Name (ARN) of the replication instance.
newDescribeReplicationInstanceTaskLogs ::
  -- | 'replicationInstanceArn'
  Prelude.Text ->
  DescribeReplicationInstanceTaskLogs
newDescribeReplicationInstanceTaskLogs :: Text -> DescribeReplicationInstanceTaskLogs
newDescribeReplicationInstanceTaskLogs
  Text
pReplicationInstanceArn_ =
    DescribeReplicationInstanceTaskLogs' :: Maybe Text
-> Maybe Int -> Text -> DescribeReplicationInstanceTaskLogs
DescribeReplicationInstanceTaskLogs'
      { $sel:marker:DescribeReplicationInstanceTaskLogs' :: Maybe Text
marker =
          Maybe Text
forall a. Maybe a
Prelude.Nothing,
        $sel:maxRecords:DescribeReplicationInstanceTaskLogs' :: Maybe Int
maxRecords = Maybe Int
forall a. Maybe a
Prelude.Nothing,
        $sel:replicationInstanceArn:DescribeReplicationInstanceTaskLogs' :: Text
replicationInstanceArn =
          Text
pReplicationInstanceArn_
      }

-- | An optional pagination token provided by a previous request. If this
-- parameter is specified, the response includes only records beyond the
-- marker, up to the value specified by @MaxRecords@.
describeReplicationInstanceTaskLogs_marker :: Lens.Lens' DescribeReplicationInstanceTaskLogs (Prelude.Maybe Prelude.Text)
describeReplicationInstanceTaskLogs_marker :: (Maybe Text -> f (Maybe Text))
-> DescribeReplicationInstanceTaskLogs
-> f DescribeReplicationInstanceTaskLogs
describeReplicationInstanceTaskLogs_marker = (DescribeReplicationInstanceTaskLogs -> Maybe Text)
-> (DescribeReplicationInstanceTaskLogs
    -> Maybe Text -> DescribeReplicationInstanceTaskLogs)
-> Lens
     DescribeReplicationInstanceTaskLogs
     DescribeReplicationInstanceTaskLogs
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeReplicationInstanceTaskLogs' {Maybe Text
marker :: Maybe Text
$sel:marker:DescribeReplicationInstanceTaskLogs' :: DescribeReplicationInstanceTaskLogs -> Maybe Text
marker} -> Maybe Text
marker) (\s :: DescribeReplicationInstanceTaskLogs
s@DescribeReplicationInstanceTaskLogs' {} Maybe Text
a -> DescribeReplicationInstanceTaskLogs
s {$sel:marker:DescribeReplicationInstanceTaskLogs' :: Maybe Text
marker = Maybe Text
a} :: DescribeReplicationInstanceTaskLogs)

-- | The maximum number of records to include in the response. If more
-- records exist than the specified @MaxRecords@ value, a pagination token
-- called a marker is included in the response so that the remaining
-- results can be retrieved.
--
-- Default: 100
--
-- Constraints: Minimum 20, maximum 100.
describeReplicationInstanceTaskLogs_maxRecords :: Lens.Lens' DescribeReplicationInstanceTaskLogs (Prelude.Maybe Prelude.Int)
describeReplicationInstanceTaskLogs_maxRecords :: (Maybe Int -> f (Maybe Int))
-> DescribeReplicationInstanceTaskLogs
-> f DescribeReplicationInstanceTaskLogs
describeReplicationInstanceTaskLogs_maxRecords = (DescribeReplicationInstanceTaskLogs -> Maybe Int)
-> (DescribeReplicationInstanceTaskLogs
    -> Maybe Int -> DescribeReplicationInstanceTaskLogs)
-> Lens
     DescribeReplicationInstanceTaskLogs
     DescribeReplicationInstanceTaskLogs
     (Maybe Int)
     (Maybe Int)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeReplicationInstanceTaskLogs' {Maybe Int
maxRecords :: Maybe Int
$sel:maxRecords:DescribeReplicationInstanceTaskLogs' :: DescribeReplicationInstanceTaskLogs -> Maybe Int
maxRecords} -> Maybe Int
maxRecords) (\s :: DescribeReplicationInstanceTaskLogs
s@DescribeReplicationInstanceTaskLogs' {} Maybe Int
a -> DescribeReplicationInstanceTaskLogs
s {$sel:maxRecords:DescribeReplicationInstanceTaskLogs' :: Maybe Int
maxRecords = Maybe Int
a} :: DescribeReplicationInstanceTaskLogs)

-- | The Amazon Resource Name (ARN) of the replication instance.
describeReplicationInstanceTaskLogs_replicationInstanceArn :: Lens.Lens' DescribeReplicationInstanceTaskLogs Prelude.Text
describeReplicationInstanceTaskLogs_replicationInstanceArn :: (Text -> f Text)
-> DescribeReplicationInstanceTaskLogs
-> f DescribeReplicationInstanceTaskLogs
describeReplicationInstanceTaskLogs_replicationInstanceArn = (DescribeReplicationInstanceTaskLogs -> Text)
-> (DescribeReplicationInstanceTaskLogs
    -> Text -> DescribeReplicationInstanceTaskLogs)
-> Lens
     DescribeReplicationInstanceTaskLogs
     DescribeReplicationInstanceTaskLogs
     Text
     Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeReplicationInstanceTaskLogs' {Text
replicationInstanceArn :: Text
$sel:replicationInstanceArn:DescribeReplicationInstanceTaskLogs' :: DescribeReplicationInstanceTaskLogs -> Text
replicationInstanceArn} -> Text
replicationInstanceArn) (\s :: DescribeReplicationInstanceTaskLogs
s@DescribeReplicationInstanceTaskLogs' {} Text
a -> DescribeReplicationInstanceTaskLogs
s {$sel:replicationInstanceArn:DescribeReplicationInstanceTaskLogs' :: Text
replicationInstanceArn = Text
a} :: DescribeReplicationInstanceTaskLogs)

instance
  Core.AWSRequest
    DescribeReplicationInstanceTaskLogs
  where
  type
    AWSResponse DescribeReplicationInstanceTaskLogs =
      DescribeReplicationInstanceTaskLogsResponse
  request :: DescribeReplicationInstanceTaskLogs
-> Request DescribeReplicationInstanceTaskLogs
request = Service
-> DescribeReplicationInstanceTaskLogs
-> Request DescribeReplicationInstanceTaskLogs
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON Service
defaultService
  response :: Logger
-> Service
-> Proxy DescribeReplicationInstanceTaskLogs
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse (AWSResponse DescribeReplicationInstanceTaskLogs)))
response =
    (Int
 -> ResponseHeaders
 -> Object
 -> Either String (AWSResponse DescribeReplicationInstanceTaskLogs))
-> Logger
-> Service
-> Proxy DescribeReplicationInstanceTaskLogs
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse (AWSResponse DescribeReplicationInstanceTaskLogs)))
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> Logger
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
      ( \Int
s ResponseHeaders
h Object
x ->
          Maybe [ReplicationInstanceTaskLog]
-> Maybe Text
-> Maybe Text
-> Int
-> DescribeReplicationInstanceTaskLogsResponse
DescribeReplicationInstanceTaskLogsResponse'
            (Maybe [ReplicationInstanceTaskLog]
 -> Maybe Text
 -> Maybe Text
 -> Int
 -> DescribeReplicationInstanceTaskLogsResponse)
-> Either String (Maybe [ReplicationInstanceTaskLog])
-> Either
     String
     (Maybe Text
      -> Maybe Text
      -> Int
      -> DescribeReplicationInstanceTaskLogsResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ( Object
x Object
-> Text
-> Either String (Maybe (Maybe [ReplicationInstanceTaskLog]))
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"ReplicationInstanceTaskLogs"
                            Either String (Maybe (Maybe [ReplicationInstanceTaskLog]))
-> Maybe [ReplicationInstanceTaskLog]
-> Either String (Maybe [ReplicationInstanceTaskLog])
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ Maybe [ReplicationInstanceTaskLog]
forall a. Monoid a => a
Prelude.mempty
                        )
              Either
  String
  (Maybe Text
   -> Maybe Text
   -> Int
   -> DescribeReplicationInstanceTaskLogsResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe Text -> Int -> DescribeReplicationInstanceTaskLogsResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"Marker")
              Either
  String
  (Maybe Text -> Int -> DescribeReplicationInstanceTaskLogsResponse)
-> Either String (Maybe Text)
-> Either
     String (Int -> DescribeReplicationInstanceTaskLogsResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"ReplicationInstanceArn")
              Either String (Int -> DescribeReplicationInstanceTaskLogsResponse)
-> Either String Int
-> Either String DescribeReplicationInstanceTaskLogsResponse
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Int -> Either String Int
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (Int -> Int
forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
      )

instance
  Prelude.Hashable
    DescribeReplicationInstanceTaskLogs

instance
  Prelude.NFData
    DescribeReplicationInstanceTaskLogs

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

instance
  Core.ToJSON
    DescribeReplicationInstanceTaskLogs
  where
  toJSON :: DescribeReplicationInstanceTaskLogs -> Value
toJSON DescribeReplicationInstanceTaskLogs' {Maybe Int
Maybe Text
Text
replicationInstanceArn :: Text
maxRecords :: Maybe Int
marker :: Maybe Text
$sel:replicationInstanceArn:DescribeReplicationInstanceTaskLogs' :: DescribeReplicationInstanceTaskLogs -> Text
$sel:maxRecords:DescribeReplicationInstanceTaskLogs' :: DescribeReplicationInstanceTaskLogs -> Maybe Int
$sel:marker:DescribeReplicationInstanceTaskLogs' :: DescribeReplicationInstanceTaskLogs -> Maybe Text
..} =
    [Pair] -> Value
Core.object
      ( [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ (Text
"Marker" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
marker,
            (Text
"MaxRecords" Text -> Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Int -> Pair) -> Maybe Int -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Int
maxRecords,
            Pair -> Maybe Pair
forall a. a -> Maybe a
Prelude.Just
              ( Text
"ReplicationInstanceArn"
                  Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..= Text
replicationInstanceArn
              )
          ]
      )

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

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

-- | /See:/ 'newDescribeReplicationInstanceTaskLogsResponse' smart constructor.
data DescribeReplicationInstanceTaskLogsResponse = DescribeReplicationInstanceTaskLogsResponse'
  { -- | An array of replication task log metadata. Each member of the array
    -- contains the replication task name, ARN, and task log size (in bytes).
    DescribeReplicationInstanceTaskLogsResponse
-> Maybe [ReplicationInstanceTaskLog]
replicationInstanceTaskLogs :: Prelude.Maybe [ReplicationInstanceTaskLog],
    -- | An optional pagination token provided by a previous request. If this
    -- parameter is specified, the response includes only records beyond the
    -- marker, up to the value specified by @MaxRecords@.
    DescribeReplicationInstanceTaskLogsResponse -> Maybe Text
marker :: Prelude.Maybe Prelude.Text,
    -- | The Amazon Resource Name (ARN) of the replication instance.
    DescribeReplicationInstanceTaskLogsResponse -> Maybe Text
replicationInstanceArn :: Prelude.Maybe Prelude.Text,
    -- | The response's http status code.
    DescribeReplicationInstanceTaskLogsResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (DescribeReplicationInstanceTaskLogsResponse
-> DescribeReplicationInstanceTaskLogsResponse -> Bool
(DescribeReplicationInstanceTaskLogsResponse
 -> DescribeReplicationInstanceTaskLogsResponse -> Bool)
-> (DescribeReplicationInstanceTaskLogsResponse
    -> DescribeReplicationInstanceTaskLogsResponse -> Bool)
-> Eq DescribeReplicationInstanceTaskLogsResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeReplicationInstanceTaskLogsResponse
-> DescribeReplicationInstanceTaskLogsResponse -> Bool
$c/= :: DescribeReplicationInstanceTaskLogsResponse
-> DescribeReplicationInstanceTaskLogsResponse -> Bool
== :: DescribeReplicationInstanceTaskLogsResponse
-> DescribeReplicationInstanceTaskLogsResponse -> Bool
$c== :: DescribeReplicationInstanceTaskLogsResponse
-> DescribeReplicationInstanceTaskLogsResponse -> Bool
Prelude.Eq, ReadPrec [DescribeReplicationInstanceTaskLogsResponse]
ReadPrec DescribeReplicationInstanceTaskLogsResponse
Int -> ReadS DescribeReplicationInstanceTaskLogsResponse
ReadS [DescribeReplicationInstanceTaskLogsResponse]
(Int -> ReadS DescribeReplicationInstanceTaskLogsResponse)
-> ReadS [DescribeReplicationInstanceTaskLogsResponse]
-> ReadPrec DescribeReplicationInstanceTaskLogsResponse
-> ReadPrec [DescribeReplicationInstanceTaskLogsResponse]
-> Read DescribeReplicationInstanceTaskLogsResponse
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeReplicationInstanceTaskLogsResponse]
$creadListPrec :: ReadPrec [DescribeReplicationInstanceTaskLogsResponse]
readPrec :: ReadPrec DescribeReplicationInstanceTaskLogsResponse
$creadPrec :: ReadPrec DescribeReplicationInstanceTaskLogsResponse
readList :: ReadS [DescribeReplicationInstanceTaskLogsResponse]
$creadList :: ReadS [DescribeReplicationInstanceTaskLogsResponse]
readsPrec :: Int -> ReadS DescribeReplicationInstanceTaskLogsResponse
$creadsPrec :: Int -> ReadS DescribeReplicationInstanceTaskLogsResponse
Prelude.Read, Int -> DescribeReplicationInstanceTaskLogsResponse -> ShowS
[DescribeReplicationInstanceTaskLogsResponse] -> ShowS
DescribeReplicationInstanceTaskLogsResponse -> String
(Int -> DescribeReplicationInstanceTaskLogsResponse -> ShowS)
-> (DescribeReplicationInstanceTaskLogsResponse -> String)
-> ([DescribeReplicationInstanceTaskLogsResponse] -> ShowS)
-> Show DescribeReplicationInstanceTaskLogsResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeReplicationInstanceTaskLogsResponse] -> ShowS
$cshowList :: [DescribeReplicationInstanceTaskLogsResponse] -> ShowS
show :: DescribeReplicationInstanceTaskLogsResponse -> String
$cshow :: DescribeReplicationInstanceTaskLogsResponse -> String
showsPrec :: Int -> DescribeReplicationInstanceTaskLogsResponse -> ShowS
$cshowsPrec :: Int -> DescribeReplicationInstanceTaskLogsResponse -> ShowS
Prelude.Show, (forall x.
 DescribeReplicationInstanceTaskLogsResponse
 -> Rep DescribeReplicationInstanceTaskLogsResponse x)
-> (forall x.
    Rep DescribeReplicationInstanceTaskLogsResponse x
    -> DescribeReplicationInstanceTaskLogsResponse)
-> Generic DescribeReplicationInstanceTaskLogsResponse
forall x.
Rep DescribeReplicationInstanceTaskLogsResponse x
-> DescribeReplicationInstanceTaskLogsResponse
forall x.
DescribeReplicationInstanceTaskLogsResponse
-> Rep DescribeReplicationInstanceTaskLogsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeReplicationInstanceTaskLogsResponse x
-> DescribeReplicationInstanceTaskLogsResponse
$cfrom :: forall x.
DescribeReplicationInstanceTaskLogsResponse
-> Rep DescribeReplicationInstanceTaskLogsResponse x
Prelude.Generic)

-- |
-- Create a value of 'DescribeReplicationInstanceTaskLogsResponse' 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:
--
-- 'replicationInstanceTaskLogs', 'describeReplicationInstanceTaskLogsResponse_replicationInstanceTaskLogs' - An array of replication task log metadata. Each member of the array
-- contains the replication task name, ARN, and task log size (in bytes).
--
-- 'marker', 'describeReplicationInstanceTaskLogsResponse_marker' - An optional pagination token provided by a previous request. If this
-- parameter is specified, the response includes only records beyond the
-- marker, up to the value specified by @MaxRecords@.
--
-- 'replicationInstanceArn', 'describeReplicationInstanceTaskLogsResponse_replicationInstanceArn' - The Amazon Resource Name (ARN) of the replication instance.
--
-- 'httpStatus', 'describeReplicationInstanceTaskLogsResponse_httpStatus' - The response's http status code.
newDescribeReplicationInstanceTaskLogsResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  DescribeReplicationInstanceTaskLogsResponse
newDescribeReplicationInstanceTaskLogsResponse :: Int -> DescribeReplicationInstanceTaskLogsResponse
newDescribeReplicationInstanceTaskLogsResponse
  Int
pHttpStatus_ =
    DescribeReplicationInstanceTaskLogsResponse' :: Maybe [ReplicationInstanceTaskLog]
-> Maybe Text
-> Maybe Text
-> Int
-> DescribeReplicationInstanceTaskLogsResponse
DescribeReplicationInstanceTaskLogsResponse'
      { $sel:replicationInstanceTaskLogs:DescribeReplicationInstanceTaskLogsResponse' :: Maybe [ReplicationInstanceTaskLog]
replicationInstanceTaskLogs =
          Maybe [ReplicationInstanceTaskLog]
forall a. Maybe a
Prelude.Nothing,
        $sel:marker:DescribeReplicationInstanceTaskLogsResponse' :: Maybe Text
marker = Maybe Text
forall a. Maybe a
Prelude.Nothing,
        $sel:replicationInstanceArn:DescribeReplicationInstanceTaskLogsResponse' :: Maybe Text
replicationInstanceArn =
          Maybe Text
forall a. Maybe a
Prelude.Nothing,
        $sel:httpStatus:DescribeReplicationInstanceTaskLogsResponse' :: Int
httpStatus = Int
pHttpStatus_
      }

-- | An array of replication task log metadata. Each member of the array
-- contains the replication task name, ARN, and task log size (in bytes).
describeReplicationInstanceTaskLogsResponse_replicationInstanceTaskLogs :: Lens.Lens' DescribeReplicationInstanceTaskLogsResponse (Prelude.Maybe [ReplicationInstanceTaskLog])
describeReplicationInstanceTaskLogsResponse_replicationInstanceTaskLogs :: (Maybe [ReplicationInstanceTaskLog]
 -> f (Maybe [ReplicationInstanceTaskLog]))
-> DescribeReplicationInstanceTaskLogsResponse
-> f DescribeReplicationInstanceTaskLogsResponse
describeReplicationInstanceTaskLogsResponse_replicationInstanceTaskLogs = (DescribeReplicationInstanceTaskLogsResponse
 -> Maybe [ReplicationInstanceTaskLog])
-> (DescribeReplicationInstanceTaskLogsResponse
    -> Maybe [ReplicationInstanceTaskLog]
    -> DescribeReplicationInstanceTaskLogsResponse)
-> Lens
     DescribeReplicationInstanceTaskLogsResponse
     DescribeReplicationInstanceTaskLogsResponse
     (Maybe [ReplicationInstanceTaskLog])
     (Maybe [ReplicationInstanceTaskLog])
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeReplicationInstanceTaskLogsResponse' {Maybe [ReplicationInstanceTaskLog]
replicationInstanceTaskLogs :: Maybe [ReplicationInstanceTaskLog]
$sel:replicationInstanceTaskLogs:DescribeReplicationInstanceTaskLogsResponse' :: DescribeReplicationInstanceTaskLogsResponse
-> Maybe [ReplicationInstanceTaskLog]
replicationInstanceTaskLogs} -> Maybe [ReplicationInstanceTaskLog]
replicationInstanceTaskLogs) (\s :: DescribeReplicationInstanceTaskLogsResponse
s@DescribeReplicationInstanceTaskLogsResponse' {} Maybe [ReplicationInstanceTaskLog]
a -> DescribeReplicationInstanceTaskLogsResponse
s {$sel:replicationInstanceTaskLogs:DescribeReplicationInstanceTaskLogsResponse' :: Maybe [ReplicationInstanceTaskLog]
replicationInstanceTaskLogs = Maybe [ReplicationInstanceTaskLog]
a} :: DescribeReplicationInstanceTaskLogsResponse) ((Maybe [ReplicationInstanceTaskLog]
  -> f (Maybe [ReplicationInstanceTaskLog]))
 -> DescribeReplicationInstanceTaskLogsResponse
 -> f DescribeReplicationInstanceTaskLogsResponse)
-> ((Maybe [ReplicationInstanceTaskLog]
     -> f (Maybe [ReplicationInstanceTaskLog]))
    -> Maybe [ReplicationInstanceTaskLog]
    -> f (Maybe [ReplicationInstanceTaskLog]))
-> (Maybe [ReplicationInstanceTaskLog]
    -> f (Maybe [ReplicationInstanceTaskLog]))
-> DescribeReplicationInstanceTaskLogsResponse
-> f DescribeReplicationInstanceTaskLogsResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso
  [ReplicationInstanceTaskLog]
  [ReplicationInstanceTaskLog]
  [ReplicationInstanceTaskLog]
  [ReplicationInstanceTaskLog]
-> Iso
     (Maybe [ReplicationInstanceTaskLog])
     (Maybe [ReplicationInstanceTaskLog])
     (Maybe [ReplicationInstanceTaskLog])
     (Maybe [ReplicationInstanceTaskLog])
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 AnIso
  [ReplicationInstanceTaskLog]
  [ReplicationInstanceTaskLog]
  [ReplicationInstanceTaskLog]
  [ReplicationInstanceTaskLog]
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced

-- | An optional pagination token provided by a previous request. If this
-- parameter is specified, the response includes only records beyond the
-- marker, up to the value specified by @MaxRecords@.
describeReplicationInstanceTaskLogsResponse_marker :: Lens.Lens' DescribeReplicationInstanceTaskLogsResponse (Prelude.Maybe Prelude.Text)
describeReplicationInstanceTaskLogsResponse_marker :: (Maybe Text -> f (Maybe Text))
-> DescribeReplicationInstanceTaskLogsResponse
-> f DescribeReplicationInstanceTaskLogsResponse
describeReplicationInstanceTaskLogsResponse_marker = (DescribeReplicationInstanceTaskLogsResponse -> Maybe Text)
-> (DescribeReplicationInstanceTaskLogsResponse
    -> Maybe Text -> DescribeReplicationInstanceTaskLogsResponse)
-> Lens
     DescribeReplicationInstanceTaskLogsResponse
     DescribeReplicationInstanceTaskLogsResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeReplicationInstanceTaskLogsResponse' {Maybe Text
marker :: Maybe Text
$sel:marker:DescribeReplicationInstanceTaskLogsResponse' :: DescribeReplicationInstanceTaskLogsResponse -> Maybe Text
marker} -> Maybe Text
marker) (\s :: DescribeReplicationInstanceTaskLogsResponse
s@DescribeReplicationInstanceTaskLogsResponse' {} Maybe Text
a -> DescribeReplicationInstanceTaskLogsResponse
s {$sel:marker:DescribeReplicationInstanceTaskLogsResponse' :: Maybe Text
marker = Maybe Text
a} :: DescribeReplicationInstanceTaskLogsResponse)

-- | The Amazon Resource Name (ARN) of the replication instance.
describeReplicationInstanceTaskLogsResponse_replicationInstanceArn :: Lens.Lens' DescribeReplicationInstanceTaskLogsResponse (Prelude.Maybe Prelude.Text)
describeReplicationInstanceTaskLogsResponse_replicationInstanceArn :: (Maybe Text -> f (Maybe Text))
-> DescribeReplicationInstanceTaskLogsResponse
-> f DescribeReplicationInstanceTaskLogsResponse
describeReplicationInstanceTaskLogsResponse_replicationInstanceArn = (DescribeReplicationInstanceTaskLogsResponse -> Maybe Text)
-> (DescribeReplicationInstanceTaskLogsResponse
    -> Maybe Text -> DescribeReplicationInstanceTaskLogsResponse)
-> Lens
     DescribeReplicationInstanceTaskLogsResponse
     DescribeReplicationInstanceTaskLogsResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeReplicationInstanceTaskLogsResponse' {Maybe Text
replicationInstanceArn :: Maybe Text
$sel:replicationInstanceArn:DescribeReplicationInstanceTaskLogsResponse' :: DescribeReplicationInstanceTaskLogsResponse -> Maybe Text
replicationInstanceArn} -> Maybe Text
replicationInstanceArn) (\s :: DescribeReplicationInstanceTaskLogsResponse
s@DescribeReplicationInstanceTaskLogsResponse' {} Maybe Text
a -> DescribeReplicationInstanceTaskLogsResponse
s {$sel:replicationInstanceArn:DescribeReplicationInstanceTaskLogsResponse' :: Maybe Text
replicationInstanceArn = Maybe Text
a} :: DescribeReplicationInstanceTaskLogsResponse)

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

instance
  Prelude.NFData
    DescribeReplicationInstanceTaskLogsResponse