{-# 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.ResourceViews.ZoneViews.Get
(
ZoneViewsGetResource
, zoneViewsGet
, ZoneViewsGet
, zvgResourceView
, zvgProject
, zvgZone
) where
import Network.Google.Prelude
import Network.Google.ResourceViews.Types
type ZoneViewsGetResource =
"resourceviews" :>
"v1beta2" :>
"projects" :>
Capture "project" Text :>
"zones" :>
Capture "zone" Text :>
"resourceViews" :>
Capture "resourceView" Text :>
QueryParam "alt" AltJSON :> Get '[JSON] ResourceView
-- | Get the information of a zonal resource view.
--
-- /See:/ 'zoneViewsGet' smart constructor.
data ZoneViewsGet = ZoneViewsGet'
{ _zvgResourceView :: !Text
, _zvgProject :: !Text
, _zvgZone :: !Text
} deriving (Eq,Show,Data,Typeable,Generic)
-- | Creates a value of 'ZoneViewsGet' with the minimum fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
-- * 'zvgResourceView'
--
-- * 'zvgProject'
--
-- * 'zvgZone'
zoneViewsGet
:: Text -- ^ 'zvgResourceView'
-> Text -- ^ 'zvgProject'
-> Text -- ^ 'zvgZone'
-> ZoneViewsGet
zoneViewsGet pZvgResourceView_ pZvgProject_ pZvgZone_ =
ZoneViewsGet'
{ _zvgResourceView = pZvgResourceView_
, _zvgProject = pZvgProject_
, _zvgZone = pZvgZone_
}
-- | The name of the resource view.
zvgResourceView :: Lens' ZoneViewsGet Text
zvgResourceView
= lens _zvgResourceView
(\ s a -> s{_zvgResourceView = a})
-- | The project name of the resource view.
zvgProject :: Lens' ZoneViewsGet Text
zvgProject
= lens _zvgProject (\ s a -> s{_zvgProject = a})
-- | The zone name of the resource view.
zvgZone :: Lens' ZoneViewsGet Text
zvgZone = lens _zvgZone (\ s a -> s{_zvgZone = a})
instance GoogleRequest ZoneViewsGet where
type Rs ZoneViewsGet = ResourceView
type Scopes ZoneViewsGet =
'["https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/cloud-platform.read-only",
"https://www.googleapis.com/auth/compute",
"https://www.googleapis.com/auth/compute.readonly",
"https://www.googleapis.com/auth/ndev.cloudman",
"https://www.googleapis.com/auth/ndev.cloudman.readonly"]
requestClient ZoneViewsGet'{..}
= go _zvgProject _zvgZone _zvgResourceView
(Just AltJSON)
resourceViewsService
where go
= buildClient (Proxy :: Proxy ZoneViewsGetResource)
mempty