{-# 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.EC2.DescribeIdentityIdFormat
(
describeIdentityIdFormat
, DescribeIdentityIdFormat
, diifResource
, diifPrincipalARN
, describeIdentityIdFormatResponse
, DescribeIdentityIdFormatResponse
, diifrsStatuses
, diifrsResponseStatus
) where
import Network.AWS.EC2.Types
import Network.AWS.EC2.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DescribeIdentityIdFormat = DescribeIdentityIdFormat'
{ _diifResource :: !(Maybe Text)
, _diifPrincipalARN :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeIdentityIdFormat
:: Text
-> DescribeIdentityIdFormat
describeIdentityIdFormat pPrincipalARN_ =
DescribeIdentityIdFormat'
{ _diifResource = Nothing
, _diifPrincipalARN = pPrincipalARN_
}
diifResource :: Lens' DescribeIdentityIdFormat (Maybe Text)
diifResource = lens _diifResource (\ s a -> s{_diifResource = a});
diifPrincipalARN :: Lens' DescribeIdentityIdFormat Text
diifPrincipalARN = lens _diifPrincipalARN (\ s a -> s{_diifPrincipalARN = a});
instance AWSRequest DescribeIdentityIdFormat where
type Rs DescribeIdentityIdFormat =
DescribeIdentityIdFormatResponse
request = postQuery ec2
response
= receiveXML
(\ s h x ->
DescribeIdentityIdFormatResponse' <$>
(x .@? "statusSet" .!@ mempty >>=
may (parseXMLList "item"))
<*> (pure (fromEnum s)))
instance Hashable DescribeIdentityIdFormat
instance NFData DescribeIdentityIdFormat
instance ToHeaders DescribeIdentityIdFormat where
toHeaders = const mempty
instance ToPath DescribeIdentityIdFormat where
toPath = const "/"
instance ToQuery DescribeIdentityIdFormat where
toQuery DescribeIdentityIdFormat'{..}
= mconcat
["Action" =:
("DescribeIdentityIdFormat" :: ByteString),
"Version" =: ("2016-04-01" :: ByteString),
"Resource" =: _diifResource,
"PrincipalArn" =: _diifPrincipalARN]
data DescribeIdentityIdFormatResponse = DescribeIdentityIdFormatResponse'
{ _diifrsStatuses :: !(Maybe [IdFormat])
, _diifrsResponseStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
describeIdentityIdFormatResponse
:: Int
-> DescribeIdentityIdFormatResponse
describeIdentityIdFormatResponse pResponseStatus_ =
DescribeIdentityIdFormatResponse'
{ _diifrsStatuses = Nothing
, _diifrsResponseStatus = pResponseStatus_
}
diifrsStatuses :: Lens' DescribeIdentityIdFormatResponse [IdFormat]
diifrsStatuses = lens _diifrsStatuses (\ s a -> s{_diifrsStatuses = a}) . _Default . _Coerce;
diifrsResponseStatus :: Lens' DescribeIdentityIdFormatResponse Int
diifrsResponseStatus = lens _diifrsResponseStatus (\ s a -> s{_diifrsResponseStatus = a});
instance NFData DescribeIdentityIdFormatResponse