{-# 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.ElasticBeanstalk.TerminateEnvironment
(
terminateEnvironment
, TerminateEnvironment
, teForceTerminate
, teTerminateResources
, teEnvironmentName
, teEnvironmentId
, environmentDescription
, EnvironmentDescription
, eStatus
, eCNAME
, eTemplateName
, eAbortableOperationInProgress
, eEndpointURL
, eResources
, eDateUpdated
, eDateCreated
, eHealth
, eVersionLabel
, eTier
, eEnvironmentName
, eApplicationName
, eSolutionStackName
, eEnvironmentId
, eHealthStatus
, eEnvironmentLinks
, eDescription
) where
import Network.AWS.ElasticBeanstalk.Types
import Network.AWS.ElasticBeanstalk.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data TerminateEnvironment = TerminateEnvironment'
{ _teForceTerminate :: !(Maybe Bool)
, _teTerminateResources :: !(Maybe Bool)
, _teEnvironmentName :: !(Maybe Text)
, _teEnvironmentId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
terminateEnvironment
:: TerminateEnvironment
terminateEnvironment =
TerminateEnvironment'
{ _teForceTerminate = Nothing
, _teTerminateResources = Nothing
, _teEnvironmentName = Nothing
, _teEnvironmentId = Nothing
}
teForceTerminate :: Lens' TerminateEnvironment (Maybe Bool)
teForceTerminate = lens _teForceTerminate (\ s a -> s{_teForceTerminate = a});
teTerminateResources :: Lens' TerminateEnvironment (Maybe Bool)
teTerminateResources = lens _teTerminateResources (\ s a -> s{_teTerminateResources = a});
teEnvironmentName :: Lens' TerminateEnvironment (Maybe Text)
teEnvironmentName = lens _teEnvironmentName (\ s a -> s{_teEnvironmentName = a});
teEnvironmentId :: Lens' TerminateEnvironment (Maybe Text)
teEnvironmentId = lens _teEnvironmentId (\ s a -> s{_teEnvironmentId = a});
instance AWSRequest TerminateEnvironment where
type Rs TerminateEnvironment = EnvironmentDescription
request = postQuery elasticBeanstalk
response
= receiveXMLWrapper "TerminateEnvironmentResult"
(\ s h x -> parseXML x)
instance Hashable TerminateEnvironment
instance NFData TerminateEnvironment
instance ToHeaders TerminateEnvironment where
toHeaders = const mempty
instance ToPath TerminateEnvironment where
toPath = const "/"
instance ToQuery TerminateEnvironment where
toQuery TerminateEnvironment'{..}
= mconcat
["Action" =: ("TerminateEnvironment" :: ByteString),
"Version" =: ("2010-12-01" :: ByteString),
"ForceTerminate" =: _teForceTerminate,
"TerminateResources" =: _teTerminateResources,
"EnvironmentName" =: _teEnvironmentName,
"EnvironmentId" =: _teEnvironmentId]