{-# 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.DisablePolicyType
(
disablePolicyType
, DisablePolicyType
, dptRootId
, dptPolicyType
, disablePolicyTypeResponse
, DisablePolicyTypeResponse
, dptrsRoot
, dptrsResponseStatus
) 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
data DisablePolicyType = DisablePolicyType'
{ _dptRootId :: !Text
, _dptPolicyType :: !PolicyType
} deriving (Eq, Read, Show, Data, Typeable, Generic)
disablePolicyType
:: Text
-> PolicyType
-> DisablePolicyType
disablePolicyType pRootId_ pPolicyType_ =
DisablePolicyType' {_dptRootId = pRootId_, _dptPolicyType = pPolicyType_}
dptRootId :: Lens' DisablePolicyType Text
dptRootId = lens _dptRootId (\ s a -> s{_dptRootId = a})
dptPolicyType :: Lens' DisablePolicyType PolicyType
dptPolicyType = lens _dptPolicyType (\ s a -> s{_dptPolicyType = a})
instance AWSRequest DisablePolicyType where
type Rs DisablePolicyType = DisablePolicyTypeResponse
request = postJSON organizations
response
= receiveJSON
(\ s h x ->
DisablePolicyTypeResponse' <$>
(x .?> "Root") <*> (pure (fromEnum s)))
instance Hashable DisablePolicyType where
instance NFData DisablePolicyType where
instance ToHeaders DisablePolicyType where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AWSOrganizationsV20161128.DisablePolicyType" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON DisablePolicyType where
toJSON DisablePolicyType'{..}
= object
(catMaybes
[Just ("RootId" .= _dptRootId),
Just ("PolicyType" .= _dptPolicyType)])
instance ToPath DisablePolicyType where
toPath = const "/"
instance ToQuery DisablePolicyType where
toQuery = const mempty
data DisablePolicyTypeResponse = DisablePolicyTypeResponse'
{ _dptrsRoot :: !(Maybe Root)
, _dptrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
disablePolicyTypeResponse
:: Int
-> DisablePolicyTypeResponse
disablePolicyTypeResponse pResponseStatus_ =
DisablePolicyTypeResponse'
{_dptrsRoot = Nothing, _dptrsResponseStatus = pResponseStatus_}
dptrsRoot :: Lens' DisablePolicyTypeResponse (Maybe Root)
dptrsRoot = lens _dptrsRoot (\ s a -> s{_dptrsRoot = a})
dptrsResponseStatus :: Lens' DisablePolicyTypeResponse Int
dptrsResponseStatus = lens _dptrsResponseStatus (\ s a -> s{_dptrsResponseStatus = a})
instance NFData DisablePolicyTypeResponse where