{-# 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.Classroom.Courses.Topics.Patch
(
CoursesTopicsPatchResource
, coursesTopicsPatch
, CoursesTopicsPatch
, ctpXgafv
, ctpUploadProtocol
, ctpUpdateMask
, ctpCourseId
, ctpAccessToken
, ctpUploadType
, ctpPayload
, ctpId
, ctpCallback
) where
import Network.Google.Classroom.Types
import Network.Google.Prelude
type CoursesTopicsPatchResource =
"v1" :>
"courses" :>
Capture "courseId" Text :>
"topics" :>
Capture "id" Text :>
QueryParam "$.xgafv" Xgafv :>
QueryParam "upload_protocol" Text :>
QueryParam "updateMask" GFieldMask :>
QueryParam "access_token" Text :>
QueryParam "uploadType" Text :>
QueryParam "callback" Text :>
QueryParam "alt" AltJSON :>
ReqBody '[JSON] Topic :> Patch '[JSON] Topic
data CoursesTopicsPatch =
CoursesTopicsPatch'
{ _ctpXgafv :: !(Maybe Xgafv)
, _ctpUploadProtocol :: !(Maybe Text)
, _ctpUpdateMask :: !(Maybe GFieldMask)
, _ctpCourseId :: !Text
, _ctpAccessToken :: !(Maybe Text)
, _ctpUploadType :: !(Maybe Text)
, _ctpPayload :: !Topic
, _ctpId :: !Text
, _ctpCallback :: !(Maybe Text)
}
deriving (Eq, Show, Data, Typeable, Generic)
coursesTopicsPatch
:: Text
-> Topic
-> Text
-> CoursesTopicsPatch
coursesTopicsPatch pCtpCourseId_ pCtpPayload_ pCtpId_ =
CoursesTopicsPatch'
{ _ctpXgafv = Nothing
, _ctpUploadProtocol = Nothing
, _ctpUpdateMask = Nothing
, _ctpCourseId = pCtpCourseId_
, _ctpAccessToken = Nothing
, _ctpUploadType = Nothing
, _ctpPayload = pCtpPayload_
, _ctpId = pCtpId_
, _ctpCallback = Nothing
}
ctpXgafv :: Lens' CoursesTopicsPatch (Maybe Xgafv)
ctpXgafv = lens _ctpXgafv (\ s a -> s{_ctpXgafv = a})
ctpUploadProtocol :: Lens' CoursesTopicsPatch (Maybe Text)
ctpUploadProtocol
= lens _ctpUploadProtocol
(\ s a -> s{_ctpUploadProtocol = a})
ctpUpdateMask :: Lens' CoursesTopicsPatch (Maybe GFieldMask)
ctpUpdateMask
= lens _ctpUpdateMask
(\ s a -> s{_ctpUpdateMask = a})
ctpCourseId :: Lens' CoursesTopicsPatch Text
ctpCourseId
= lens _ctpCourseId (\ s a -> s{_ctpCourseId = a})
ctpAccessToken :: Lens' CoursesTopicsPatch (Maybe Text)
ctpAccessToken
= lens _ctpAccessToken
(\ s a -> s{_ctpAccessToken = a})
ctpUploadType :: Lens' CoursesTopicsPatch (Maybe Text)
ctpUploadType
= lens _ctpUploadType
(\ s a -> s{_ctpUploadType = a})
ctpPayload :: Lens' CoursesTopicsPatch Topic
ctpPayload
= lens _ctpPayload (\ s a -> s{_ctpPayload = a})
ctpId :: Lens' CoursesTopicsPatch Text
ctpId = lens _ctpId (\ s a -> s{_ctpId = a})
ctpCallback :: Lens' CoursesTopicsPatch (Maybe Text)
ctpCallback
= lens _ctpCallback (\ s a -> s{_ctpCallback = a})
instance GoogleRequest CoursesTopicsPatch where
type Rs CoursesTopicsPatch = Topic
type Scopes CoursesTopicsPatch =
'["https://www.googleapis.com/auth/classroom.topics"]
requestClient CoursesTopicsPatch'{..}
= go _ctpCourseId _ctpId _ctpXgafv _ctpUploadProtocol
_ctpUpdateMask
_ctpAccessToken
_ctpUploadType
_ctpCallback
(Just AltJSON)
_ctpPayload
classroomService
where go
= buildClient
(Proxy :: Proxy CoursesTopicsPatchResource)
mempty