{-# 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.Teachers.Get
(
CoursesTeachersGetResource
, coursesTeachersGet
, CoursesTeachersGet
, ctgtXgafv
, ctgtUploadProtocol
, ctgtCourseId
, ctgtAccessToken
, ctgtUploadType
, ctgtUserId
, ctgtCallback
) where
import Network.Google.Classroom.Types
import Network.Google.Prelude
type CoursesTeachersGetResource =
"v1" :>
"courses" :>
Capture "courseId" Text :>
"teachers" :>
Capture "userId" Text :>
QueryParam "$.xgafv" Xgafv :>
QueryParam "upload_protocol" Text :>
QueryParam "access_token" Text :>
QueryParam "uploadType" Text :>
QueryParam "callback" Text :>
QueryParam "alt" AltJSON :> Get '[JSON] Teacher
data CoursesTeachersGet =
CoursesTeachersGet'
{ _ctgtXgafv :: !(Maybe Xgafv)
, _ctgtUploadProtocol :: !(Maybe Text)
, _ctgtCourseId :: !Text
, _ctgtAccessToken :: !(Maybe Text)
, _ctgtUploadType :: !(Maybe Text)
, _ctgtUserId :: !Text
, _ctgtCallback :: !(Maybe Text)
}
deriving (Eq, Show, Data, Typeable, Generic)
coursesTeachersGet
:: Text
-> Text
-> CoursesTeachersGet
coursesTeachersGet pCtgtCourseId_ pCtgtUserId_ =
CoursesTeachersGet'
{ _ctgtXgafv = Nothing
, _ctgtUploadProtocol = Nothing
, _ctgtCourseId = pCtgtCourseId_
, _ctgtAccessToken = Nothing
, _ctgtUploadType = Nothing
, _ctgtUserId = pCtgtUserId_
, _ctgtCallback = Nothing
}
ctgtXgafv :: Lens' CoursesTeachersGet (Maybe Xgafv)
ctgtXgafv
= lens _ctgtXgafv (\ s a -> s{_ctgtXgafv = a})
ctgtUploadProtocol :: Lens' CoursesTeachersGet (Maybe Text)
ctgtUploadProtocol
= lens _ctgtUploadProtocol
(\ s a -> s{_ctgtUploadProtocol = a})
ctgtCourseId :: Lens' CoursesTeachersGet Text
ctgtCourseId
= lens _ctgtCourseId (\ s a -> s{_ctgtCourseId = a})
ctgtAccessToken :: Lens' CoursesTeachersGet (Maybe Text)
ctgtAccessToken
= lens _ctgtAccessToken
(\ s a -> s{_ctgtAccessToken = a})
ctgtUploadType :: Lens' CoursesTeachersGet (Maybe Text)
ctgtUploadType
= lens _ctgtUploadType
(\ s a -> s{_ctgtUploadType = a})
ctgtUserId :: Lens' CoursesTeachersGet Text
ctgtUserId
= lens _ctgtUserId (\ s a -> s{_ctgtUserId = a})
ctgtCallback :: Lens' CoursesTeachersGet (Maybe Text)
ctgtCallback
= lens _ctgtCallback (\ s a -> s{_ctgtCallback = a})
instance GoogleRequest CoursesTeachersGet where
type Rs CoursesTeachersGet = Teacher
type Scopes CoursesTeachersGet =
'["https://www.googleapis.com/auth/classroom.profile.emails",
"https://www.googleapis.com/auth/classroom.profile.photos",
"https://www.googleapis.com/auth/classroom.rosters",
"https://www.googleapis.com/auth/classroom.rosters.readonly"]
requestClient CoursesTeachersGet'{..}
= go _ctgtCourseId _ctgtUserId _ctgtXgafv
_ctgtUploadProtocol
_ctgtAccessToken
_ctgtUploadType
_ctgtCallback
(Just AltJSON)
classroomService
where go
= buildClient
(Proxy :: Proxy CoursesTeachersGetResource)
mempty