{-# 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.CloudSearch.DeleteDomain
(
deleteDomain
, DeleteDomain
, dddDomainName
, deleteDomainResponse
, DeleteDomainResponse
, ddrsDomainStatus
, ddrsResponseStatus
) where
import Network.AWS.CloudSearch.Types
import Network.AWS.CloudSearch.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
newtype DeleteDomain = DeleteDomain'
{ _dddDomainName :: Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deleteDomain
:: Text
-> DeleteDomain
deleteDomain pDomainName_ = DeleteDomain' {_dddDomainName = pDomainName_}
dddDomainName :: Lens' DeleteDomain Text
dddDomainName = lens _dddDomainName (\ s a -> s{_dddDomainName = a})
instance AWSRequest DeleteDomain where
type Rs DeleteDomain = DeleteDomainResponse
request = postQuery cloudSearch
response
= receiveXMLWrapper "DeleteDomainResult"
(\ s h x ->
DeleteDomainResponse' <$>
(x .@? "DomainStatus") <*> (pure (fromEnum s)))
instance Hashable DeleteDomain where
instance NFData DeleteDomain where
instance ToHeaders DeleteDomain where
toHeaders = const mempty
instance ToPath DeleteDomain where
toPath = const "/"
instance ToQuery DeleteDomain where
toQuery DeleteDomain'{..}
= mconcat
["Action" =: ("DeleteDomain" :: ByteString),
"Version" =: ("2013-01-01" :: ByteString),
"DomainName" =: _dddDomainName]
data DeleteDomainResponse = DeleteDomainResponse'
{ _ddrsDomainStatus :: !(Maybe DomainStatus)
, _ddrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deleteDomainResponse
:: Int
-> DeleteDomainResponse
deleteDomainResponse pResponseStatus_ =
DeleteDomainResponse'
{_ddrsDomainStatus = Nothing, _ddrsResponseStatus = pResponseStatus_}
ddrsDomainStatus :: Lens' DeleteDomainResponse (Maybe DomainStatus)
ddrsDomainStatus = lens _ddrsDomainStatus (\ s a -> s{_ddrsDomainStatus = a})
ddrsResponseStatus :: Lens' DeleteDomainResponse Int
ddrsResponseStatus = lens _ddrsResponseStatus (\ s a -> s{_ddrsResponseStatus = a})
instance NFData DeleteDomainResponse where