{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-}
{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Network.Google.Resource.IAP.Projects.IapWeb.Services.GetIAMPolicy
(
ProjectsIapWebServicesGetIAMPolicyResource
, projectsIapWebServicesGetIAMPolicy
, ProjectsIapWebServicesGetIAMPolicy
, piwsgipXgafv
, piwsgipUploadProtocol
, piwsgipAccessToken
, piwsgipUploadType
, piwsgipPayload
, piwsgipResource
, piwsgipCallback
) where
import Network.Google.IAP.Types
import Network.Google.Prelude
type ProjectsIapWebServicesGetIAMPolicyResource =
"v1" :>
CaptureMode "resource" "getIamPolicy" Text :>
QueryParam "$.xgafv" Xgafv :>
QueryParam "upload_protocol" Text :>
QueryParam "access_token" Text :>
QueryParam "uploadType" Text :>
QueryParam "callback" Text :>
QueryParam "alt" AltJSON :>
ReqBody '[JSON] GetIAMPolicyRequest :>
Post '[JSON] Policy
data ProjectsIapWebServicesGetIAMPolicy = ProjectsIapWebServicesGetIAMPolicy'
{ _piwsgipXgafv :: !(Maybe Xgafv)
, _piwsgipUploadProtocol :: !(Maybe Text)
, _piwsgipAccessToken :: !(Maybe Text)
, _piwsgipUploadType :: !(Maybe Text)
, _piwsgipPayload :: !GetIAMPolicyRequest
, _piwsgipResource :: !Text
, _piwsgipCallback :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
projectsIapWebServicesGetIAMPolicy
:: GetIAMPolicyRequest
-> Text
-> ProjectsIapWebServicesGetIAMPolicy
projectsIapWebServicesGetIAMPolicy pPiwsgipPayload_ pPiwsgipResource_ =
ProjectsIapWebServicesGetIAMPolicy'
{ _piwsgipXgafv = Nothing
, _piwsgipUploadProtocol = Nothing
, _piwsgipAccessToken = Nothing
, _piwsgipUploadType = Nothing
, _piwsgipPayload = pPiwsgipPayload_
, _piwsgipResource = pPiwsgipResource_
, _piwsgipCallback = Nothing
}
piwsgipXgafv :: Lens' ProjectsIapWebServicesGetIAMPolicy (Maybe Xgafv)
piwsgipXgafv
= lens _piwsgipXgafv (\ s a -> s{_piwsgipXgafv = a})
piwsgipUploadProtocol :: Lens' ProjectsIapWebServicesGetIAMPolicy (Maybe Text)
piwsgipUploadProtocol
= lens _piwsgipUploadProtocol
(\ s a -> s{_piwsgipUploadProtocol = a})
piwsgipAccessToken :: Lens' ProjectsIapWebServicesGetIAMPolicy (Maybe Text)
piwsgipAccessToken
= lens _piwsgipAccessToken
(\ s a -> s{_piwsgipAccessToken = a})
piwsgipUploadType :: Lens' ProjectsIapWebServicesGetIAMPolicy (Maybe Text)
piwsgipUploadType
= lens _piwsgipUploadType
(\ s a -> s{_piwsgipUploadType = a})
piwsgipPayload :: Lens' ProjectsIapWebServicesGetIAMPolicy GetIAMPolicyRequest
piwsgipPayload
= lens _piwsgipPayload
(\ s a -> s{_piwsgipPayload = a})
piwsgipResource :: Lens' ProjectsIapWebServicesGetIAMPolicy Text
piwsgipResource
= lens _piwsgipResource
(\ s a -> s{_piwsgipResource = a})
piwsgipCallback :: Lens' ProjectsIapWebServicesGetIAMPolicy (Maybe Text)
piwsgipCallback
= lens _piwsgipCallback
(\ s a -> s{_piwsgipCallback = a})
instance GoogleRequest
ProjectsIapWebServicesGetIAMPolicy where
type Rs ProjectsIapWebServicesGetIAMPolicy = Policy
type Scopes ProjectsIapWebServicesGetIAMPolicy =
'["https://www.googleapis.com/auth/cloud-platform"]
requestClient ProjectsIapWebServicesGetIAMPolicy'{..}
= go _piwsgipResource _piwsgipXgafv
_piwsgipUploadProtocol
_piwsgipAccessToken
_piwsgipUploadType
_piwsgipCallback
(Just AltJSON)
_piwsgipPayload
iAPService
where go
= buildClient
(Proxy ::
Proxy ProjectsIapWebServicesGetIAMPolicyResource)
mempty