{-# 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.DMS.MoveReplicationTask
(
MoveReplicationTask (..),
newMoveReplicationTask,
moveReplicationTask_replicationTaskArn,
moveReplicationTask_targetReplicationInstanceArn,
MoveReplicationTaskResponse (..),
newMoveReplicationTaskResponse,
moveReplicationTaskResponse_replicationTask,
moveReplicationTaskResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import Amazonka.DMS.Types
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data MoveReplicationTask = MoveReplicationTask'
{
MoveReplicationTask -> Text
replicationTaskArn :: Prelude.Text,
MoveReplicationTask -> Text
targetReplicationInstanceArn :: Prelude.Text
}
deriving (MoveReplicationTask -> MoveReplicationTask -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MoveReplicationTask -> MoveReplicationTask -> Bool
$c/= :: MoveReplicationTask -> MoveReplicationTask -> Bool
== :: MoveReplicationTask -> MoveReplicationTask -> Bool
$c== :: MoveReplicationTask -> MoveReplicationTask -> Bool
Prelude.Eq, ReadPrec [MoveReplicationTask]
ReadPrec MoveReplicationTask
Int -> ReadS MoveReplicationTask
ReadS [MoveReplicationTask]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [MoveReplicationTask]
$creadListPrec :: ReadPrec [MoveReplicationTask]
readPrec :: ReadPrec MoveReplicationTask
$creadPrec :: ReadPrec MoveReplicationTask
readList :: ReadS [MoveReplicationTask]
$creadList :: ReadS [MoveReplicationTask]
readsPrec :: Int -> ReadS MoveReplicationTask
$creadsPrec :: Int -> ReadS MoveReplicationTask
Prelude.Read, Int -> MoveReplicationTask -> ShowS
[MoveReplicationTask] -> ShowS
MoveReplicationTask -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MoveReplicationTask] -> ShowS
$cshowList :: [MoveReplicationTask] -> ShowS
show :: MoveReplicationTask -> String
$cshow :: MoveReplicationTask -> String
showsPrec :: Int -> MoveReplicationTask -> ShowS
$cshowsPrec :: Int -> MoveReplicationTask -> ShowS
Prelude.Show, forall x. Rep MoveReplicationTask x -> MoveReplicationTask
forall x. MoveReplicationTask -> Rep MoveReplicationTask x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep MoveReplicationTask x -> MoveReplicationTask
$cfrom :: forall x. MoveReplicationTask -> Rep MoveReplicationTask x
Prelude.Generic)
newMoveReplicationTask ::
Prelude.Text ->
Prelude.Text ->
MoveReplicationTask
newMoveReplicationTask :: Text -> Text -> MoveReplicationTask
newMoveReplicationTask
Text
pReplicationTaskArn_
Text
pTargetReplicationInstanceArn_ =
MoveReplicationTask'
{ $sel:replicationTaskArn:MoveReplicationTask' :: Text
replicationTaskArn =
Text
pReplicationTaskArn_,
$sel:targetReplicationInstanceArn:MoveReplicationTask' :: Text
targetReplicationInstanceArn =
Text
pTargetReplicationInstanceArn_
}
moveReplicationTask_replicationTaskArn :: Lens.Lens' MoveReplicationTask Prelude.Text
moveReplicationTask_replicationTaskArn :: Lens' MoveReplicationTask Text
moveReplicationTask_replicationTaskArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\MoveReplicationTask' {Text
replicationTaskArn :: Text
$sel:replicationTaskArn:MoveReplicationTask' :: MoveReplicationTask -> Text
replicationTaskArn} -> Text
replicationTaskArn) (\s :: MoveReplicationTask
s@MoveReplicationTask' {} Text
a -> MoveReplicationTask
s {$sel:replicationTaskArn:MoveReplicationTask' :: Text
replicationTaskArn = Text
a} :: MoveReplicationTask)
moveReplicationTask_targetReplicationInstanceArn :: Lens.Lens' MoveReplicationTask Prelude.Text
moveReplicationTask_targetReplicationInstanceArn :: Lens' MoveReplicationTask Text
moveReplicationTask_targetReplicationInstanceArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\MoveReplicationTask' {Text
targetReplicationInstanceArn :: Text
$sel:targetReplicationInstanceArn:MoveReplicationTask' :: MoveReplicationTask -> Text
targetReplicationInstanceArn} -> Text
targetReplicationInstanceArn) (\s :: MoveReplicationTask
s@MoveReplicationTask' {} Text
a -> MoveReplicationTask
s {$sel:targetReplicationInstanceArn:MoveReplicationTask' :: Text
targetReplicationInstanceArn = Text
a} :: MoveReplicationTask)
instance Core.AWSRequest MoveReplicationTask where
type
AWSResponse MoveReplicationTask =
MoveReplicationTaskResponse
request :: (Service -> Service)
-> MoveReplicationTask -> Request MoveReplicationTask
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 MoveReplicationTask
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse MoveReplicationTask)))
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 ReplicationTask -> Int -> MoveReplicationTaskResponse
MoveReplicationTaskResponse'
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
"ReplicationTask")
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 MoveReplicationTask where
hashWithSalt :: Int -> MoveReplicationTask -> Int
hashWithSalt Int
_salt MoveReplicationTask' {Text
targetReplicationInstanceArn :: Text
replicationTaskArn :: Text
$sel:targetReplicationInstanceArn:MoveReplicationTask' :: MoveReplicationTask -> Text
$sel:replicationTaskArn:MoveReplicationTask' :: MoveReplicationTask -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
replicationTaskArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
targetReplicationInstanceArn
instance Prelude.NFData MoveReplicationTask where
rnf :: MoveReplicationTask -> ()
rnf MoveReplicationTask' {Text
targetReplicationInstanceArn :: Text
replicationTaskArn :: Text
$sel:targetReplicationInstanceArn:MoveReplicationTask' :: MoveReplicationTask -> Text
$sel:replicationTaskArn:MoveReplicationTask' :: MoveReplicationTask -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
replicationTaskArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
targetReplicationInstanceArn
instance Data.ToHeaders MoveReplicationTask where
toHeaders :: MoveReplicationTask -> 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
"AmazonDMSv20160101.MoveReplicationTask" ::
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 MoveReplicationTask where
toJSON :: MoveReplicationTask -> Value
toJSON MoveReplicationTask' {Text
targetReplicationInstanceArn :: Text
replicationTaskArn :: Text
$sel:targetReplicationInstanceArn:MoveReplicationTask' :: MoveReplicationTask -> Text
$sel:replicationTaskArn:MoveReplicationTask' :: MoveReplicationTask -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just
(Key
"ReplicationTaskArn" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
replicationTaskArn),
forall a. a -> Maybe a
Prelude.Just
( Key
"TargetReplicationInstanceArn"
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
targetReplicationInstanceArn
)
]
)
instance Data.ToPath MoveReplicationTask where
toPath :: MoveReplicationTask -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery MoveReplicationTask where
toQuery :: MoveReplicationTask -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data MoveReplicationTaskResponse = MoveReplicationTaskResponse'
{
MoveReplicationTaskResponse -> Maybe ReplicationTask
replicationTask :: Prelude.Maybe ReplicationTask,
MoveReplicationTaskResponse -> Int
httpStatus :: Prelude.Int
}
deriving (MoveReplicationTaskResponse -> MoveReplicationTaskResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: MoveReplicationTaskResponse -> MoveReplicationTaskResponse -> Bool
$c/= :: MoveReplicationTaskResponse -> MoveReplicationTaskResponse -> Bool
== :: MoveReplicationTaskResponse -> MoveReplicationTaskResponse -> Bool
$c== :: MoveReplicationTaskResponse -> MoveReplicationTaskResponse -> Bool
Prelude.Eq, ReadPrec [MoveReplicationTaskResponse]
ReadPrec MoveReplicationTaskResponse
Int -> ReadS MoveReplicationTaskResponse
ReadS [MoveReplicationTaskResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [MoveReplicationTaskResponse]
$creadListPrec :: ReadPrec [MoveReplicationTaskResponse]
readPrec :: ReadPrec MoveReplicationTaskResponse
$creadPrec :: ReadPrec MoveReplicationTaskResponse
readList :: ReadS [MoveReplicationTaskResponse]
$creadList :: ReadS [MoveReplicationTaskResponse]
readsPrec :: Int -> ReadS MoveReplicationTaskResponse
$creadsPrec :: Int -> ReadS MoveReplicationTaskResponse
Prelude.Read, Int -> MoveReplicationTaskResponse -> ShowS
[MoveReplicationTaskResponse] -> ShowS
MoveReplicationTaskResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [MoveReplicationTaskResponse] -> ShowS
$cshowList :: [MoveReplicationTaskResponse] -> ShowS
show :: MoveReplicationTaskResponse -> String
$cshow :: MoveReplicationTaskResponse -> String
showsPrec :: Int -> MoveReplicationTaskResponse -> ShowS
$cshowsPrec :: Int -> MoveReplicationTaskResponse -> ShowS
Prelude.Show, forall x.
Rep MoveReplicationTaskResponse x -> MoveReplicationTaskResponse
forall x.
MoveReplicationTaskResponse -> Rep MoveReplicationTaskResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep MoveReplicationTaskResponse x -> MoveReplicationTaskResponse
$cfrom :: forall x.
MoveReplicationTaskResponse -> Rep MoveReplicationTaskResponse x
Prelude.Generic)
newMoveReplicationTaskResponse ::
Prelude.Int ->
MoveReplicationTaskResponse
newMoveReplicationTaskResponse :: Int -> MoveReplicationTaskResponse
newMoveReplicationTaskResponse Int
pHttpStatus_ =
MoveReplicationTaskResponse'
{ $sel:replicationTask:MoveReplicationTaskResponse' :: Maybe ReplicationTask
replicationTask =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:MoveReplicationTaskResponse' :: Int
httpStatus = Int
pHttpStatus_
}
moveReplicationTaskResponse_replicationTask :: Lens.Lens' MoveReplicationTaskResponse (Prelude.Maybe ReplicationTask)
moveReplicationTaskResponse_replicationTask :: Lens' MoveReplicationTaskResponse (Maybe ReplicationTask)
moveReplicationTaskResponse_replicationTask = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\MoveReplicationTaskResponse' {Maybe ReplicationTask
replicationTask :: Maybe ReplicationTask
$sel:replicationTask:MoveReplicationTaskResponse' :: MoveReplicationTaskResponse -> Maybe ReplicationTask
replicationTask} -> Maybe ReplicationTask
replicationTask) (\s :: MoveReplicationTaskResponse
s@MoveReplicationTaskResponse' {} Maybe ReplicationTask
a -> MoveReplicationTaskResponse
s {$sel:replicationTask:MoveReplicationTaskResponse' :: Maybe ReplicationTask
replicationTask = Maybe ReplicationTask
a} :: MoveReplicationTaskResponse)
moveReplicationTaskResponse_httpStatus :: Lens.Lens' MoveReplicationTaskResponse Prelude.Int
moveReplicationTaskResponse_httpStatus :: Lens' MoveReplicationTaskResponse Int
moveReplicationTaskResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\MoveReplicationTaskResponse' {Int
httpStatus :: Int
$sel:httpStatus:MoveReplicationTaskResponse' :: MoveReplicationTaskResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: MoveReplicationTaskResponse
s@MoveReplicationTaskResponse' {} Int
a -> MoveReplicationTaskResponse
s {$sel:httpStatus:MoveReplicationTaskResponse' :: Int
httpStatus = Int
a} :: MoveReplicationTaskResponse)
instance Prelude.NFData MoveReplicationTaskResponse where
rnf :: MoveReplicationTaskResponse -> ()
rnf MoveReplicationTaskResponse' {Int
Maybe ReplicationTask
httpStatus :: Int
replicationTask :: Maybe ReplicationTask
$sel:httpStatus:MoveReplicationTaskResponse' :: MoveReplicationTaskResponse -> Int
$sel:replicationTask:MoveReplicationTaskResponse' :: MoveReplicationTaskResponse -> Maybe ReplicationTask
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe ReplicationTask
replicationTask
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus