{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Network.AWS.DMS.ReloadTables
(
reloadTables
, ReloadTables
, rtReplicationTaskARN
, rtTablesToReload
, reloadTablesResponse
, ReloadTablesResponse
, rtrsReplicationTaskARN
, rtrsResponseStatus
) where
import Network.AWS.DMS.Types
import Network.AWS.DMS.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data ReloadTables = ReloadTables'
{ _rtReplicationTaskARN :: !Text
, _rtTablesToReload :: ![TableToReload]
} deriving (Eq, Read, Show, Data, Typeable, Generic)
reloadTables
:: Text
-> ReloadTables
reloadTables pReplicationTaskARN_ =
ReloadTables'
{_rtReplicationTaskARN = pReplicationTaskARN_, _rtTablesToReload = mempty}
rtReplicationTaskARN :: Lens' ReloadTables Text
rtReplicationTaskARN = lens _rtReplicationTaskARN (\ s a -> s{_rtReplicationTaskARN = a})
rtTablesToReload :: Lens' ReloadTables [TableToReload]
rtTablesToReload = lens _rtTablesToReload (\ s a -> s{_rtTablesToReload = a}) . _Coerce
instance AWSRequest ReloadTables where
type Rs ReloadTables = ReloadTablesResponse
request = postJSON dms
response
= receiveJSON
(\ s h x ->
ReloadTablesResponse' <$>
(x .?> "ReplicationTaskArn") <*> (pure (fromEnum s)))
instance Hashable ReloadTables where
instance NFData ReloadTables where
instance ToHeaders ReloadTables where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AmazonDMSv20160101.ReloadTables" :: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON ReloadTables where
toJSON ReloadTables'{..}
= object
(catMaybes
[Just
("ReplicationTaskArn" .= _rtReplicationTaskARN),
Just ("TablesToReload" .= _rtTablesToReload)])
instance ToPath ReloadTables where
toPath = const "/"
instance ToQuery ReloadTables where
toQuery = const mempty
data ReloadTablesResponse = ReloadTablesResponse'
{ _rtrsReplicationTaskARN :: !(Maybe Text)
, _rtrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
reloadTablesResponse
:: Int
-> ReloadTablesResponse
reloadTablesResponse pResponseStatus_ =
ReloadTablesResponse'
{_rtrsReplicationTaskARN = Nothing, _rtrsResponseStatus = pResponseStatus_}
rtrsReplicationTaskARN :: Lens' ReloadTablesResponse (Maybe Text)
rtrsReplicationTaskARN = lens _rtrsReplicationTaskARN (\ s a -> s{_rtrsReplicationTaskARN = a})
rtrsResponseStatus :: Lens' ReloadTablesResponse Int
rtrsResponseStatus = lens _rtrsResponseStatus (\ s a -> s{_rtrsResponseStatus = a})
instance NFData ReloadTablesResponse where