{-# 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.Container.Projects.Zones.Clusters.Update
(
ProjectsZonesClustersUpdateResource
, projectsZonesClustersUpdate
, ProjectsZonesClustersUpdate
, pzcuXgafv
, pzcuUploadProtocol
, pzcuAccessToken
, pzcuUploadType
, pzcuZone
, pzcuPayload
, pzcuClusterId
, pzcuProjectId
, pzcuCallback
) where
import Network.Google.Container.Types
import Network.Google.Prelude
type ProjectsZonesClustersUpdateResource =
"v1" :>
"projects" :>
Capture "projectId" Text :>
"zones" :>
Capture "zone" Text :>
"clusters" :>
Capture "clusterId" Text :>
QueryParam "$.xgafv" Xgafv :>
QueryParam "upload_protocol" Text :>
QueryParam "access_token" Text :>
QueryParam "uploadType" Text :>
QueryParam "callback" Text :>
QueryParam "alt" AltJSON :>
ReqBody '[JSON] UpdateClusterRequest :>
Put '[JSON] Operation
data ProjectsZonesClustersUpdate = ProjectsZonesClustersUpdate'
{ _pzcuXgafv :: !(Maybe Xgafv)
, _pzcuUploadProtocol :: !(Maybe Text)
, _pzcuAccessToken :: !(Maybe Text)
, _pzcuUploadType :: !(Maybe Text)
, _pzcuZone :: !Text
, _pzcuPayload :: !UpdateClusterRequest
, _pzcuClusterId :: !Text
, _pzcuProjectId :: !Text
, _pzcuCallback :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
projectsZonesClustersUpdate
:: Text
-> UpdateClusterRequest
-> Text
-> Text
-> ProjectsZonesClustersUpdate
projectsZonesClustersUpdate pPzcuZone_ pPzcuPayload_ pPzcuClusterId_ pPzcuProjectId_ =
ProjectsZonesClustersUpdate'
{ _pzcuXgafv = Nothing
, _pzcuUploadProtocol = Nothing
, _pzcuAccessToken = Nothing
, _pzcuUploadType = Nothing
, _pzcuZone = pPzcuZone_
, _pzcuPayload = pPzcuPayload_
, _pzcuClusterId = pPzcuClusterId_
, _pzcuProjectId = pPzcuProjectId_
, _pzcuCallback = Nothing
}
pzcuXgafv :: Lens' ProjectsZonesClustersUpdate (Maybe Xgafv)
pzcuXgafv
= lens _pzcuXgafv (\ s a -> s{_pzcuXgafv = a})
pzcuUploadProtocol :: Lens' ProjectsZonesClustersUpdate (Maybe Text)
pzcuUploadProtocol
= lens _pzcuUploadProtocol
(\ s a -> s{_pzcuUploadProtocol = a})
pzcuAccessToken :: Lens' ProjectsZonesClustersUpdate (Maybe Text)
pzcuAccessToken
= lens _pzcuAccessToken
(\ s a -> s{_pzcuAccessToken = a})
pzcuUploadType :: Lens' ProjectsZonesClustersUpdate (Maybe Text)
pzcuUploadType
= lens _pzcuUploadType
(\ s a -> s{_pzcuUploadType = a})
pzcuZone :: Lens' ProjectsZonesClustersUpdate Text
pzcuZone = lens _pzcuZone (\ s a -> s{_pzcuZone = a})
pzcuPayload :: Lens' ProjectsZonesClustersUpdate UpdateClusterRequest
pzcuPayload
= lens _pzcuPayload (\ s a -> s{_pzcuPayload = a})
pzcuClusterId :: Lens' ProjectsZonesClustersUpdate Text
pzcuClusterId
= lens _pzcuClusterId
(\ s a -> s{_pzcuClusterId = a})
pzcuProjectId :: Lens' ProjectsZonesClustersUpdate Text
pzcuProjectId
= lens _pzcuProjectId
(\ s a -> s{_pzcuProjectId = a})
pzcuCallback :: Lens' ProjectsZonesClustersUpdate (Maybe Text)
pzcuCallback
= lens _pzcuCallback (\ s a -> s{_pzcuCallback = a})
instance GoogleRequest ProjectsZonesClustersUpdate
where
type Rs ProjectsZonesClustersUpdate = Operation
type Scopes ProjectsZonesClustersUpdate =
'["https://www.googleapis.com/auth/cloud-platform"]
requestClient ProjectsZonesClustersUpdate'{..}
= go _pzcuProjectId _pzcuZone _pzcuClusterId
_pzcuXgafv
_pzcuUploadProtocol
_pzcuAccessToken
_pzcuUploadType
_pzcuCallback
(Just AltJSON)
_pzcuPayload
containerService
where go
= buildClient
(Proxy :: Proxy ProjectsZonesClustersUpdateResource)
mempty