gogol-bigtableadmin-1.0.0: gen/Gogol/BigtableAdmin/Projects/Instances/Clusters/Backups/List.hs
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE ImportQualifiedPost #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
-- |
-- Module : Gogol.BigtableAdmin.Projects.Instances.Clusters.Backups.List
-- Copyright : (c) 2015-2025 Brendan Hay
-- License : Mozilla Public License, v. 2.0.
-- Maintainer : Brendan Hay <brendan.g.hay+gogol@gmail.com>
-- Toni Cebrián <toni@tonicebrian.com>
-- Stability : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Lists Cloud Bigtable backups. Returns both completed and pending backups.
--
-- /See:/ <https://cloud.google.com/bigtable/ Cloud Bigtable Admin API Reference> for @bigtableadmin.projects.instances.clusters.backups.list@.
module Gogol.BigtableAdmin.Projects.Instances.Clusters.Backups.List
( -- * Resource
BigtableAdminProjectsInstancesClustersBackupsListResource,
-- ** Constructing a Request
BigtableAdminProjectsInstancesClustersBackupsList (..),
newBigtableAdminProjectsInstancesClustersBackupsList,
)
where
import Gogol.BigtableAdmin.Types
import Gogol.Prelude qualified as Core
-- | A resource alias for @bigtableadmin.projects.instances.clusters.backups.list@ method which the
-- 'BigtableAdminProjectsInstancesClustersBackupsList' request conforms to.
type BigtableAdminProjectsInstancesClustersBackupsListResource =
"v2"
Core.:> Core.Capture "parent" Core.Text
Core.:> "backups"
Core.:> Core.QueryParam "$.xgafv" Xgafv
Core.:> Core.QueryParam "access_token" Core.Text
Core.:> Core.QueryParam "callback" Core.Text
Core.:> Core.QueryParam "filter" Core.Text
Core.:> Core.QueryParam "orderBy" Core.Text
Core.:> Core.QueryParam "pageSize" Core.Int32
Core.:> Core.QueryParam "pageToken" Core.Text
Core.:> Core.QueryParam "uploadType" Core.Text
Core.:> Core.QueryParam "upload_protocol" Core.Text
Core.:> Core.QueryParam "alt" Core.AltJSON
Core.:> Core.Get '[Core.JSON] ListBackupsResponse
-- | Lists Cloud Bigtable backups. Returns both completed and pending backups.
--
-- /See:/ 'newBigtableAdminProjectsInstancesClustersBackupsList' smart constructor.
data BigtableAdminProjectsInstancesClustersBackupsList = BigtableAdminProjectsInstancesClustersBackupsList
{ -- | V1 error format.
xgafv :: (Core.Maybe Xgafv),
-- | OAuth access token.
accessToken :: (Core.Maybe Core.Text),
-- | JSONP
callback :: (Core.Maybe Core.Text),
-- | A filter expression that filters backups listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be \<, >, \<=, >=, !=, =, or :. Colon \':\' represents a HAS operator which is roughly synonymous with equality. Filter rules are case insensitive. The fields eligible for filtering are: * @name@ * @source_table@ * @state@ * @start_time@ (and values are of the format YYYY-MM-DDTHH:MM:SSZ) * @end_time@ (and values are of the format YYYY-MM-DDTHH:MM:SSZ) * @expire_time@ (and values are of the format YYYY-MM-DDTHH:MM:SSZ) * @size_bytes@ To filter on multiple expressions, provide each separate expression within parentheses. By default, each expression is an AND expression. However, you can include AND, OR, and NOT expressions explicitly. Some examples of using filters are: * @name:\"exact\"@ --> The backup\'s name is the string \"exact\". * @name:howl@
-- --> The backup\'s name contains the string \"howl\". * @source_table:prod@ --> The source/table\'s name contains the string \"prod\". * @state:CREATING@ --> The backup is pending creation. * @state:READY@ --> The backup is fully created and ready for use. * @(name:howl) AND (start_time \< \\\"2018-03-28T14:50:00Z\\\")@ --> The backup name contains the string \"howl\" and start/time of the backup is before 2018-03-28T14:50:00Z. * @size_bytes > 10000000000@ --> The backup\'s size is greater than 10GB
filter :: (Core.Maybe Core.Text),
-- | An expression for specifying the sort order of the results of the request. The string value should specify one or more fields in Backup. The full syntax is described at https:\/\/aip.dev\/132#ordering. Fields supported are: * name * source/table * expire/time * start/time * end/time * size/bytes * state For example, \"start/time\". The default sorting order is ascending. To specify descending order for the field, a suffix \" desc\" should be appended to the field name. For example, \"start/time desc\". Redundant space characters in the syntax are insigificant. If order/by is empty, results will be sorted by @start_time@ in descending order starting from the most recently created backup.
orderBy :: (Core.Maybe Core.Text),
-- | Number of backups to be returned in the response. If 0 or less, defaults to the server\'s maximum allowed page size.
pageSize :: (Core.Maybe Core.Int32),
-- | If non-empty, @page_token@ should contain a next/page/token from a previous ListBackupsResponse to the same @parent@ and with the same @filter@.
pageToken :: (Core.Maybe Core.Text),
-- | Required. The cluster to list backups from. Values are of the form @projects\/{project}\/instances\/{instance}\/clusters\/{cluster}@. Use @{cluster} = \'-\'@ to list backups for all clusters in an instance, e.g., @projects\/{project}\/instances\/{instance}\/clusters\/-@.
parent :: Core.Text,
-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").
uploadType :: (Core.Maybe Core.Text),
-- | Upload protocol for media (e.g. \"raw\", \"multipart\").
uploadProtocol :: (Core.Maybe Core.Text)
}
deriving (Core.Eq, Core.Show, Core.Generic)
-- | Creates a value of 'BigtableAdminProjectsInstancesClustersBackupsList' with the minimum fields required to make a request.
newBigtableAdminProjectsInstancesClustersBackupsList ::
-- | Required. The cluster to list backups from. Values are of the form @projects\/{project}\/instances\/{instance}\/clusters\/{cluster}@. Use @{cluster} = \'-\'@ to list backups for all clusters in an instance, e.g., @projects\/{project}\/instances\/{instance}\/clusters\/-@. See 'parent'.
Core.Text ->
BigtableAdminProjectsInstancesClustersBackupsList
newBigtableAdminProjectsInstancesClustersBackupsList parent =
BigtableAdminProjectsInstancesClustersBackupsList
{ xgafv =
Core.Nothing,
accessToken = Core.Nothing,
callback = Core.Nothing,
filter = Core.Nothing,
orderBy = Core.Nothing,
pageSize = Core.Nothing,
pageToken = Core.Nothing,
parent = parent,
uploadType = Core.Nothing,
uploadProtocol = Core.Nothing
}
instance
Core.GoogleRequest
BigtableAdminProjectsInstancesClustersBackupsList
where
type
Rs BigtableAdminProjectsInstancesClustersBackupsList =
ListBackupsResponse
type
Scopes BigtableAdminProjectsInstancesClustersBackupsList =
'[ Bigtable'Admin,
Bigtable'Admin'Table,
CloudBigtable'Admin,
CloudBigtable'Admin'Table,
CloudPlatform'FullControl
]
requestClient BigtableAdminProjectsInstancesClustersBackupsList {..} =
go
parent
xgafv
accessToken
callback
filter
orderBy
pageSize
pageToken
uploadType
uploadProtocol
(Core.Just Core.AltJSON)
bigtableAdminService
where
go =
Core.buildClient
( Core.Proxy ::
Core.Proxy
BigtableAdminProjectsInstancesClustersBackupsListResource
)
Core.mempty