module Network.Google.Resource.TaskQueue.Tasks.Patch
(
TasksPatchResource
, tasksPatch
, TasksPatch
, tpTaskQueue
, tpProject
, tpPayload
, tpTask
, tpNewLeaseSeconds
) where
import Network.Google.Prelude
import Network.Google.TaskQueue.Types
type TasksPatchResource =
"taskqueue" :>
"v1beta2" :>
"projects" :>
Capture "project" Text :>
"taskqueues" :>
Capture "taskqueue" Text :>
"tasks" :>
Capture "task" Text :>
QueryParam "newLeaseSeconds" (Textual Int32) :>
QueryParam "alt" AltJSON :>
ReqBody '[JSON] Task :> Patch '[JSON] Task
data TasksPatch = TasksPatch'
{ _tpTaskQueue :: !Text
, _tpProject :: !Text
, _tpPayload :: !Task
, _tpTask :: !Text
, _tpNewLeaseSeconds :: !(Textual Int32)
} deriving (Eq,Show,Data,Typeable,Generic)
tasksPatch
:: Text
-> Text
-> Task
-> Text
-> Int32
-> TasksPatch
tasksPatch pTpTaskQueue_ pTpProject_ pTpPayload_ pTpTask_ pTpNewLeaseSeconds_ =
TasksPatch'
{ _tpTaskQueue = pTpTaskQueue_
, _tpProject = pTpProject_
, _tpPayload = pTpPayload_
, _tpTask = pTpTask_
, _tpNewLeaseSeconds = _Coerce # pTpNewLeaseSeconds_
}
tpTaskQueue :: Lens' TasksPatch Text
tpTaskQueue
= lens _tpTaskQueue (\ s a -> s{_tpTaskQueue = a})
tpProject :: Lens' TasksPatch Text
tpProject
= lens _tpProject (\ s a -> s{_tpProject = a})
tpPayload :: Lens' TasksPatch Task
tpPayload
= lens _tpPayload (\ s a -> s{_tpPayload = a})
tpTask :: Lens' TasksPatch Text
tpTask = lens _tpTask (\ s a -> s{_tpTask = a})
tpNewLeaseSeconds :: Lens' TasksPatch Int32
tpNewLeaseSeconds
= lens _tpNewLeaseSeconds
(\ s a -> s{_tpNewLeaseSeconds = a})
. _Coerce
instance GoogleRequest TasksPatch where
type Rs TasksPatch = Task
type Scopes TasksPatch =
'["https://www.googleapis.com/auth/taskqueue",
"https://www.googleapis.com/auth/taskqueue.consumer"]
requestClient TasksPatch'{..}
= go _tpProject _tpTaskQueue _tpTask
(Just _tpNewLeaseSeconds)
(Just AltJSON)
_tpPayload
taskQueueService
where go
= buildClient (Proxy :: Proxy TasksPatchResource)
mempty