{-# 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.CloudTasks.Projects.Locations.Queues.GetIAMPolicy
(
ProjectsLocationsQueuesGetIAMPolicyResource
, projectsLocationsQueuesGetIAMPolicy
, ProjectsLocationsQueuesGetIAMPolicy
, plqgipXgafv
, plqgipUploadProtocol
, plqgipAccessToken
, plqgipUploadType
, plqgipPayload
, plqgipResource
, plqgipCallback
) where
import Network.Google.CloudTasks.Types
import Network.Google.Prelude
type ProjectsLocationsQueuesGetIAMPolicyResource =
"v2beta3" :>
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 ProjectsLocationsQueuesGetIAMPolicy = ProjectsLocationsQueuesGetIAMPolicy'
{ _plqgipXgafv :: !(Maybe Xgafv)
, _plqgipUploadProtocol :: !(Maybe Text)
, _plqgipAccessToken :: !(Maybe Text)
, _plqgipUploadType :: !(Maybe Text)
, _plqgipPayload :: !GetIAMPolicyRequest
, _plqgipResource :: !Text
, _plqgipCallback :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
projectsLocationsQueuesGetIAMPolicy
:: GetIAMPolicyRequest
-> Text
-> ProjectsLocationsQueuesGetIAMPolicy
projectsLocationsQueuesGetIAMPolicy pPlqgipPayload_ pPlqgipResource_ =
ProjectsLocationsQueuesGetIAMPolicy'
{ _plqgipXgafv = Nothing
, _plqgipUploadProtocol = Nothing
, _plqgipAccessToken = Nothing
, _plqgipUploadType = Nothing
, _plqgipPayload = pPlqgipPayload_
, _plqgipResource = pPlqgipResource_
, _plqgipCallback = Nothing
}
plqgipXgafv :: Lens' ProjectsLocationsQueuesGetIAMPolicy (Maybe Xgafv)
plqgipXgafv
= lens _plqgipXgafv (\ s a -> s{_plqgipXgafv = a})
plqgipUploadProtocol :: Lens' ProjectsLocationsQueuesGetIAMPolicy (Maybe Text)
plqgipUploadProtocol
= lens _plqgipUploadProtocol
(\ s a -> s{_plqgipUploadProtocol = a})
plqgipAccessToken :: Lens' ProjectsLocationsQueuesGetIAMPolicy (Maybe Text)
plqgipAccessToken
= lens _plqgipAccessToken
(\ s a -> s{_plqgipAccessToken = a})
plqgipUploadType :: Lens' ProjectsLocationsQueuesGetIAMPolicy (Maybe Text)
plqgipUploadType
= lens _plqgipUploadType
(\ s a -> s{_plqgipUploadType = a})
plqgipPayload :: Lens' ProjectsLocationsQueuesGetIAMPolicy GetIAMPolicyRequest
plqgipPayload
= lens _plqgipPayload
(\ s a -> s{_plqgipPayload = a})
plqgipResource :: Lens' ProjectsLocationsQueuesGetIAMPolicy Text
plqgipResource
= lens _plqgipResource
(\ s a -> s{_plqgipResource = a})
plqgipCallback :: Lens' ProjectsLocationsQueuesGetIAMPolicy (Maybe Text)
plqgipCallback
= lens _plqgipCallback
(\ s a -> s{_plqgipCallback = a})
instance GoogleRequest
ProjectsLocationsQueuesGetIAMPolicy where
type Rs ProjectsLocationsQueuesGetIAMPolicy = Policy
type Scopes ProjectsLocationsQueuesGetIAMPolicy =
'["https://www.googleapis.com/auth/cloud-platform"]
requestClient
ProjectsLocationsQueuesGetIAMPolicy'{..}
= go _plqgipResource _plqgipXgafv
_plqgipUploadProtocol
_plqgipAccessToken
_plqgipUploadType
_plqgipCallback
(Just AltJSON)
_plqgipPayload
cloudTasksService
where go
= buildClient
(Proxy ::
Proxy ProjectsLocationsQueuesGetIAMPolicyResource)
mempty