{-# 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.Storage.Projects.HmacKeys.Update
(
ProjectsHmacKeysUpdateResource
, projectsHmacKeysUpdate
, ProjectsHmacKeysUpdate
, phkuPayload
, phkuProjectId
, phkuAccessId
) where
import Network.Google.Prelude
import Network.Google.Storage.Types
type ProjectsHmacKeysUpdateResource =
"storage" :>
"v1" :>
"projects" :>
Capture "projectId" Text :>
"hmacKeys" :>
Capture "accessId" Text :>
QueryParam "alt" AltJSON :>
ReqBody '[JSON] HmacKeyMetadata :>
Put '[JSON] HmacKeyMetadata
data ProjectsHmacKeysUpdate =
ProjectsHmacKeysUpdate'
{ _phkuPayload :: !HmacKeyMetadata
, _phkuProjectId :: !Text
, _phkuAccessId :: !Text
}
deriving (Eq, Show, Data, Typeable, Generic)
projectsHmacKeysUpdate
:: HmacKeyMetadata
-> Text
-> Text
-> ProjectsHmacKeysUpdate
projectsHmacKeysUpdate pPhkuPayload_ pPhkuProjectId_ pPhkuAccessId_ =
ProjectsHmacKeysUpdate'
{ _phkuPayload = pPhkuPayload_
, _phkuProjectId = pPhkuProjectId_
, _phkuAccessId = pPhkuAccessId_
}
phkuPayload :: Lens' ProjectsHmacKeysUpdate HmacKeyMetadata
phkuPayload
= lens _phkuPayload (\ s a -> s{_phkuPayload = a})
phkuProjectId :: Lens' ProjectsHmacKeysUpdate Text
phkuProjectId
= lens _phkuProjectId
(\ s a -> s{_phkuProjectId = a})
phkuAccessId :: Lens' ProjectsHmacKeysUpdate Text
phkuAccessId
= lens _phkuAccessId (\ s a -> s{_phkuAccessId = a})
instance GoogleRequest ProjectsHmacKeysUpdate where
type Rs ProjectsHmacKeysUpdate = HmacKeyMetadata
type Scopes ProjectsHmacKeysUpdate =
'["https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/devstorage.full_control"]
requestClient ProjectsHmacKeysUpdate'{..}
= go _phkuProjectId _phkuAccessId (Just AltJSON)
_phkuPayload
storageService
where go
= buildClient
(Proxy :: Proxy ProjectsHmacKeysUpdateResource)
mempty