{-# 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.SourceRepo.Projects.Repos.Sync
(
ProjectsReposSyncResource
, projectsReposSync
, ProjectsReposSync
, prsXgafv
, prsUploadProtocol
, prsAccessToken
, prsUploadType
, prsPayload
, prsName
, prsCallback
) where
import Network.Google.Prelude
import Network.Google.SourceRepo.Types
type ProjectsReposSyncResource =
"v1" :>
CaptureMode "name" "sync" Text :>
QueryParam "$.xgafv" Xgafv :>
QueryParam "upload_protocol" Text :>
QueryParam "access_token" Text :>
QueryParam "uploadType" Text :>
QueryParam "callback" Text :>
QueryParam "alt" AltJSON :>
ReqBody '[JSON] SyncRepoRequest :>
Post '[JSON] Operation
data ProjectsReposSync =
ProjectsReposSync'
{ _prsXgafv :: !(Maybe Xgafv)
, _prsUploadProtocol :: !(Maybe Text)
, _prsAccessToken :: !(Maybe Text)
, _prsUploadType :: !(Maybe Text)
, _prsPayload :: !SyncRepoRequest
, _prsName :: !Text
, _prsCallback :: !(Maybe Text)
}
deriving (Eq, Show, Data, Typeable, Generic)
projectsReposSync
:: SyncRepoRequest
-> Text
-> ProjectsReposSync
projectsReposSync pPrsPayload_ pPrsName_ =
ProjectsReposSync'
{ _prsXgafv = Nothing
, _prsUploadProtocol = Nothing
, _prsAccessToken = Nothing
, _prsUploadType = Nothing
, _prsPayload = pPrsPayload_
, _prsName = pPrsName_
, _prsCallback = Nothing
}
prsXgafv :: Lens' ProjectsReposSync (Maybe Xgafv)
prsXgafv = lens _prsXgafv (\ s a -> s{_prsXgafv = a})
prsUploadProtocol :: Lens' ProjectsReposSync (Maybe Text)
prsUploadProtocol
= lens _prsUploadProtocol
(\ s a -> s{_prsUploadProtocol = a})
prsAccessToken :: Lens' ProjectsReposSync (Maybe Text)
prsAccessToken
= lens _prsAccessToken
(\ s a -> s{_prsAccessToken = a})
prsUploadType :: Lens' ProjectsReposSync (Maybe Text)
prsUploadType
= lens _prsUploadType
(\ s a -> s{_prsUploadType = a})
prsPayload :: Lens' ProjectsReposSync SyncRepoRequest
prsPayload
= lens _prsPayload (\ s a -> s{_prsPayload = a})
prsName :: Lens' ProjectsReposSync Text
prsName = lens _prsName (\ s a -> s{_prsName = a})
prsCallback :: Lens' ProjectsReposSync (Maybe Text)
prsCallback
= lens _prsCallback (\ s a -> s{_prsCallback = a})
instance GoogleRequest ProjectsReposSync where
type Rs ProjectsReposSync = Operation
type Scopes ProjectsReposSync =
'["https://www.googleapis.com/auth/cloud-platform"]
requestClient ProjectsReposSync'{..}
= go _prsName _prsXgafv _prsUploadProtocol
_prsAccessToken
_prsUploadType
_prsCallback
(Just AltJSON)
_prsPayload
sourceRepoService
where go
= buildClient
(Proxy :: Proxy ProjectsReposSyncResource)
mempty