{-# 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.AutoScaling.DescribeAutoScalingNotificationTypes
(
describeAutoScalingNotificationTypes
, DescribeAutoScalingNotificationTypes
, describeAutoScalingNotificationTypesResponse
, DescribeAutoScalingNotificationTypesResponse
, dasntrsAutoScalingNotificationTypes
, dasntrsResponseStatus
) where
import Network.AWS.AutoScaling.Types
import Network.AWS.AutoScaling.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DescribeAutoScalingNotificationTypes =
DescribeAutoScalingNotificationTypes'
deriving (Eq, Read, Show, Data, Typeable, Generic)
describeAutoScalingNotificationTypes
:: DescribeAutoScalingNotificationTypes
describeAutoScalingNotificationTypes = DescribeAutoScalingNotificationTypes'
instance AWSRequest
DescribeAutoScalingNotificationTypes
where
type Rs DescribeAutoScalingNotificationTypes =
DescribeAutoScalingNotificationTypesResponse
request = postQuery autoScaling
response
= receiveXMLWrapper
"DescribeAutoScalingNotificationTypesResult"
(\ s h x ->
DescribeAutoScalingNotificationTypesResponse' <$>
(x .@? "AutoScalingNotificationTypes" .!@ mempty >>=
may (parseXMLList "member"))
<*> (pure (fromEnum s)))
instance Hashable
DescribeAutoScalingNotificationTypes
where
instance NFData DescribeAutoScalingNotificationTypes
where
instance ToHeaders
DescribeAutoScalingNotificationTypes
where
toHeaders = const mempty
instance ToPath DescribeAutoScalingNotificationTypes
where
toPath = const "/"
instance ToQuery DescribeAutoScalingNotificationTypes
where
toQuery
= const
(mconcat
["Action" =:
("DescribeAutoScalingNotificationTypes" ::
ByteString),
"Version" =: ("2011-01-01" :: ByteString)])
data DescribeAutoScalingNotificationTypesResponse = DescribeAutoScalingNotificationTypesResponse'
{ _dasntrsAutoScalingNotificationTypes :: !(Maybe [Text])
, _dasntrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeAutoScalingNotificationTypesResponse
:: Int
-> DescribeAutoScalingNotificationTypesResponse
describeAutoScalingNotificationTypesResponse pResponseStatus_ =
DescribeAutoScalingNotificationTypesResponse'
{ _dasntrsAutoScalingNotificationTypes = Nothing
, _dasntrsResponseStatus = pResponseStatus_
}
dasntrsAutoScalingNotificationTypes :: Lens' DescribeAutoScalingNotificationTypesResponse [Text]
dasntrsAutoScalingNotificationTypes = lens _dasntrsAutoScalingNotificationTypes (\ s a -> s{_dasntrsAutoScalingNotificationTypes = a}) . _Default . _Coerce
dasntrsResponseStatus :: Lens' DescribeAutoScalingNotificationTypesResponse Int
dasntrsResponseStatus = lens _dasntrsResponseStatus (\ s a -> s{_dasntrsResponseStatus = a})
instance NFData
DescribeAutoScalingNotificationTypesResponse
where