{-# 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.RDS.FailoverDBCluster
(
failoverDBCluster
, FailoverDBCluster
, fdcDBClusterIdentifier
, fdcTargetDBInstanceIdentifier
, failoverDBClusterResponse
, FailoverDBClusterResponse
, fdcrsDBCluster
, fdcrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.RDS.Types
import Network.AWS.RDS.Types.Product
import Network.AWS.Request
import Network.AWS.Response
data FailoverDBCluster = FailoverDBCluster'
{ _fdcDBClusterIdentifier :: !(Maybe Text)
, _fdcTargetDBInstanceIdentifier :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
failoverDBCluster
:: FailoverDBCluster
failoverDBCluster =
FailoverDBCluster'
{ _fdcDBClusterIdentifier = Nothing
, _fdcTargetDBInstanceIdentifier = Nothing
}
fdcDBClusterIdentifier :: Lens' FailoverDBCluster (Maybe Text)
fdcDBClusterIdentifier = lens _fdcDBClusterIdentifier (\ s a -> s{_fdcDBClusterIdentifier = a});
fdcTargetDBInstanceIdentifier :: Lens' FailoverDBCluster (Maybe Text)
fdcTargetDBInstanceIdentifier = lens _fdcTargetDBInstanceIdentifier (\ s a -> s{_fdcTargetDBInstanceIdentifier = a});
instance AWSRequest FailoverDBCluster where
type Rs FailoverDBCluster = FailoverDBClusterResponse
request = postQuery rds
response
= receiveXMLWrapper "FailoverDBClusterResult"
(\ s h x ->
FailoverDBClusterResponse' <$>
(x .@? "DBCluster") <*> (pure (fromEnum s)))
instance Hashable FailoverDBCluster
instance NFData FailoverDBCluster
instance ToHeaders FailoverDBCluster where
toHeaders = const mempty
instance ToPath FailoverDBCluster where
toPath = const "/"
instance ToQuery FailoverDBCluster where
toQuery FailoverDBCluster'{..}
= mconcat
["Action" =: ("FailoverDBCluster" :: ByteString),
"Version" =: ("2014-10-31" :: ByteString),
"DBClusterIdentifier" =: _fdcDBClusterIdentifier,
"TargetDBInstanceIdentifier" =:
_fdcTargetDBInstanceIdentifier]
data FailoverDBClusterResponse = FailoverDBClusterResponse'
{ _fdcrsDBCluster :: !(Maybe DBCluster)
, _fdcrsResponseStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
failoverDBClusterResponse
:: Int
-> FailoverDBClusterResponse
failoverDBClusterResponse pResponseStatus_ =
FailoverDBClusterResponse'
{ _fdcrsDBCluster = Nothing
, _fdcrsResponseStatus = pResponseStatus_
}
fdcrsDBCluster :: Lens' FailoverDBClusterResponse (Maybe DBCluster)
fdcrsDBCluster = lens _fdcrsDBCluster (\ s a -> s{_fdcrsDBCluster = a});
fdcrsResponseStatus :: Lens' FailoverDBClusterResponse Int
fdcrsResponseStatus = lens _fdcrsResponseStatus (\ s a -> s{_fdcrsResponseStatus = a});
instance NFData FailoverDBClusterResponse