{-# 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.MapsEngine.Assets.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) -- -- Return all assets readable by the current user. -- -- /See:/ for @mapsengine.assets.list@. module Network.Google.Resource.MapsEngine.Assets.List ( -- * REST Resource AssetsListResource -- * Creating a Request , assetsList , AssetsList -- * Request Lenses , alCreatedAfter , alCreatorEmail , alRole , alBbox , alModifiedAfter , alModifiedBefore , alPageToken , alProjectId , alType , alSearch , alMaxResults , alTags , alCreatedBefore ) where import Network.Google.MapsEngine.Types import Network.Google.Prelude -- | A resource alias for @mapsengine.assets.list@ method which the -- 'AssetsList' request conforms to. type AssetsListResource = "mapsengine" :> "v1" :> "assets" :> QueryParam "createdAfter" DateTime' :> QueryParam "creatorEmail" Text :> QueryParam "role" AssetsListRole :> QueryParam "bbox" Text :> QueryParam "modifiedAfter" DateTime' :> QueryParam "modifiedBefore" DateTime' :> QueryParam "pageToken" Text :> QueryParam "projectId" Text :> QueryParam "type" Text :> QueryParam "search" Text :> QueryParam "maxResults" (Textual Word32) :> QueryParam "tags" Text :> QueryParam "createdBefore" DateTime' :> QueryParam "alt" AltJSON :> Get '[JSON] AssetsListResponse -- | Return all assets readable by the current user. -- -- /See:/ 'assetsList' smart constructor. data AssetsList = AssetsList' { _alCreatedAfter :: !(Maybe DateTime') , _alCreatorEmail :: !(Maybe Text) , _alRole :: !(Maybe AssetsListRole) , _alBbox :: !(Maybe Text) , _alModifiedAfter :: !(Maybe DateTime') , _alModifiedBefore :: !(Maybe DateTime') , _alPageToken :: !(Maybe Text) , _alProjectId :: !(Maybe Text) , _alType :: !(Maybe Text) , _alSearch :: !(Maybe Text) , _alMaxResults :: !(Maybe (Textual Word32)) , _alTags :: !(Maybe Text) , _alCreatedBefore :: !(Maybe DateTime') } deriving (Eq,Show,Data,Typeable,Generic) -- | Creates a value of 'AssetsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'alCreatedAfter' -- -- * 'alCreatorEmail' -- -- * 'alRole' -- -- * 'alBbox' -- -- * 'alModifiedAfter' -- -- * 'alModifiedBefore' -- -- * 'alPageToken' -- -- * 'alProjectId' -- -- * 'alType' -- -- * 'alSearch' -- -- * 'alMaxResults' -- -- * 'alTags' -- -- * 'alCreatedBefore' assetsList :: AssetsList assetsList = AssetsList' { _alCreatedAfter = Nothing , _alCreatorEmail = Nothing , _alRole = Nothing , _alBbox = Nothing , _alModifiedAfter = Nothing , _alModifiedBefore = Nothing , _alPageToken = Nothing , _alProjectId = Nothing , _alType = Nothing , _alSearch = Nothing , _alMaxResults = Nothing , _alTags = Nothing , _alCreatedBefore = Nothing } -- | An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). -- Returned assets will have been created at or after this time. alCreatedAfter :: Lens' AssetsList (Maybe UTCTime) alCreatedAfter = lens _alCreatedAfter (\ s a -> s{_alCreatedAfter = a}) . mapping _DateTime -- | An email address representing a user. Returned assets that have been -- created by the user associated with the provided email address. alCreatorEmail :: Lens' AssetsList (Maybe Text) alCreatorEmail = lens _alCreatorEmail (\ s a -> s{_alCreatorEmail = a}) -- | The role parameter indicates that the response should only contain -- assets where the current user has the specified level of access. alRole :: Lens' AssetsList (Maybe AssetsListRole) alRole = lens _alRole (\ s a -> s{_alRole = a}) -- | A bounding box, expressed as \"west,south,east,north\". If set, only -- assets which intersect this bounding box will be returned. alBbox :: Lens' AssetsList (Maybe Text) alBbox = lens _alBbox (\ s a -> s{_alBbox = a}) -- | An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). -- Returned assets will have been modified at or after this time. alModifiedAfter :: Lens' AssetsList (Maybe UTCTime) alModifiedAfter = lens _alModifiedAfter (\ s a -> s{_alModifiedAfter = a}) . mapping _DateTime -- | An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). -- Returned assets will have been modified at or before this time. alModifiedBefore :: Lens' AssetsList (Maybe UTCTime) alModifiedBefore = lens _alModifiedBefore (\ s a -> s{_alModifiedBefore = a}) . mapping _DateTime -- | The continuation token, used to page through large result sets. To get -- the next page of results, set this parameter to the value of -- nextPageToken from the previous response. alPageToken :: Lens' AssetsList (Maybe Text) alPageToken = lens _alPageToken (\ s a -> s{_alPageToken = a}) -- | The ID of a Maps Engine project, used to filter the response. To list -- all available projects with their IDs, send a Projects: list request. -- You can also find your project ID as the value of the DashboardPlace:cid -- URL parameter when signed in to mapsengine.google.com. alProjectId :: Lens' AssetsList (Maybe Text) alProjectId = lens _alProjectId (\ s a -> s{_alProjectId = a}) -- | A comma separated list of asset types. Returned assets will have one of -- the types from the provided list. Supported values are \'map\', -- \'layer\', \'rasterCollection\' and \'table\'. alType :: Lens' AssetsList (Maybe Text) alType = lens _alType (\ s a -> s{_alType = a}) -- | An unstructured search string used to filter the set of results based on -- asset metadata. alSearch :: Lens' AssetsList (Maybe Text) alSearch = lens _alSearch (\ s a -> s{_alSearch = a}) -- | The maximum number of items to include in a single response page. The -- maximum supported value is 100. alMaxResults :: Lens' AssetsList (Maybe Word32) alMaxResults = lens _alMaxResults (\ s a -> s{_alMaxResults = a}) . mapping _Coerce -- | A comma separated list of tags. Returned assets will contain all the -- tags from the list. alTags :: Lens' AssetsList (Maybe Text) alTags = lens _alTags (\ s a -> s{_alTags = a}) -- | An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). -- Returned assets will have been created at or before this time. alCreatedBefore :: Lens' AssetsList (Maybe UTCTime) alCreatedBefore = lens _alCreatedBefore (\ s a -> s{_alCreatedBefore = a}) . mapping _DateTime instance GoogleRequest AssetsList where type Rs AssetsList = AssetsListResponse type Scopes AssetsList = '["https://www.googleapis.com/auth/mapsengine", "https://www.googleapis.com/auth/mapsengine.readonly"] requestClient AssetsList'{..} = go _alCreatedAfter _alCreatorEmail _alRole _alBbox _alModifiedAfter _alModifiedBefore _alPageToken _alProjectId _alType _alSearch _alMaxResults _alTags _alCreatedBefore (Just AltJSON) mapsEngineService where go = buildClient (Proxy :: Proxy AssetsListResource) mempty