{-# 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 #-}
module Amazonka.RDS.BacktrackDBCluster
(
BacktrackDBCluster (..),
newBacktrackDBCluster,
backtrackDBCluster_force,
backtrackDBCluster_useEarliestTimeOnPointInTimeUnavailable,
backtrackDBCluster_dbClusterIdentifier,
backtrackDBCluster_backtrackTo,
DBClusterBacktrack (..),
newDBClusterBacktrack,
dbClusterBacktrack_backtrackIdentifier,
dbClusterBacktrack_backtrackRequestCreationTime,
dbClusterBacktrack_backtrackTo,
dbClusterBacktrack_backtrackedFrom,
dbClusterBacktrack_dbClusterIdentifier,
dbClusterBacktrack_status,
)
where
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 Amazonka.RDS.Types
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data BacktrackDBCluster = BacktrackDBCluster'
{
BacktrackDBCluster -> Maybe Bool
force :: Prelude.Maybe Prelude.Bool,
BacktrackDBCluster -> Maybe Bool
useEarliestTimeOnPointInTimeUnavailable :: Prelude.Maybe Prelude.Bool,
BacktrackDBCluster -> Text
dbClusterIdentifier :: Prelude.Text,
BacktrackDBCluster -> ISO8601
backtrackTo :: Data.ISO8601
}
deriving (BacktrackDBCluster -> BacktrackDBCluster -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: BacktrackDBCluster -> BacktrackDBCluster -> Bool
$c/= :: BacktrackDBCluster -> BacktrackDBCluster -> Bool
== :: BacktrackDBCluster -> BacktrackDBCluster -> Bool
$c== :: BacktrackDBCluster -> BacktrackDBCluster -> Bool
Prelude.Eq, ReadPrec [BacktrackDBCluster]
ReadPrec BacktrackDBCluster
Int -> ReadS BacktrackDBCluster
ReadS [BacktrackDBCluster]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [BacktrackDBCluster]
$creadListPrec :: ReadPrec [BacktrackDBCluster]
readPrec :: ReadPrec BacktrackDBCluster
$creadPrec :: ReadPrec BacktrackDBCluster
readList :: ReadS [BacktrackDBCluster]
$creadList :: ReadS [BacktrackDBCluster]
readsPrec :: Int -> ReadS BacktrackDBCluster
$creadsPrec :: Int -> ReadS BacktrackDBCluster
Prelude.Read, Int -> BacktrackDBCluster -> ShowS
[BacktrackDBCluster] -> ShowS
BacktrackDBCluster -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [BacktrackDBCluster] -> ShowS
$cshowList :: [BacktrackDBCluster] -> ShowS
show :: BacktrackDBCluster -> String
$cshow :: BacktrackDBCluster -> String
showsPrec :: Int -> BacktrackDBCluster -> ShowS
$cshowsPrec :: Int -> BacktrackDBCluster -> ShowS
Prelude.Show, forall x. Rep BacktrackDBCluster x -> BacktrackDBCluster
forall x. BacktrackDBCluster -> Rep BacktrackDBCluster x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep BacktrackDBCluster x -> BacktrackDBCluster
$cfrom :: forall x. BacktrackDBCluster -> Rep BacktrackDBCluster x
Prelude.Generic)
newBacktrackDBCluster ::
Prelude.Text ->
Prelude.UTCTime ->
BacktrackDBCluster
newBacktrackDBCluster :: Text -> UTCTime -> BacktrackDBCluster
newBacktrackDBCluster
Text
pDBClusterIdentifier_
UTCTime
pBacktrackTo_ =
BacktrackDBCluster'
{ $sel:force:BacktrackDBCluster' :: Maybe Bool
force = forall a. Maybe a
Prelude.Nothing,
$sel:useEarliestTimeOnPointInTimeUnavailable:BacktrackDBCluster' :: Maybe Bool
useEarliestTimeOnPointInTimeUnavailable =
forall a. Maybe a
Prelude.Nothing,
$sel:dbClusterIdentifier:BacktrackDBCluster' :: Text
dbClusterIdentifier = Text
pDBClusterIdentifier_,
$sel:backtrackTo:BacktrackDBCluster' :: ISO8601
backtrackTo = forall (a :: Format). Iso' (Time a) UTCTime
Data._Time forall t b. AReview t b -> b -> t
Lens.# UTCTime
pBacktrackTo_
}
backtrackDBCluster_force :: Lens.Lens' BacktrackDBCluster (Prelude.Maybe Prelude.Bool)
backtrackDBCluster_force :: Lens' BacktrackDBCluster (Maybe Bool)
backtrackDBCluster_force = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BacktrackDBCluster' {Maybe Bool
force :: Maybe Bool
$sel:force:BacktrackDBCluster' :: BacktrackDBCluster -> Maybe Bool
force} -> Maybe Bool
force) (\s :: BacktrackDBCluster
s@BacktrackDBCluster' {} Maybe Bool
a -> BacktrackDBCluster
s {$sel:force:BacktrackDBCluster' :: Maybe Bool
force = Maybe Bool
a} :: BacktrackDBCluster)
backtrackDBCluster_useEarliestTimeOnPointInTimeUnavailable :: Lens.Lens' BacktrackDBCluster (Prelude.Maybe Prelude.Bool)
backtrackDBCluster_useEarliestTimeOnPointInTimeUnavailable :: Lens' BacktrackDBCluster (Maybe Bool)
backtrackDBCluster_useEarliestTimeOnPointInTimeUnavailable = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BacktrackDBCluster' {Maybe Bool
useEarliestTimeOnPointInTimeUnavailable :: Maybe Bool
$sel:useEarliestTimeOnPointInTimeUnavailable:BacktrackDBCluster' :: BacktrackDBCluster -> Maybe Bool
useEarliestTimeOnPointInTimeUnavailable} -> Maybe Bool
useEarliestTimeOnPointInTimeUnavailable) (\s :: BacktrackDBCluster
s@BacktrackDBCluster' {} Maybe Bool
a -> BacktrackDBCluster
s {$sel:useEarliestTimeOnPointInTimeUnavailable:BacktrackDBCluster' :: Maybe Bool
useEarliestTimeOnPointInTimeUnavailable = Maybe Bool
a} :: BacktrackDBCluster)
backtrackDBCluster_dbClusterIdentifier :: Lens.Lens' BacktrackDBCluster Prelude.Text
backtrackDBCluster_dbClusterIdentifier :: Lens' BacktrackDBCluster Text
backtrackDBCluster_dbClusterIdentifier = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BacktrackDBCluster' {Text
dbClusterIdentifier :: Text
$sel:dbClusterIdentifier:BacktrackDBCluster' :: BacktrackDBCluster -> Text
dbClusterIdentifier} -> Text
dbClusterIdentifier) (\s :: BacktrackDBCluster
s@BacktrackDBCluster' {} Text
a -> BacktrackDBCluster
s {$sel:dbClusterIdentifier:BacktrackDBCluster' :: Text
dbClusterIdentifier = Text
a} :: BacktrackDBCluster)
backtrackDBCluster_backtrackTo :: Lens.Lens' BacktrackDBCluster Prelude.UTCTime
backtrackDBCluster_backtrackTo :: Lens' BacktrackDBCluster UTCTime
backtrackDBCluster_backtrackTo = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\BacktrackDBCluster' {ISO8601
backtrackTo :: ISO8601
$sel:backtrackTo:BacktrackDBCluster' :: BacktrackDBCluster -> ISO8601
backtrackTo} -> ISO8601
backtrackTo) (\s :: BacktrackDBCluster
s@BacktrackDBCluster' {} ISO8601
a -> BacktrackDBCluster
s {$sel:backtrackTo:BacktrackDBCluster' :: ISO8601
backtrackTo = ISO8601
a} :: BacktrackDBCluster) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (a :: Format). Iso' (Time a) UTCTime
Data._Time
instance Core.AWSRequest BacktrackDBCluster where
type
AWSResponse BacktrackDBCluster =
DBClusterBacktrack
request :: (Service -> Service)
-> BacktrackDBCluster -> Request BacktrackDBCluster
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.postQuery (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy BacktrackDBCluster
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse BacktrackDBCluster)))
response =
forall (m :: * -> *) a.
MonadResource m =>
Text
-> (Int
-> ResponseHeaders -> [Node] -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveXMLWrapper
Text
"BacktrackDBClusterResult"
(\Int
s ResponseHeaders
h [Node]
x -> forall a. FromXML a => [Node] -> Either String a
Data.parseXML [Node]
x)
instance Prelude.Hashable BacktrackDBCluster where
hashWithSalt :: Int -> BacktrackDBCluster -> Int
hashWithSalt Int
_salt BacktrackDBCluster' {Maybe Bool
Text
ISO8601
backtrackTo :: ISO8601
dbClusterIdentifier :: Text
useEarliestTimeOnPointInTimeUnavailable :: Maybe Bool
force :: Maybe Bool
$sel:backtrackTo:BacktrackDBCluster' :: BacktrackDBCluster -> ISO8601
$sel:dbClusterIdentifier:BacktrackDBCluster' :: BacktrackDBCluster -> Text
$sel:useEarliestTimeOnPointInTimeUnavailable:BacktrackDBCluster' :: BacktrackDBCluster -> Maybe Bool
$sel:force:BacktrackDBCluster' :: BacktrackDBCluster -> Maybe Bool
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
force
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
useEarliestTimeOnPointInTimeUnavailable
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
dbClusterIdentifier
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` ISO8601
backtrackTo
instance Prelude.NFData BacktrackDBCluster where
rnf :: BacktrackDBCluster -> ()
rnf BacktrackDBCluster' {Maybe Bool
Text
ISO8601
backtrackTo :: ISO8601
dbClusterIdentifier :: Text
useEarliestTimeOnPointInTimeUnavailable :: Maybe Bool
force :: Maybe Bool
$sel:backtrackTo:BacktrackDBCluster' :: BacktrackDBCluster -> ISO8601
$sel:dbClusterIdentifier:BacktrackDBCluster' :: BacktrackDBCluster -> Text
$sel:useEarliestTimeOnPointInTimeUnavailable:BacktrackDBCluster' :: BacktrackDBCluster -> Maybe Bool
$sel:force:BacktrackDBCluster' :: BacktrackDBCluster -> Maybe Bool
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
force
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
useEarliestTimeOnPointInTimeUnavailable
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
dbClusterIdentifier
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf ISO8601
backtrackTo
instance Data.ToHeaders BacktrackDBCluster where
toHeaders :: BacktrackDBCluster -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath BacktrackDBCluster where
toPath :: BacktrackDBCluster -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery BacktrackDBCluster where
toQuery :: BacktrackDBCluster -> QueryString
toQuery BacktrackDBCluster' {Maybe Bool
Text
ISO8601
backtrackTo :: ISO8601
dbClusterIdentifier :: Text
useEarliestTimeOnPointInTimeUnavailable :: Maybe Bool
force :: Maybe Bool
$sel:backtrackTo:BacktrackDBCluster' :: BacktrackDBCluster -> ISO8601
$sel:dbClusterIdentifier:BacktrackDBCluster' :: BacktrackDBCluster -> Text
$sel:useEarliestTimeOnPointInTimeUnavailable:BacktrackDBCluster' :: BacktrackDBCluster -> Maybe Bool
$sel:force:BacktrackDBCluster' :: BacktrackDBCluster -> Maybe Bool
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"BacktrackDBCluster" :: Prelude.ByteString),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2014-10-31" :: Prelude.ByteString),
ByteString
"Force" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Bool
force,
ByteString
"UseEarliestTimeOnPointInTimeUnavailable"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Bool
useEarliestTimeOnPointInTimeUnavailable,
ByteString
"DBClusterIdentifier" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
dbClusterIdentifier,
ByteString
"BacktrackTo" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: ISO8601
backtrackTo
]