module Network.Google.Resource.Autoscaler.Autoscalers.Update
(
AutoscalersUpdateResource
, autoscalersUpdate
, AutoscalersUpdate
, auProject
, auZone
, auPayload
, auAutoscaler
) where
import Network.Google.Autoscaler.Types
import Network.Google.Prelude
type AutoscalersUpdateResource =
"autoscaler" :>
"v1beta2" :>
"projects" :>
Capture "project" Text :>
"zones" :>
Capture "zone" Text :>
"autoscalers" :>
Capture "autoscaler" Text :>
QueryParam "alt" AltJSON :>
ReqBody '[JSON] Autoscaler :> Put '[JSON] Operation
data AutoscalersUpdate = AutoscalersUpdate'
{ _auProject :: !Text
, _auZone :: !Text
, _auPayload :: !Autoscaler
, _auAutoscaler :: !Text
} deriving (Eq,Show,Data,Typeable,Generic)
autoscalersUpdate
:: Text
-> Text
-> Autoscaler
-> Text
-> AutoscalersUpdate
autoscalersUpdate pAuProject_ pAuZone_ pAuPayload_ pAuAutoscaler_ =
AutoscalersUpdate'
{ _auProject = pAuProject_
, _auZone = pAuZone_
, _auPayload = pAuPayload_
, _auAutoscaler = pAuAutoscaler_
}
auProject :: Lens' AutoscalersUpdate Text
auProject
= lens _auProject (\ s a -> s{_auProject = a})
auZone :: Lens' AutoscalersUpdate Text
auZone = lens _auZone (\ s a -> s{_auZone = a})
auPayload :: Lens' AutoscalersUpdate Autoscaler
auPayload
= lens _auPayload (\ s a -> s{_auPayload = a})
auAutoscaler :: Lens' AutoscalersUpdate Text
auAutoscaler
= lens _auAutoscaler (\ s a -> s{_auAutoscaler = a})
instance GoogleRequest AutoscalersUpdate where
type Rs AutoscalersUpdate = Operation
type Scopes AutoscalersUpdate =
'["https://www.googleapis.com/auth/compute"]
requestClient AutoscalersUpdate'{..}
= go _auProject _auZone _auAutoscaler (Just AltJSON)
_auPayload
autoscalerService
where go
= buildClient
(Proxy :: Proxy AutoscalersUpdateResource)
mempty