{-# 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.Organizations.DescribeCreateAccountStatus
(
describeCreateAccountStatus
, DescribeCreateAccountStatus
, dcasCreateAccountRequestId
, describeCreateAccountStatusResponse
, DescribeCreateAccountStatusResponse
, dcasrsCreateAccountStatus
, dcasrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.Organizations.Types
import Network.AWS.Organizations.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
newtype DescribeCreateAccountStatus = DescribeCreateAccountStatus'
{ _dcasCreateAccountRequestId :: Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeCreateAccountStatus
:: Text
-> DescribeCreateAccountStatus
describeCreateAccountStatus pCreateAccountRequestId_ =
DescribeCreateAccountStatus'
{_dcasCreateAccountRequestId = pCreateAccountRequestId_}
dcasCreateAccountRequestId :: Lens' DescribeCreateAccountStatus Text
dcasCreateAccountRequestId = lens _dcasCreateAccountRequestId (\ s a -> s{_dcasCreateAccountRequestId = a})
instance AWSRequest DescribeCreateAccountStatus where
type Rs DescribeCreateAccountStatus =
DescribeCreateAccountStatusResponse
request = postJSON organizations
response
= receiveJSON
(\ s h x ->
DescribeCreateAccountStatusResponse' <$>
(x .?> "CreateAccountStatus") <*>
(pure (fromEnum s)))
instance Hashable DescribeCreateAccountStatus where
instance NFData DescribeCreateAccountStatus where
instance ToHeaders DescribeCreateAccountStatus where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AWSOrganizationsV20161128.DescribeCreateAccountStatus"
:: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON DescribeCreateAccountStatus where
toJSON DescribeCreateAccountStatus'{..}
= object
(catMaybes
[Just
("CreateAccountRequestId" .=
_dcasCreateAccountRequestId)])
instance ToPath DescribeCreateAccountStatus where
toPath = const "/"
instance ToQuery DescribeCreateAccountStatus where
toQuery = const mempty
data DescribeCreateAccountStatusResponse = DescribeCreateAccountStatusResponse'
{ _dcasrsCreateAccountStatus :: !(Maybe CreateAccountStatus)
, _dcasrsResponseStatus :: !Int
} deriving (Eq, Show, Data, Typeable, Generic)
describeCreateAccountStatusResponse
:: Int
-> DescribeCreateAccountStatusResponse
describeCreateAccountStatusResponse pResponseStatus_ =
DescribeCreateAccountStatusResponse'
{ _dcasrsCreateAccountStatus = Nothing
, _dcasrsResponseStatus = pResponseStatus_
}
dcasrsCreateAccountStatus :: Lens' DescribeCreateAccountStatusResponse (Maybe CreateAccountStatus)
dcasrsCreateAccountStatus = lens _dcasrsCreateAccountStatus (\ s a -> s{_dcasrsCreateAccountStatus = a})
dcasrsResponseStatus :: Lens' DescribeCreateAccountStatusResponse Int
dcasrsResponseStatus = lens _dcasrsResponseStatus (\ s a -> s{_dcasrsResponseStatus = a})
instance NFData DescribeCreateAccountStatusResponse
where