{-# 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.Dataproc.Projects.Regions.Operations.GetIAMPolicy
(
ProjectsRegionsOperationsGetIAMPolicyResource
, projectsRegionsOperationsGetIAMPolicy
, ProjectsRegionsOperationsGetIAMPolicy
, progipXgafv
, progipUploadProtocol
, progipAccessToken
, progipUploadType
, progipPayload
, progipResource
, progipCallback
) where
import Network.Google.Dataproc.Types
import Network.Google.Prelude
type ProjectsRegionsOperationsGetIAMPolicyResource =
"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 ProjectsRegionsOperationsGetIAMPolicy = ProjectsRegionsOperationsGetIAMPolicy'
{ _progipXgafv :: !(Maybe Xgafv)
, _progipUploadProtocol :: !(Maybe Text)
, _progipAccessToken :: !(Maybe Text)
, _progipUploadType :: !(Maybe Text)
, _progipPayload :: !GetIAMPolicyRequest
, _progipResource :: !Text
, _progipCallback :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
projectsRegionsOperationsGetIAMPolicy
:: GetIAMPolicyRequest
-> Text
-> ProjectsRegionsOperationsGetIAMPolicy
projectsRegionsOperationsGetIAMPolicy pProgipPayload_ pProgipResource_ =
ProjectsRegionsOperationsGetIAMPolicy'
{ _progipXgafv = Nothing
, _progipUploadProtocol = Nothing
, _progipAccessToken = Nothing
, _progipUploadType = Nothing
, _progipPayload = pProgipPayload_
, _progipResource = pProgipResource_
, _progipCallback = Nothing
}
progipXgafv :: Lens' ProjectsRegionsOperationsGetIAMPolicy (Maybe Xgafv)
progipXgafv
= lens _progipXgafv (\ s a -> s{_progipXgafv = a})
progipUploadProtocol :: Lens' ProjectsRegionsOperationsGetIAMPolicy (Maybe Text)
progipUploadProtocol
= lens _progipUploadProtocol
(\ s a -> s{_progipUploadProtocol = a})
progipAccessToken :: Lens' ProjectsRegionsOperationsGetIAMPolicy (Maybe Text)
progipAccessToken
= lens _progipAccessToken
(\ s a -> s{_progipAccessToken = a})
progipUploadType :: Lens' ProjectsRegionsOperationsGetIAMPolicy (Maybe Text)
progipUploadType
= lens _progipUploadType
(\ s a -> s{_progipUploadType = a})
progipPayload :: Lens' ProjectsRegionsOperationsGetIAMPolicy GetIAMPolicyRequest
progipPayload
= lens _progipPayload
(\ s a -> s{_progipPayload = a})
progipResource :: Lens' ProjectsRegionsOperationsGetIAMPolicy Text
progipResource
= lens _progipResource
(\ s a -> s{_progipResource = a})
progipCallback :: Lens' ProjectsRegionsOperationsGetIAMPolicy (Maybe Text)
progipCallback
= lens _progipCallback
(\ s a -> s{_progipCallback = a})
instance GoogleRequest
ProjectsRegionsOperationsGetIAMPolicy where
type Rs ProjectsRegionsOperationsGetIAMPolicy =
Policy
type Scopes ProjectsRegionsOperationsGetIAMPolicy =
'["https://www.googleapis.com/auth/cloud-platform"]
requestClient
ProjectsRegionsOperationsGetIAMPolicy'{..}
= go _progipResource _progipXgafv
_progipUploadProtocol
_progipAccessToken
_progipUploadType
_progipCallback
(Just AltJSON)
_progipPayload
dataprocService
where go
= buildClient
(Proxy ::
Proxy ProjectsRegionsOperationsGetIAMPolicyResource)
mempty