{-# 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.Monitoring.Projects.AlertPolicies.List -- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Lists the existing alerting policies for the project. -- -- /See:/ for @monitoring.projects.alertPolicies.list@. module Network.Google.Resource.Monitoring.Projects.AlertPolicies.List ( -- * REST Resource ProjectsAlertPoliciesListResource -- * Creating a Request , projectsAlertPoliciesList , ProjectsAlertPoliciesList -- * Request Lenses , paplXgafv , paplUploadProtocol , paplOrderBy , paplAccessToken , paplUploadType , paplName , paplFilter , paplPageToken , paplPageSize , paplCallback ) where import Network.Google.Monitoring.Types import Network.Google.Prelude -- | A resource alias for @monitoring.projects.alertPolicies.list@ method which the -- 'ProjectsAlertPoliciesList' request conforms to. type ProjectsAlertPoliciesListResource = "v3" :> Capture "name" Text :> "alertPolicies" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "orderBy" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "filter" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListAlertPoliciesResponse -- | Lists the existing alerting policies for the project. -- -- /See:/ 'projectsAlertPoliciesList' smart constructor. data ProjectsAlertPoliciesList = ProjectsAlertPoliciesList' { _paplXgafv :: !(Maybe Xgafv) , _paplUploadProtocol :: !(Maybe Text) , _paplOrderBy :: !(Maybe Text) , _paplAccessToken :: !(Maybe Text) , _paplUploadType :: !(Maybe Text) , _paplName :: !Text , _paplFilter :: !(Maybe Text) , _paplPageToken :: !(Maybe Text) , _paplPageSize :: !(Maybe (Textual Int32)) , _paplCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) -- | Creates a value of 'ProjectsAlertPoliciesList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'paplXgafv' -- -- * 'paplUploadProtocol' -- -- * 'paplOrderBy' -- -- * 'paplAccessToken' -- -- * 'paplUploadType' -- -- * 'paplName' -- -- * 'paplFilter' -- -- * 'paplPageToken' -- -- * 'paplPageSize' -- -- * 'paplCallback' projectsAlertPoliciesList :: Text -- ^ 'paplName' -> ProjectsAlertPoliciesList projectsAlertPoliciesList pPaplName_ = ProjectsAlertPoliciesList' { _paplXgafv = Nothing , _paplUploadProtocol = Nothing , _paplOrderBy = Nothing , _paplAccessToken = Nothing , _paplUploadType = Nothing , _paplName = pPaplName_ , _paplFilter = Nothing , _paplPageToken = Nothing , _paplPageSize = Nothing , _paplCallback = Nothing } -- | V1 error format. paplXgafv :: Lens' ProjectsAlertPoliciesList (Maybe Xgafv) paplXgafv = lens _paplXgafv (\ s a -> s{_paplXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\"). paplUploadProtocol :: Lens' ProjectsAlertPoliciesList (Maybe Text) paplUploadProtocol = lens _paplUploadProtocol (\ s a -> s{_paplUploadProtocol = a}) -- | A comma-separated list of fields by which to sort the result. Supports -- the same set of field references as the filter field. Entries can be -- prefixed with a minus sign to sort by the field in descending order.For -- more details, see sorting and filtering. paplOrderBy :: Lens' ProjectsAlertPoliciesList (Maybe Text) paplOrderBy = lens _paplOrderBy (\ s a -> s{_paplOrderBy = a}) -- | OAuth access token. paplAccessToken :: Lens' ProjectsAlertPoliciesList (Maybe Text) paplAccessToken = lens _paplAccessToken (\ s a -> s{_paplAccessToken = a}) -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\"). paplUploadType :: Lens' ProjectsAlertPoliciesList (Maybe Text) paplUploadType = lens _paplUploadType (\ s a -> s{_paplUploadType = a}) -- | The project whose alert policies are to be listed. The format is -- projects\/[PROJECT_ID] Note that this field names the parent container -- in which the alerting policies to be listed are stored. To retrieve a -- single alerting policy by name, use the GetAlertPolicy operation, -- instead. paplName :: Lens' ProjectsAlertPoliciesList Text paplName = lens _paplName (\ s a -> s{_paplName = a}) -- | If provided, this field specifies the criteria that must be met by alert -- policies to be included in the response.For more details, see sorting -- and filtering. paplFilter :: Lens' ProjectsAlertPoliciesList (Maybe Text) paplFilter = lens _paplFilter (\ s a -> s{_paplFilter = a}) -- | If this field is not empty then it must contain the nextPageToken value -- returned by a previous call to this method. Using this field causes the -- method to return more results from the previous method call. paplPageToken :: Lens' ProjectsAlertPoliciesList (Maybe Text) paplPageToken = lens _paplPageToken (\ s a -> s{_paplPageToken = a}) -- | The maximum number of results to return in a single response. paplPageSize :: Lens' ProjectsAlertPoliciesList (Maybe Int32) paplPageSize = lens _paplPageSize (\ s a -> s{_paplPageSize = a}) . mapping _Coerce -- | JSONP paplCallback :: Lens' ProjectsAlertPoliciesList (Maybe Text) paplCallback = lens _paplCallback (\ s a -> s{_paplCallback = a}) instance GoogleRequest ProjectsAlertPoliciesList where type Rs ProjectsAlertPoliciesList = ListAlertPoliciesResponse type Scopes ProjectsAlertPoliciesList = '["https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring", "https://www.googleapis.com/auth/monitoring.read"] requestClient ProjectsAlertPoliciesList'{..} = go _paplName _paplXgafv _paplUploadProtocol _paplOrderBy _paplAccessToken _paplUploadType _paplFilter _paplPageToken _paplPageSize _paplCallback (Just AltJSON) monitoringService where go = buildClient (Proxy :: Proxy ProjectsAlertPoliciesListResource) mempty