module Network.AWS.IoT.DetachPrincipalPolicy
(
detachPrincipalPolicy
, DetachPrincipalPolicy
, dppPolicyName
, dppPrincipal
, detachPrincipalPolicyResponse
, DetachPrincipalPolicyResponse
) where
import Network.AWS.IoT.Types
import Network.AWS.IoT.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DetachPrincipalPolicy = DetachPrincipalPolicy'
{ _dppPolicyName :: !Text
, _dppPrincipal :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
detachPrincipalPolicy
:: Text
-> Text
-> DetachPrincipalPolicy
detachPrincipalPolicy pPolicyName_ pPrincipal_ =
DetachPrincipalPolicy'
{ _dppPolicyName = pPolicyName_
, _dppPrincipal = pPrincipal_
}
dppPolicyName :: Lens' DetachPrincipalPolicy Text
dppPolicyName = lens _dppPolicyName (\ s a -> s{_dppPolicyName = a});
dppPrincipal :: Lens' DetachPrincipalPolicy Text
dppPrincipal = lens _dppPrincipal (\ s a -> s{_dppPrincipal = a});
instance AWSRequest DetachPrincipalPolicy where
type Rs DetachPrincipalPolicy =
DetachPrincipalPolicyResponse
request = delete ioT
response = receiveNull DetachPrincipalPolicyResponse'
instance ToHeaders DetachPrincipalPolicy where
toHeaders DetachPrincipalPolicy'{..}
= mconcat ["x-amzn-iot-principal" =# _dppPrincipal]
instance ToPath DetachPrincipalPolicy where
toPath DetachPrincipalPolicy'{..}
= mconcat
["/principal-policies/", toBS _dppPolicyName]
instance ToQuery DetachPrincipalPolicy where
toQuery = const mempty
data DetachPrincipalPolicyResponse =
DetachPrincipalPolicyResponse'
deriving (Eq,Read,Show,Data,Typeable,Generic)
detachPrincipalPolicyResponse
:: DetachPrincipalPolicyResponse
detachPrincipalPolicyResponse = DetachPrincipalPolicyResponse'