module Network.AWS.Support.DescribeSeverityLevels
(
describeSeverityLevels
, DescribeSeverityLevels
, dslLanguage
, describeSeverityLevelsResponse
, DescribeSeverityLevelsResponse
, dslrsSeverityLevels
, dslrsResponseStatus
) where
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.Support.Types
import Network.AWS.Support.Types.Product
newtype DescribeSeverityLevels = DescribeSeverityLevels'
{ _dslLanguage :: Maybe Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeSeverityLevels
:: DescribeSeverityLevels
describeSeverityLevels =
DescribeSeverityLevels'
{ _dslLanguage = Nothing
}
dslLanguage :: Lens' DescribeSeverityLevels (Maybe Text)
dslLanguage = lens _dslLanguage (\ s a -> s{_dslLanguage = a});
instance AWSRequest DescribeSeverityLevels where
type Rs DescribeSeverityLevels =
DescribeSeverityLevelsResponse
request = postJSON support
response
= receiveJSON
(\ s h x ->
DescribeSeverityLevelsResponse' <$>
(x .?> "severityLevels" .!@ mempty) <*>
(pure (fromEnum s)))
instance ToHeaders DescribeSeverityLevels where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AWSSupport_20130415.DescribeSeverityLevels" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON DescribeSeverityLevels where
toJSON DescribeSeverityLevels'{..}
= object
(catMaybes [("language" .=) <$> _dslLanguage])
instance ToPath DescribeSeverityLevels where
toPath = const "/"
instance ToQuery DescribeSeverityLevels where
toQuery = const mempty
data DescribeSeverityLevelsResponse = DescribeSeverityLevelsResponse'
{ _dslrsSeverityLevels :: !(Maybe [SeverityLevel])
, _dslrsResponseStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeSeverityLevelsResponse
:: Int
-> DescribeSeverityLevelsResponse
describeSeverityLevelsResponse pResponseStatus_ =
DescribeSeverityLevelsResponse'
{ _dslrsSeverityLevels = Nothing
, _dslrsResponseStatus = pResponseStatus_
}
dslrsSeverityLevels :: Lens' DescribeSeverityLevelsResponse [SeverityLevel]
dslrsSeverityLevels = lens _dslrsSeverityLevels (\ s a -> s{_dslrsSeverityLevels = a}) . _Default . _Coerce;
dslrsResponseStatus :: Lens' DescribeSeverityLevelsResponse Int
dslrsResponseStatus = lens _dslrsResponseStatus (\ s a -> s{_dslrsResponseStatus = a});