{-# 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.OpsWorks.DisassociateElasticIP
(
disassociateElasticIP
, DisassociateElasticIP
, deiElasticIP
, disassociateElasticIPResponse
, DisassociateElasticIPResponse
) where
import Network.AWS.Lens
import Network.AWS.OpsWorks.Types
import Network.AWS.OpsWorks.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
newtype DisassociateElasticIP = DisassociateElasticIP'
{ _deiElasticIP :: Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
disassociateElasticIP
:: Text
-> DisassociateElasticIP
disassociateElasticIP pElasticIP_ =
DisassociateElasticIP' {_deiElasticIP = pElasticIP_}
deiElasticIP :: Lens' DisassociateElasticIP Text
deiElasticIP = lens _deiElasticIP (\ s a -> s{_deiElasticIP = a})
instance AWSRequest DisassociateElasticIP where
type Rs DisassociateElasticIP =
DisassociateElasticIPResponse
request = postJSON opsWorks
response = receiveNull DisassociateElasticIPResponse'
instance Hashable DisassociateElasticIP where
instance NFData DisassociateElasticIP where
instance ToHeaders DisassociateElasticIP where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("OpsWorks_20130218.DisassociateElasticIp" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON DisassociateElasticIP where
toJSON DisassociateElasticIP'{..}
= object
(catMaybes [Just ("ElasticIp" .= _deiElasticIP)])
instance ToPath DisassociateElasticIP where
toPath = const "/"
instance ToQuery DisassociateElasticIP where
toQuery = const mempty
data DisassociateElasticIPResponse =
DisassociateElasticIPResponse'
deriving (Eq, Read, Show, Data, Typeable, Generic)
disassociateElasticIPResponse
:: DisassociateElasticIPResponse
disassociateElasticIPResponse = DisassociateElasticIPResponse'
instance NFData DisassociateElasticIPResponse where