gogol-bigquery 0.3.0 → 0.4.0
raw patch · 12 files changed
+8305/−5804 lines, 12 filesdep ~gogol-corePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: gogol-core
API changes (from Hackage documentation)
+ Network.Google.BigQuery: bigQueryModelTraining :: BigQueryModelTraining
+ Network.Google.BigQuery: bqmtCurrentIteration :: Lens' BigQueryModelTraining (Maybe Int32)
+ Network.Google.BigQuery: bqmtExpectedTotalIterations :: Lens' BigQueryModelTraining (Maybe Int64)
+ Network.Google.BigQuery: cFields :: Lens' Clustering [Text]
+ Network.Google.BigQuery: clustering :: Clustering
+ Network.Google.BigQuery: data BigQueryModelTraining
+ Network.Google.BigQuery: data Clustering
+ Network.Google.BigQuery: data DestinationTableProperties
+ Network.Google.BigQuery: data EncryptionConfiguration
+ Network.Google.BigQuery: data GetServiceAccountResponse
+ Network.Google.BigQuery: data IterationResult
+ Network.Google.BigQuery: data JobStatistics2ReservationUsageItem
+ Network.Google.BigQuery: data JobStatisticsReservationUsageItem
+ Network.Google.BigQuery: data MaterializedViewDefinition
+ Network.Google.BigQuery: data ModelDefinition
+ Network.Google.BigQuery: data ModelDefinitionModelOptions
+ Network.Google.BigQuery: data QueryTimelineSample
+ Network.Google.BigQuery: data RangePartitioning
+ Network.Google.BigQuery: data RangePartitioningRange
+ Network.Google.BigQuery: data TableListTablesItemView
+ Network.Google.BigQuery: data TrainingRun
+ Network.Google.BigQuery: data TrainingRunTrainingOptions
+ Network.Google.BigQuery: destinationTableProperties :: DestinationTableProperties
+ Network.Google.BigQuery: dsDefaultPartitionExpirationMs :: Lens' DataSet (Maybe Int64)
+ Network.Google.BigQuery: dsaiIAMMember :: Lens' DataSetAccessItem (Maybe Text)
+ Network.Google.BigQuery: dsldsiLocation :: Lens' DataSetListDataSetsItem (Maybe Text)
+ Network.Google.BigQuery: dtpDescription :: Lens' DestinationTableProperties (Maybe Text)
+ Network.Google.BigQuery: dtpFriendlyName :: Lens' DestinationTableProperties (Maybe Text)
+ Network.Google.BigQuery: ecKmsKeyName :: Lens' EncryptionConfiguration (Maybe Text)
+ Network.Google.BigQuery: encryptionConfiguration :: EncryptionConfiguration
+ Network.Google.BigQuery: eqsCompletedParallelInputs :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsComputeMsAvg :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsComputeMsMax :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsEndMs :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsInputStages :: Lens' ExplainQueryStage [Int64]
+ Network.Google.BigQuery: eqsParallelInputs :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsReadMsAvg :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsReadMsMax :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsShuffleOutputBytes :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsShuffleOutputBytesSpilled :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsStartMs :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsWaitMsAvg :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsWaitMsMax :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsWriteMsAvg :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: eqsWriteMsMax :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery: getServiceAccountResponse :: GetServiceAccountResponse
+ Network.Google.BigQuery: gsarEmail :: Lens' GetServiceAccountResponse (Maybe Text)
+ Network.Google.BigQuery: gsarKind :: Lens' GetServiceAccountResponse Text
+ Network.Google.BigQuery: gsoRange :: Lens' GoogleSheetsOptions (Maybe Text)
+ Network.Google.BigQuery: irDurationMs :: Lens' IterationResult (Maybe Int64)
+ Network.Google.BigQuery: irEvalLoss :: Lens' IterationResult (Maybe Double)
+ Network.Google.BigQuery: irIndex :: Lens' IterationResult (Maybe Int32)
+ Network.Google.BigQuery: irLearnRate :: Lens' IterationResult (Maybe Double)
+ Network.Google.BigQuery: irTrainingLoss :: Lens' IterationResult (Maybe Double)
+ Network.Google.BigQuery: iterationResult :: IterationResult
+ Network.Google.BigQuery: jDdlOperationPerformed :: Lens' JobStatistics2 (Maybe Text)
+ Network.Google.BigQuery: jDdlTargetTable :: Lens' JobStatistics2 (Maybe TableReference)
+ Network.Google.BigQuery: jEstimatedBytesProcessed :: Lens' JobStatistics2 (Maybe Int64)
+ Network.Google.BigQuery: jModelTraining :: Lens' JobStatistics2 (Maybe BigQueryModelTraining)
+ Network.Google.BigQuery: jModelTrainingCurrentIteration :: Lens' JobStatistics2 (Maybe Int32)
+ Network.Google.BigQuery: jModelTrainingExpectedTotalIteration :: Lens' JobStatistics2 (Maybe Int64)
+ Network.Google.BigQuery: jName :: Lens' JobStatistics2ReservationUsageItem (Maybe Text)
+ Network.Google.BigQuery: jReservationUsage :: Lens' JobStatistics2 [JobStatistics2ReservationUsageItem]
+ Network.Google.BigQuery: jSlotMs :: Lens' JobStatistics2ReservationUsageItem (Maybe Int64)
+ Network.Google.BigQuery: jTimeline :: Lens' JobStatistics2 [QueryTimelineSample]
+ Network.Google.BigQuery: jTotalBytesProcessedAccuracy :: Lens' JobStatistics2 (Maybe Text)
+ Network.Google.BigQuery: jTotalPartitionsProcessed :: Lens' JobStatistics2 (Maybe Int64)
+ Network.Google.BigQuery: jTotalSlotMs :: Lens' JobStatistics2 (Maybe Int64)
+ Network.Google.BigQuery: jcJobTimeoutMs :: Lens' JobConfiguration (Maybe Int64)
+ Network.Google.BigQuery: jcJobType :: Lens' JobConfiguration (Maybe Text)
+ Network.Google.BigQuery: jclClustering :: Lens' JobConfigurationLoad (Maybe Clustering)
+ Network.Google.BigQuery: jclDestinationEncryptionConfiguration :: Lens' JobConfigurationLoad (Maybe EncryptionConfiguration)
+ Network.Google.BigQuery: jclDestinationTableProperties :: Lens' JobConfigurationLoad (Maybe DestinationTableProperties)
+ Network.Google.BigQuery: jclRangePartitioning :: Lens' JobConfigurationLoad (Maybe RangePartitioning)
+ Network.Google.BigQuery: jclTimePartitioning :: Lens' JobConfigurationLoad (Maybe TimePartitioning)
+ Network.Google.BigQuery: jclUseAvroLogicalTypes :: Lens' JobConfigurationLoad (Maybe Bool)
+ Network.Google.BigQuery: jcqClustering :: Lens' JobConfigurationQuery (Maybe Clustering)
+ Network.Google.BigQuery: jcqDestinationEncryptionConfiguration :: Lens' JobConfigurationQuery (Maybe EncryptionConfiguration)
+ Network.Google.BigQuery: jcqRangePartitioning :: Lens' JobConfigurationQuery (Maybe RangePartitioning)
+ Network.Google.BigQuery: jcqTimePartitioning :: Lens' JobConfigurationQuery (Maybe TimePartitioning)
+ Network.Google.BigQuery: jctcDestinationEncryptionConfiguration :: Lens' JobConfigurationTableCopy (Maybe EncryptionConfiguration)
+ Network.Google.BigQuery: jobStatistics2ReservationUsageItem :: JobStatistics2ReservationUsageItem
+ Network.Google.BigQuery: jobStatisticsReservationUsageItem :: JobStatisticsReservationUsageItem
+ Network.Google.BigQuery: jrLocation :: Lens' JobReference (Maybe Text)
+ Network.Google.BigQuery: jsBadRecords :: Lens' JobStatistics3 (Maybe Int64)
+ Network.Google.BigQuery: jsCompletionRatio :: Lens' JobStatistics (Maybe Double)
+ Network.Google.BigQuery: jsQuotaDeferments :: Lens' JobStatistics [Text]
+ Network.Google.BigQuery: jsReservationUsage :: Lens' JobStatistics [JobStatisticsReservationUsageItem]
+ Network.Google.BigQuery: jsTotalSlotMs :: Lens' JobStatistics (Maybe Int64)
+ Network.Google.BigQuery: jsruiName :: Lens' JobStatisticsReservationUsageItem (Maybe Text)
+ Network.Google.BigQuery: jsruiSlotMs :: Lens' JobStatisticsReservationUsageItem (Maybe Int64)
+ Network.Google.BigQuery: materializedViewDefinition :: MaterializedViewDefinition
+ Network.Google.BigQuery: mdModelOptions :: Lens' ModelDefinition (Maybe ModelDefinitionModelOptions)
+ Network.Google.BigQuery: mdTrainingRuns :: Lens' ModelDefinition [TrainingRun]
+ Network.Google.BigQuery: mdmoLabels :: Lens' ModelDefinitionModelOptions [Text]
+ Network.Google.BigQuery: mdmoLossType :: Lens' ModelDefinitionModelOptions (Maybe Text)
+ Network.Google.BigQuery: mdmoModelType :: Lens' ModelDefinitionModelOptions (Maybe Text)
+ Network.Google.BigQuery: modelDefinition :: ModelDefinition
+ Network.Google.BigQuery: modelDefinitionModelOptions :: ModelDefinitionModelOptions
+ Network.Google.BigQuery: mvdLastRefreshTime :: Lens' MaterializedViewDefinition (Maybe Int64)
+ Network.Google.BigQuery: mvdQuery :: Lens' MaterializedViewDefinition (Maybe Text)
+ Network.Google.BigQuery: qrLocation :: Lens' QueryRequest (Maybe Text)
+ Network.Google.BigQuery: qtsActiveUnits :: Lens' QueryTimelineSample (Maybe Int64)
+ Network.Google.BigQuery: qtsCompletedUnits :: Lens' QueryTimelineSample (Maybe Int64)
+ Network.Google.BigQuery: qtsElapsedMs :: Lens' QueryTimelineSample (Maybe Int64)
+ Network.Google.BigQuery: qtsPendingUnits :: Lens' QueryTimelineSample (Maybe Int64)
+ Network.Google.BigQuery: qtsTotalSlotMs :: Lens' QueryTimelineSample (Maybe Int64)
+ Network.Google.BigQuery: queryTimelineSample :: QueryTimelineSample
+ Network.Google.BigQuery: rangePartitioning :: RangePartitioning
+ Network.Google.BigQuery: rangePartitioningRange :: RangePartitioningRange
+ Network.Google.BigQuery: rpField :: Lens' RangePartitioning (Maybe Text)
+ Network.Google.BigQuery: rpRange :: Lens' RangePartitioning (Maybe RangePartitioningRange)
+ Network.Google.BigQuery: rprEnd :: Lens' RangePartitioningRange (Maybe Int64)
+ Network.Google.BigQuery: rprInterval :: Lens' RangePartitioningRange (Maybe Int64)
+ Network.Google.BigQuery: rprStart :: Lens' RangePartitioningRange (Maybe Int64)
+ Network.Google.BigQuery: tabClustering :: Lens' Table (Maybe Clustering)
+ Network.Google.BigQuery: tabEncryptionConfiguration :: Lens' Table (Maybe EncryptionConfiguration)
+ Network.Google.BigQuery: tabMaterializedView :: Lens' Table (Maybe MaterializedViewDefinition)
+ Network.Google.BigQuery: tabModel :: Lens' Table (Maybe ModelDefinition)
+ Network.Google.BigQuery: tabNumPhysicalBytes :: Lens' Table (Maybe Int64)
+ Network.Google.BigQuery: tabRangePartitioning :: Lens' Table (Maybe RangePartitioning)
+ Network.Google.BigQuery: tabRequirePartitionFilter :: Lens' Table Bool
+ Network.Google.BigQuery: tableListTablesItemView :: TableListTablesItemView
+ Network.Google.BigQuery: tltiClustering :: Lens' TableListTablesItem (Maybe Clustering)
+ Network.Google.BigQuery: tltiCreationTime :: Lens' TableListTablesItem (Maybe Int64)
+ Network.Google.BigQuery: tltiExpirationTime :: Lens' TableListTablesItem (Maybe Int64)
+ Network.Google.BigQuery: tltiTimePartitioning :: Lens' TableListTablesItem (Maybe TimePartitioning)
+ Network.Google.BigQuery: tltiView :: Lens' TableListTablesItem (Maybe TableListTablesItemView)
+ Network.Google.BigQuery: tltivUseLegacySQL :: Lens' TableListTablesItemView (Maybe Bool)
+ Network.Google.BigQuery: tpField :: Lens' TimePartitioning (Maybe Text)
+ Network.Google.BigQuery: tpRequirePartitionFilter :: Lens' TimePartitioning (Maybe Bool)
+ Network.Google.BigQuery: trIterationResults :: Lens' TrainingRun [IterationResult]
+ Network.Google.BigQuery: trStartTime :: Lens' TrainingRun (Maybe UTCTime)
+ Network.Google.BigQuery: trState :: Lens' TrainingRun (Maybe Text)
+ Network.Google.BigQuery: trTrainingOptions :: Lens' TrainingRun (Maybe TrainingRunTrainingOptions)
+ Network.Google.BigQuery: trainingRun :: TrainingRun
+ Network.Google.BigQuery: trainingRunTrainingOptions :: TrainingRunTrainingOptions
+ Network.Google.BigQuery: trtoEarlyStop :: Lens' TrainingRunTrainingOptions (Maybe Bool)
+ Network.Google.BigQuery: trtoL1Reg :: Lens' TrainingRunTrainingOptions (Maybe Double)
+ Network.Google.BigQuery: trtoL2Reg :: Lens' TrainingRunTrainingOptions (Maybe Double)
+ Network.Google.BigQuery: trtoLearnRate :: Lens' TrainingRunTrainingOptions (Maybe Double)
+ Network.Google.BigQuery: trtoLearnRateStrategy :: Lens' TrainingRunTrainingOptions (Maybe Text)
+ Network.Google.BigQuery: trtoLineSearchInitLearnRate :: Lens' TrainingRunTrainingOptions (Maybe Double)
+ Network.Google.BigQuery: trtoMaxIteration :: Lens' TrainingRunTrainingOptions (Maybe Int64)
+ Network.Google.BigQuery: trtoMinRelProgress :: Lens' TrainingRunTrainingOptions (Maybe Double)
+ Network.Google.BigQuery: trtoWarmStart :: Lens' TrainingRunTrainingOptions (Maybe Bool)
+ Network.Google.BigQuery.Types: bigQueryModelTraining :: BigQueryModelTraining
+ Network.Google.BigQuery.Types: bqmtCurrentIteration :: Lens' BigQueryModelTraining (Maybe Int32)
+ Network.Google.BigQuery.Types: bqmtExpectedTotalIterations :: Lens' BigQueryModelTraining (Maybe Int64)
+ Network.Google.BigQuery.Types: cFields :: Lens' Clustering [Text]
+ Network.Google.BigQuery.Types: clustering :: Clustering
+ Network.Google.BigQuery.Types: data BigQueryModelTraining
+ Network.Google.BigQuery.Types: data Clustering
+ Network.Google.BigQuery.Types: data DestinationTableProperties
+ Network.Google.BigQuery.Types: data EncryptionConfiguration
+ Network.Google.BigQuery.Types: data GetServiceAccountResponse
+ Network.Google.BigQuery.Types: data IterationResult
+ Network.Google.BigQuery.Types: data JobStatistics2ReservationUsageItem
+ Network.Google.BigQuery.Types: data JobStatisticsReservationUsageItem
+ Network.Google.BigQuery.Types: data MaterializedViewDefinition
+ Network.Google.BigQuery.Types: data ModelDefinition
+ Network.Google.BigQuery.Types: data ModelDefinitionModelOptions
+ Network.Google.BigQuery.Types: data QueryTimelineSample
+ Network.Google.BigQuery.Types: data RangePartitioning
+ Network.Google.BigQuery.Types: data RangePartitioningRange
+ Network.Google.BigQuery.Types: data TableListTablesItemView
+ Network.Google.BigQuery.Types: data TrainingRun
+ Network.Google.BigQuery.Types: data TrainingRunTrainingOptions
+ Network.Google.BigQuery.Types: destinationTableProperties :: DestinationTableProperties
+ Network.Google.BigQuery.Types: dsDefaultPartitionExpirationMs :: Lens' DataSet (Maybe Int64)
+ Network.Google.BigQuery.Types: dsaiIAMMember :: Lens' DataSetAccessItem (Maybe Text)
+ Network.Google.BigQuery.Types: dsldsiLocation :: Lens' DataSetListDataSetsItem (Maybe Text)
+ Network.Google.BigQuery.Types: dtpDescription :: Lens' DestinationTableProperties (Maybe Text)
+ Network.Google.BigQuery.Types: dtpFriendlyName :: Lens' DestinationTableProperties (Maybe Text)
+ Network.Google.BigQuery.Types: ecKmsKeyName :: Lens' EncryptionConfiguration (Maybe Text)
+ Network.Google.BigQuery.Types: encryptionConfiguration :: EncryptionConfiguration
+ Network.Google.BigQuery.Types: eqsCompletedParallelInputs :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsComputeMsAvg :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsComputeMsMax :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsEndMs :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsInputStages :: Lens' ExplainQueryStage [Int64]
+ Network.Google.BigQuery.Types: eqsParallelInputs :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsReadMsAvg :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsReadMsMax :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsShuffleOutputBytes :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsShuffleOutputBytesSpilled :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsStartMs :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsWaitMsAvg :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsWaitMsMax :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsWriteMsAvg :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: eqsWriteMsMax :: Lens' ExplainQueryStage (Maybe Int64)
+ Network.Google.BigQuery.Types: getServiceAccountResponse :: GetServiceAccountResponse
+ Network.Google.BigQuery.Types: gsarEmail :: Lens' GetServiceAccountResponse (Maybe Text)
+ Network.Google.BigQuery.Types: gsarKind :: Lens' GetServiceAccountResponse Text
+ Network.Google.BigQuery.Types: gsoRange :: Lens' GoogleSheetsOptions (Maybe Text)
+ Network.Google.BigQuery.Types: irDurationMs :: Lens' IterationResult (Maybe Int64)
+ Network.Google.BigQuery.Types: irEvalLoss :: Lens' IterationResult (Maybe Double)
+ Network.Google.BigQuery.Types: irIndex :: Lens' IterationResult (Maybe Int32)
+ Network.Google.BigQuery.Types: irLearnRate :: Lens' IterationResult (Maybe Double)
+ Network.Google.BigQuery.Types: irTrainingLoss :: Lens' IterationResult (Maybe Double)
+ Network.Google.BigQuery.Types: iterationResult :: IterationResult
+ Network.Google.BigQuery.Types: jDdlOperationPerformed :: Lens' JobStatistics2 (Maybe Text)
+ Network.Google.BigQuery.Types: jDdlTargetTable :: Lens' JobStatistics2 (Maybe TableReference)
+ Network.Google.BigQuery.Types: jEstimatedBytesProcessed :: Lens' JobStatistics2 (Maybe Int64)
+ Network.Google.BigQuery.Types: jModelTraining :: Lens' JobStatistics2 (Maybe BigQueryModelTraining)
+ Network.Google.BigQuery.Types: jModelTrainingCurrentIteration :: Lens' JobStatistics2 (Maybe Int32)
+ Network.Google.BigQuery.Types: jModelTrainingExpectedTotalIteration :: Lens' JobStatistics2 (Maybe Int64)
+ Network.Google.BigQuery.Types: jName :: Lens' JobStatistics2ReservationUsageItem (Maybe Text)
+ Network.Google.BigQuery.Types: jReservationUsage :: Lens' JobStatistics2 [JobStatistics2ReservationUsageItem]
+ Network.Google.BigQuery.Types: jSlotMs :: Lens' JobStatistics2ReservationUsageItem (Maybe Int64)
+ Network.Google.BigQuery.Types: jTimeline :: Lens' JobStatistics2 [QueryTimelineSample]
+ Network.Google.BigQuery.Types: jTotalBytesProcessedAccuracy :: Lens' JobStatistics2 (Maybe Text)
+ Network.Google.BigQuery.Types: jTotalPartitionsProcessed :: Lens' JobStatistics2 (Maybe Int64)
+ Network.Google.BigQuery.Types: jTotalSlotMs :: Lens' JobStatistics2 (Maybe Int64)
+ Network.Google.BigQuery.Types: jcJobTimeoutMs :: Lens' JobConfiguration (Maybe Int64)
+ Network.Google.BigQuery.Types: jcJobType :: Lens' JobConfiguration (Maybe Text)
+ Network.Google.BigQuery.Types: jclClustering :: Lens' JobConfigurationLoad (Maybe Clustering)
+ Network.Google.BigQuery.Types: jclDestinationEncryptionConfiguration :: Lens' JobConfigurationLoad (Maybe EncryptionConfiguration)
+ Network.Google.BigQuery.Types: jclDestinationTableProperties :: Lens' JobConfigurationLoad (Maybe DestinationTableProperties)
+ Network.Google.BigQuery.Types: jclRangePartitioning :: Lens' JobConfigurationLoad (Maybe RangePartitioning)
+ Network.Google.BigQuery.Types: jclTimePartitioning :: Lens' JobConfigurationLoad (Maybe TimePartitioning)
+ Network.Google.BigQuery.Types: jclUseAvroLogicalTypes :: Lens' JobConfigurationLoad (Maybe Bool)
+ Network.Google.BigQuery.Types: jcqClustering :: Lens' JobConfigurationQuery (Maybe Clustering)
+ Network.Google.BigQuery.Types: jcqDestinationEncryptionConfiguration :: Lens' JobConfigurationQuery (Maybe EncryptionConfiguration)
+ Network.Google.BigQuery.Types: jcqRangePartitioning :: Lens' JobConfigurationQuery (Maybe RangePartitioning)
+ Network.Google.BigQuery.Types: jcqTimePartitioning :: Lens' JobConfigurationQuery (Maybe TimePartitioning)
+ Network.Google.BigQuery.Types: jctcDestinationEncryptionConfiguration :: Lens' JobConfigurationTableCopy (Maybe EncryptionConfiguration)
+ Network.Google.BigQuery.Types: jobStatistics2ReservationUsageItem :: JobStatistics2ReservationUsageItem
+ Network.Google.BigQuery.Types: jobStatisticsReservationUsageItem :: JobStatisticsReservationUsageItem
+ Network.Google.BigQuery.Types: jrLocation :: Lens' JobReference (Maybe Text)
+ Network.Google.BigQuery.Types: jsBadRecords :: Lens' JobStatistics3 (Maybe Int64)
+ Network.Google.BigQuery.Types: jsCompletionRatio :: Lens' JobStatistics (Maybe Double)
+ Network.Google.BigQuery.Types: jsQuotaDeferments :: Lens' JobStatistics [Text]
+ Network.Google.BigQuery.Types: jsReservationUsage :: Lens' JobStatistics [JobStatisticsReservationUsageItem]
+ Network.Google.BigQuery.Types: jsTotalSlotMs :: Lens' JobStatistics (Maybe Int64)
+ Network.Google.BigQuery.Types: jsruiName :: Lens' JobStatisticsReservationUsageItem (Maybe Text)
+ Network.Google.BigQuery.Types: jsruiSlotMs :: Lens' JobStatisticsReservationUsageItem (Maybe Int64)
+ Network.Google.BigQuery.Types: materializedViewDefinition :: MaterializedViewDefinition
+ Network.Google.BigQuery.Types: mdModelOptions :: Lens' ModelDefinition (Maybe ModelDefinitionModelOptions)
+ Network.Google.BigQuery.Types: mdTrainingRuns :: Lens' ModelDefinition [TrainingRun]
+ Network.Google.BigQuery.Types: mdmoLabels :: Lens' ModelDefinitionModelOptions [Text]
+ Network.Google.BigQuery.Types: mdmoLossType :: Lens' ModelDefinitionModelOptions (Maybe Text)
+ Network.Google.BigQuery.Types: mdmoModelType :: Lens' ModelDefinitionModelOptions (Maybe Text)
+ Network.Google.BigQuery.Types: modelDefinition :: ModelDefinition
+ Network.Google.BigQuery.Types: modelDefinitionModelOptions :: ModelDefinitionModelOptions
+ Network.Google.BigQuery.Types: mvdLastRefreshTime :: Lens' MaterializedViewDefinition (Maybe Int64)
+ Network.Google.BigQuery.Types: mvdQuery :: Lens' MaterializedViewDefinition (Maybe Text)
+ Network.Google.BigQuery.Types: qrLocation :: Lens' QueryRequest (Maybe Text)
+ Network.Google.BigQuery.Types: qtsActiveUnits :: Lens' QueryTimelineSample (Maybe Int64)
+ Network.Google.BigQuery.Types: qtsCompletedUnits :: Lens' QueryTimelineSample (Maybe Int64)
+ Network.Google.BigQuery.Types: qtsElapsedMs :: Lens' QueryTimelineSample (Maybe Int64)
+ Network.Google.BigQuery.Types: qtsPendingUnits :: Lens' QueryTimelineSample (Maybe Int64)
+ Network.Google.BigQuery.Types: qtsTotalSlotMs :: Lens' QueryTimelineSample (Maybe Int64)
+ Network.Google.BigQuery.Types: queryTimelineSample :: QueryTimelineSample
+ Network.Google.BigQuery.Types: rangePartitioning :: RangePartitioning
+ Network.Google.BigQuery.Types: rangePartitioningRange :: RangePartitioningRange
+ Network.Google.BigQuery.Types: rpField :: Lens' RangePartitioning (Maybe Text)
+ Network.Google.BigQuery.Types: rpRange :: Lens' RangePartitioning (Maybe RangePartitioningRange)
+ Network.Google.BigQuery.Types: rprEnd :: Lens' RangePartitioningRange (Maybe Int64)
+ Network.Google.BigQuery.Types: rprInterval :: Lens' RangePartitioningRange (Maybe Int64)
+ Network.Google.BigQuery.Types: rprStart :: Lens' RangePartitioningRange (Maybe Int64)
+ Network.Google.BigQuery.Types: tabClustering :: Lens' Table (Maybe Clustering)
+ Network.Google.BigQuery.Types: tabEncryptionConfiguration :: Lens' Table (Maybe EncryptionConfiguration)
+ Network.Google.BigQuery.Types: tabMaterializedView :: Lens' Table (Maybe MaterializedViewDefinition)
+ Network.Google.BigQuery.Types: tabModel :: Lens' Table (Maybe ModelDefinition)
+ Network.Google.BigQuery.Types: tabNumPhysicalBytes :: Lens' Table (Maybe Int64)
+ Network.Google.BigQuery.Types: tabRangePartitioning :: Lens' Table (Maybe RangePartitioning)
+ Network.Google.BigQuery.Types: tabRequirePartitionFilter :: Lens' Table Bool
+ Network.Google.BigQuery.Types: tableListTablesItemView :: TableListTablesItemView
+ Network.Google.BigQuery.Types: tltiClustering :: Lens' TableListTablesItem (Maybe Clustering)
+ Network.Google.BigQuery.Types: tltiCreationTime :: Lens' TableListTablesItem (Maybe Int64)
+ Network.Google.BigQuery.Types: tltiExpirationTime :: Lens' TableListTablesItem (Maybe Int64)
+ Network.Google.BigQuery.Types: tltiTimePartitioning :: Lens' TableListTablesItem (Maybe TimePartitioning)
+ Network.Google.BigQuery.Types: tltiView :: Lens' TableListTablesItem (Maybe TableListTablesItemView)
+ Network.Google.BigQuery.Types: tltivUseLegacySQL :: Lens' TableListTablesItemView (Maybe Bool)
+ Network.Google.BigQuery.Types: tpField :: Lens' TimePartitioning (Maybe Text)
+ Network.Google.BigQuery.Types: tpRequirePartitionFilter :: Lens' TimePartitioning (Maybe Bool)
+ Network.Google.BigQuery.Types: trIterationResults :: Lens' TrainingRun [IterationResult]
+ Network.Google.BigQuery.Types: trStartTime :: Lens' TrainingRun (Maybe UTCTime)
+ Network.Google.BigQuery.Types: trState :: Lens' TrainingRun (Maybe Text)
+ Network.Google.BigQuery.Types: trTrainingOptions :: Lens' TrainingRun (Maybe TrainingRunTrainingOptions)
+ Network.Google.BigQuery.Types: trainingRun :: TrainingRun
+ Network.Google.BigQuery.Types: trainingRunTrainingOptions :: TrainingRunTrainingOptions
+ Network.Google.BigQuery.Types: trtoEarlyStop :: Lens' TrainingRunTrainingOptions (Maybe Bool)
+ Network.Google.BigQuery.Types: trtoL1Reg :: Lens' TrainingRunTrainingOptions (Maybe Double)
+ Network.Google.BigQuery.Types: trtoL2Reg :: Lens' TrainingRunTrainingOptions (Maybe Double)
+ Network.Google.BigQuery.Types: trtoLearnRate :: Lens' TrainingRunTrainingOptions (Maybe Double)
+ Network.Google.BigQuery.Types: trtoLearnRateStrategy :: Lens' TrainingRunTrainingOptions (Maybe Text)
+ Network.Google.BigQuery.Types: trtoLineSearchInitLearnRate :: Lens' TrainingRunTrainingOptions (Maybe Double)
+ Network.Google.BigQuery.Types: trtoMaxIteration :: Lens' TrainingRunTrainingOptions (Maybe Int64)
+ Network.Google.BigQuery.Types: trtoMinRelProgress :: Lens' TrainingRunTrainingOptions (Maybe Double)
+ Network.Google.BigQuery.Types: trtoWarmStart :: Lens' TrainingRunTrainingOptions (Maybe Bool)
+ Network.Google.Resource.BigQuery.Jobs.Cancel: jcLocation :: Lens' JobsCancel (Maybe Text)
+ Network.Google.Resource.BigQuery.Jobs.Get: jgLocation :: Lens' JobsGet (Maybe Text)
+ Network.Google.Resource.BigQuery.Jobs.GetQueryResults: jgqrLocation :: Lens' JobsGetQueryResults (Maybe Text)
+ Network.Google.Resource.BigQuery.Jobs.List: jlMaxCreationTime :: Lens' JobsList (Maybe Word64)
+ Network.Google.Resource.BigQuery.Jobs.List: jlMinCreationTime :: Lens' JobsList (Maybe Word64)
+ Network.Google.Resource.BigQuery.Projects.GetServiceAccount: data ProjectsGetServiceAccount
+ Network.Google.Resource.BigQuery.Projects.GetServiceAccount: instance Data.Data.Data Network.Google.Resource.BigQuery.Projects.GetServiceAccount.ProjectsGetServiceAccount
+ Network.Google.Resource.BigQuery.Projects.GetServiceAccount: instance GHC.Classes.Eq Network.Google.Resource.BigQuery.Projects.GetServiceAccount.ProjectsGetServiceAccount
+ Network.Google.Resource.BigQuery.Projects.GetServiceAccount: instance GHC.Generics.Generic Network.Google.Resource.BigQuery.Projects.GetServiceAccount.ProjectsGetServiceAccount
+ Network.Google.Resource.BigQuery.Projects.GetServiceAccount: instance GHC.Show.Show Network.Google.Resource.BigQuery.Projects.GetServiceAccount.ProjectsGetServiceAccount
+ Network.Google.Resource.BigQuery.Projects.GetServiceAccount: instance Network.Google.Types.GoogleRequest Network.Google.Resource.BigQuery.Projects.GetServiceAccount.ProjectsGetServiceAccount
+ Network.Google.Resource.BigQuery.Projects.GetServiceAccount: pgsaProjectId :: Lens' ProjectsGetServiceAccount Text
+ Network.Google.Resource.BigQuery.Projects.GetServiceAccount: projectsGetServiceAccount :: Text -> ProjectsGetServiceAccount
+ Network.Google.Resource.BigQuery.Projects.GetServiceAccount: type ProjectsGetServiceAccountResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "serviceAccount" :> QueryParam "alt" AltJSON :> Get '[JSON] GetServiceAccountResponse
+ Network.Google.Resource.BigQuery.TableData.List: tSelectedFields :: Lens' TableDataList' (Maybe Text)
+ Network.Google.Resource.BigQuery.Tables.Get: tgSelectedFields :: Lens' TablesGet (Maybe Text)
- Network.Google.BigQuery: jcqAllowLargeResults :: Lens' JobConfigurationQuery (Maybe Bool)
+ Network.Google.BigQuery: jcqAllowLargeResults :: Lens' JobConfigurationQuery Bool
- Network.Google.BigQuery: jcqUseLegacySQL :: Lens' JobConfigurationQuery (Maybe Bool)
+ Network.Google.BigQuery: jcqUseLegacySQL :: Lens' JobConfigurationQuery Bool
- Network.Google.BigQuery: type BigQueryAPI = JobsInsertResource :<|> (JobsListResource :<|> (JobsGetResource :<|> (JobsQueryResource :<|> (JobsCancelResource :<|> (JobsGetQueryResultsResource :<|> (TablesInsertResource :<|> (TablesListResource :<|> (TablesPatchResource :<|> (TablesGetResource :<|> (TablesDeleteResource :<|> (TablesUpdateResource :<|> (TableDataListResource :<|> (TableDataInsertAllResource :<|> (ProjectsListResource :<|> (DataSetsInsertResource :<|> (DataSetsListResource :<|> (DataSetsPatchResource :<|> (DataSetsGetResource :<|> (DataSetsDeleteResource :<|> DataSetsUpdateResource)))))))))))))))))))
+ Network.Google.BigQuery: type BigQueryAPI = JobsInsertResource :<|> JobsListResource :<|> JobsGetResource :<|> JobsQueryResource :<|> JobsCancelResource :<|> JobsGetQueryResultsResource :<|> TablesInsertResource :<|> TablesListResource :<|> TablesPatchResource :<|> TablesGetResource :<|> TablesDeleteResource :<|> TablesUpdateResource :<|> TableDataListResource :<|> TableDataInsertAllResource :<|> ProjectsGetServiceAccountResource :<|> ProjectsListResource :<|> DataSetsInsertResource :<|> DataSetsListResource :<|> DataSetsPatchResource :<|> DataSetsGetResource :<|> DataSetsDeleteResource :<|> DataSetsUpdateResource
- Network.Google.BigQuery.Types: jcqAllowLargeResults :: Lens' JobConfigurationQuery (Maybe Bool)
+ Network.Google.BigQuery.Types: jcqAllowLargeResults :: Lens' JobConfigurationQuery Bool
- Network.Google.BigQuery.Types: jcqUseLegacySQL :: Lens' JobConfigurationQuery (Maybe Bool)
+ Network.Google.BigQuery.Types: jcqUseLegacySQL :: Lens' JobConfigurationQuery Bool
- Network.Google.Resource.BigQuery.DataSets.Delete: type DataSetsDeleteResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (Capture "datasetId" Text :> (QueryParam "deleteContents" Bool :> (QueryParam "alt" AltJSON :> Delete '[JSON] ())))))))
+ Network.Google.Resource.BigQuery.DataSets.Delete: type DataSetsDeleteResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> Capture "datasetId" Text :> QueryParam "deleteContents" Bool :> QueryParam "alt" AltJSON :> Delete '[JSON] ()
- Network.Google.Resource.BigQuery.DataSets.Get: type DataSetsGetResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (Capture "datasetId" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] DataSet))))))
+ Network.Google.Resource.BigQuery.DataSets.Get: type DataSetsGetResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> Capture "datasetId" Text :> QueryParam "alt" AltJSON :> Get '[JSON] DataSet
- Network.Google.Resource.BigQuery.DataSets.Insert: type DataSetsInsertResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] DataSet :> Post '[JSON] DataSet))))))
+ Network.Google.Resource.BigQuery.DataSets.Insert: type DataSetsInsertResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> QueryParam "alt" AltJSON :> ReqBody '[JSON] DataSet :> Post '[JSON] DataSet
- Network.Google.Resource.BigQuery.DataSets.List: type DataSetsListResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (QueryParam "all" Bool :> (QueryParam "filter" Text :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] DataSetList)))))))))
+ Network.Google.Resource.BigQuery.DataSets.List: type DataSetsListResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> QueryParam "all" Bool :> QueryParam "filter" Text :> QueryParam "pageToken" Text :> QueryParam "maxResults" (Textual Word32) :> QueryParam "alt" AltJSON :> Get '[JSON] DataSetList
- Network.Google.Resource.BigQuery.DataSets.Patch: type DataSetsPatchResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (Capture "datasetId" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] DataSet :> Patch '[JSON] DataSet)))))))
+ Network.Google.Resource.BigQuery.DataSets.Patch: type DataSetsPatchResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> Capture "datasetId" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] DataSet :> Patch '[JSON] DataSet
- Network.Google.Resource.BigQuery.DataSets.Update: type DataSetsUpdateResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (Capture "datasetId" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] DataSet :> Put '[JSON] DataSet)))))))
+ Network.Google.Resource.BigQuery.DataSets.Update: type DataSetsUpdateResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> Capture "datasetId" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] DataSet :> Put '[JSON] DataSet
- Network.Google.Resource.BigQuery.Jobs.Cancel: type JobsCancelResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("jobs" :> (Capture "jobId" Text :> ("cancel" :> (QueryParam "alt" AltJSON :> Post '[JSON] JobCancelResponse)))))))
+ Network.Google.Resource.BigQuery.Jobs.Cancel: type JobsCancelResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "jobs" :> Capture "jobId" Text :> "cancel" :> QueryParam "location" Text :> QueryParam "alt" AltJSON :> Post '[JSON] JobCancelResponse
- Network.Google.Resource.BigQuery.Jobs.Get: type JobsGetResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("jobs" :> (Capture "jobId" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Job))))))
+ Network.Google.Resource.BigQuery.Jobs.Get: type JobsGetResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "jobs" :> Capture "jobId" Text :> QueryParam "location" Text :> QueryParam "alt" AltJSON :> Get '[JSON] Job
- Network.Google.Resource.BigQuery.Jobs.GetQueryResults: type JobsGetQueryResultsResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("queries" :> (Capture "jobId" Text :> (QueryParam "timeoutMs" (Textual Word32) :> (QueryParam "pageToken" Text :> (QueryParam "startIndex" (Textual Word64) :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] GetQueryResultsResponse))))))))))
+ Network.Google.Resource.BigQuery.Jobs.GetQueryResults: type JobsGetQueryResultsResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "queries" :> Capture "jobId" Text :> QueryParam "location" Text :> QueryParam "timeoutMs" (Textual Word32) :> QueryParam "pageToken" Text :> QueryParam "startIndex" (Textual Word64) :> QueryParam "maxResults" (Textual Word32) :> QueryParam "alt" AltJSON :> Get '[JSON] GetQueryResultsResponse
- Network.Google.Resource.BigQuery.Jobs.Insert: type JobsInsertResource = ("bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("jobs" :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Job :> Post '[JSON] Job))))))) :<|> ("upload" :> ("bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("jobs" :> (QueryParam "alt" AltJSON :> (QueryParam "uploadType" Multipart :> (MultipartRelated '[JSON] Job :> Post '[JSON] Job)))))))))
+ Network.Google.Resource.BigQuery.Jobs.Insert: type JobsInsertResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "jobs" :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Job :> Post '[JSON] Job :<|> "upload" :> "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "jobs" :> QueryParam "alt" AltJSON :> QueryParam "uploadType" Multipart :> MultipartRelated '[JSON] Job :> Post '[JSON] Job
- Network.Google.Resource.BigQuery.Jobs.List: type JobsListResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("jobs" :> (QueryParams "stateFilter" JobsListStateFilter :> (QueryParam "projection" JobsListProjection :> (QueryParam "pageToken" Text :> (QueryParam "allUsers" Bool :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] JobList))))))))))
+ Network.Google.Resource.BigQuery.Jobs.List: type JobsListResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "jobs" :> QueryParam "maxCreationTime" (Textual Word64) :> QueryParam "minCreationTime" (Textual Word64) :> QueryParams "stateFilter" JobsListStateFilter :> QueryParam "projection" JobsListProjection :> QueryParam "pageToken" Text :> QueryParam "allUsers" Bool :> QueryParam "maxResults" (Textual Word32) :> QueryParam "alt" AltJSON :> Get '[JSON] JobList
- Network.Google.Resource.BigQuery.Jobs.Query: type JobsQueryResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("queries" :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] QueryRequest :> Post '[JSON] QueryResponse))))))
+ Network.Google.Resource.BigQuery.Jobs.Query: type JobsQueryResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "queries" :> QueryParam "alt" AltJSON :> ReqBody '[JSON] QueryRequest :> Post '[JSON] QueryResponse
- Network.Google.Resource.BigQuery.Projects.List: type ProjectsListResource = "bigquery" :> ("v2" :> ("projects" :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] ProjectList)))))
+ Network.Google.Resource.BigQuery.Projects.List: type ProjectsListResource = "bigquery" :> "v2" :> "projects" :> QueryParam "pageToken" Text :> QueryParam "maxResults" (Textual Word32) :> QueryParam "alt" AltJSON :> Get '[JSON] ProjectList
- Network.Google.Resource.BigQuery.TableData.InsertAll: type TableDataInsertAllResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (Capture "datasetId" Text :> ("tables" :> (Capture "tableId" Text :> ("insertAll" :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] TableDataInsertAllRequest :> Post '[JSON] TableDataInsertAllResponse))))))))))
+ Network.Google.Resource.BigQuery.TableData.InsertAll: type TableDataInsertAllResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> Capture "datasetId" Text :> "tables" :> Capture "tableId" Text :> "insertAll" :> QueryParam "alt" AltJSON :> ReqBody '[JSON] TableDataInsertAllRequest :> Post '[JSON] TableDataInsertAllResponse
- Network.Google.Resource.BigQuery.TableData.List: type TableDataListResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (Capture "datasetId" Text :> ("tables" :> (Capture "tableId" Text :> ("data" :> (QueryParam "pageToken" Text :> (QueryParam "startIndex" (Textual Word64) :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] TableDataList))))))))))))
+ Network.Google.Resource.BigQuery.TableData.List: type TableDataListResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> Capture "datasetId" Text :> "tables" :> Capture "tableId" Text :> "data" :> QueryParam "pageToken" Text :> QueryParam "selectedFields" Text :> QueryParam "startIndex" (Textual Word64) :> QueryParam "maxResults" (Textual Word32) :> QueryParam "alt" AltJSON :> Get '[JSON] TableDataList
- Network.Google.Resource.BigQuery.Tables.Delete: type TablesDeleteResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (Capture "datasetId" Text :> ("tables" :> (Capture "tableId" Text :> (QueryParam "alt" AltJSON :> Delete '[JSON] ()))))))))
+ Network.Google.Resource.BigQuery.Tables.Delete: type TablesDeleteResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> Capture "datasetId" Text :> "tables" :> Capture "tableId" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] ()
- Network.Google.Resource.BigQuery.Tables.Get: type TablesGetResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (Capture "datasetId" Text :> ("tables" :> (Capture "tableId" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Table))))))))
+ Network.Google.Resource.BigQuery.Tables.Get: type TablesGetResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> Capture "datasetId" Text :> "tables" :> Capture "tableId" Text :> QueryParam "selectedFields" Text :> QueryParam "alt" AltJSON :> Get '[JSON] Table
- Network.Google.Resource.BigQuery.Tables.Insert: type TablesInsertResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (Capture "datasetId" Text :> ("tables" :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Table :> Post '[JSON] Table))))))))
+ Network.Google.Resource.BigQuery.Tables.Insert: type TablesInsertResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> Capture "datasetId" Text :> "tables" :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Table :> Post '[JSON] Table
- Network.Google.Resource.BigQuery.Tables.List: type TablesListResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (Capture "datasetId" Text :> ("tables" :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] TableList)))))))))
+ Network.Google.Resource.BigQuery.Tables.List: type TablesListResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> Capture "datasetId" Text :> "tables" :> QueryParam "pageToken" Text :> QueryParam "maxResults" (Textual Word32) :> QueryParam "alt" AltJSON :> Get '[JSON] TableList
- Network.Google.Resource.BigQuery.Tables.Patch: type TablesPatchResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (Capture "datasetId" Text :> ("tables" :> (Capture "tableId" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Table :> Patch '[JSON] Table)))))))))
+ Network.Google.Resource.BigQuery.Tables.Patch: type TablesPatchResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> Capture "datasetId" Text :> "tables" :> Capture "tableId" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Table :> Patch '[JSON] Table
- Network.Google.Resource.BigQuery.Tables.Update: type TablesUpdateResource = "bigquery" :> ("v2" :> ("projects" :> (Capture "projectId" Text :> ("datasets" :> (Capture "datasetId" Text :> ("tables" :> (Capture "tableId" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Table :> Put '[JSON] Table)))))))))
+ Network.Google.Resource.BigQuery.Tables.Update: type TablesUpdateResource = "bigquery" :> "v2" :> "projects" :> Capture "projectId" Text :> "datasets" :> Capture "datasetId" Text :> "tables" :> Capture "tableId" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Table :> Put '[JSON] Table
Files
- gen/Network/Google/BigQuery.hs +185/−0
- gen/Network/Google/BigQuery/Types.hs +180/−0
- gen/Network/Google/BigQuery/Types/Product.hs +7704/−5761
- gen/Network/Google/BigQuery/Types/Sum.hs +1/−1
- gen/Network/Google/Resource/BigQuery/Jobs/Cancel.hs +16/−3
- gen/Network/Google/Resource/BigQuery/Jobs/Get.hs +15/−2
- gen/Network/Google/Resource/BigQuery/Jobs/GetQueryResults.hs +21/−7
- gen/Network/Google/Resource/BigQuery/Jobs/List.hs +44/−14
- gen/Network/Google/Resource/BigQuery/Projects/GetServiceAccount.hs +94/−0
- gen/Network/Google/Resource/BigQuery/TableData/List.hs +24/−10
- gen/Network/Google/Resource/BigQuery/Tables/Get.hs +18/−4
- gogol-bigquery.cabal +3/−2
gen/Network/Google/BigQuery.hs view
@@ -71,6 +71,9 @@ -- ** bigquery.jobs.query , module Network.Google.Resource.BigQuery.Jobs.Query + -- ** bigquery.projects.getServiceAccount+ , module Network.Google.Resource.BigQuery.Projects.GetServiceAccount+ -- ** bigquery.projects.list , module Network.Google.Resource.BigQuery.Projects.List @@ -104,6 +107,7 @@ , JobReference , jobReference , jrJobId+ , jrLocation , jrProjectId -- ** TableList@@ -118,6 +122,7 @@ -- ** DataSetListDataSetsItem , DataSetListDataSetsItem , dataSetListDataSetsItem+ , dsldsiLocation , dsldsiFriendlyName , dsldsiKind , dsldsiDataSetReference@@ -141,16 +146,22 @@ , jctcSourceTables , jctcCreateDisPosition , jctcSourceTable+ , jctcDestinationEncryptionConfiguration -- ** TableListTablesItem , TableListTablesItem , tableListTablesItem+ , tltiCreationTime+ , tltiClustering , tltiTableReference , tltiFriendlyName , tltiKind+ , tltiTimePartitioning+ , tltiView , tltiId , tltiLabels , tltiType+ , tltiExpirationTime -- ** TableSchema , TableSchema@@ -172,6 +183,15 @@ , eqsSubsteps , eqsKind + -- ** QueryTimelineSample+ , QueryTimelineSample+ , queryTimelineSample+ , qtsPendingUnits+ , qtsTotalSlotMs+ , qtsActiveUnits+ , qtsElapsedMs+ , qtsCompletedUnits+ -- ** QueryParameterTypeStructTypesItem , QueryParameterTypeStructTypesItem , queryParameterTypeStructTypesItem@@ -193,11 +213,15 @@ , jobStatistics , jsCreationTime , jsStartTime+ , jsCompletionRatio+ , jsTotalSlotMs , jsLoad , jsTotalBytesProcessed+ , jsQuotaDeferments , jsEndTime , jsQuery , jsExtract+ , jsReservationUsage -- ** JobConfigurationLabels , JobConfigurationLabels@@ -208,6 +232,7 @@ , DataSet , dataSet , dsCreationTime+ , dsDefaultPartitionExpirationMs , dsAccess , dsEtag , dsLocation@@ -221,6 +246,19 @@ , dsDefaultTableExpirationMs , dsDescription + -- ** RangePartitioningRange+ , RangePartitioningRange+ , rangePartitioningRange+ , rprStart+ , rprInterval+ , rprEnd++ -- ** JobStatisticsReservationUsageItem+ , JobStatisticsReservationUsageItem+ , jobStatisticsReservationUsageItem+ , jsruiName+ , jsruiSlotMs+ -- ** BigtableOptions , BigtableOptions , bigtableOptions@@ -228,6 +266,11 @@ , boIgnoreUnspecifiedColumnFamilies , boColumnFamilies + -- ** Clustering+ , Clustering+ , clustering+ , cFields+ -- ** ExternalDataConfiguration , ExternalDataConfiguration , externalDataConfiguration@@ -249,6 +292,19 @@ , trProjectId , trTableId + -- ** ModelDefinitionModelOptions+ , ModelDefinitionModelOptions+ , modelDefinitionModelOptions+ , mdmoModelType+ , mdmoLabels+ , mdmoLossType++ -- ** RangePartitioning+ , RangePartitioning+ , rangePartitioning+ , rpField+ , rpRange+ -- ** TableFieldSchema , TableFieldSchema , tableFieldSchema@@ -285,6 +341,7 @@ -- ** QueryRequest , QueryRequest , queryRequest+ , qrLocation , qrUseQueryCache , qrPreserveNulls , qrKind@@ -307,6 +364,15 @@ , qpParameterType , qpName + -- ** IterationResult+ , IterationResult+ , iterationResult+ , irDurationMs+ , irLearnRate+ , irEvalLoss+ , irTrainingLoss+ , irIndex+ -- ** JobStatistics4 , JobStatistics4 , jobStatistics4@@ -320,21 +386,55 @@ -- ** ExplainQueryStage , ExplainQueryStage , explainQueryStage+ , eqsReadMsAvg , eqsStatus+ , eqsShuffleOutputBytesSpilled+ , eqsReadMsMax+ , eqsCompletedParallelInputs , eqsWaitRatioMax+ , eqsParallelInputs+ , eqsShuffleOutputBytes , eqsRecordsWritten , eqsSteps+ , eqsInputStages , eqsWriteRatioAvg , eqsRecordsRead , eqsComputeRatioAvg , eqsName+ , eqsComputeMsMax , eqsReadRatioMax+ , eqsWriteMsMax , eqsWaitRatioAvg+ , eqsWaitMsAvg , eqsId , eqsComputeRatioMax , eqsWriteRatioMax+ , eqsComputeMsAvg , eqsReadRatioAvg+ , eqsWriteMsAvg+ , eqsStartMs+ , eqsEndMs+ , eqsWaitMsMax + -- ** TrainingRunTrainingOptions+ , TrainingRunTrainingOptions+ , trainingRunTrainingOptions+ , trtoLineSearchInitLearnRate+ , trtoMinRelProgress+ , trtoL1Reg+ , trtoLearnRate+ , trtoLearnRateStrategy+ , trtoMaxIteration+ , trtoEarlyStop+ , trtoL2Reg+ , trtoWarmStart++ -- ** BigQueryModelTraining+ , BigQueryModelTraining+ , bigQueryModelTraining+ , bqmtExpectedTotalIterations+ , bqmtCurrentIteration+ -- ** JobConfigurationLoad , JobConfigurationLoad , jobConfigurationLoad@@ -343,6 +443,8 @@ , jclDestinationTable , jclWriteDisPosition , jclAllowJaggedRows+ , jclClustering+ , jclRangePartitioning , jclSchemaInline , jclIgnoreUnknownValues , jclSchemaUpdateOptions@@ -350,12 +452,16 @@ , jclSchemaInlineFormat , jclAllowQuotedNewlines , jclSourceFormat+ , jclUseAvroLogicalTypes , jclSchema+ , jclTimePartitioning , jclQuote , jclMaxBadRecords , jclAutodetect , jclSourceURIs , jclEncoding+ , jclDestinationTableProperties+ , jclDestinationEncryptionConfiguration , jclFieldDelimiter , jclNullMarker @@ -368,6 +474,12 @@ , dsrDataSetId , dsrProjectId + -- ** MaterializedViewDefinition+ , MaterializedViewDefinition+ , materializedViewDefinition+ , mvdQuery+ , mvdLastRefreshTime+ -- ** TableDataInsertAllRequest , TableDataInsertAllRequest , tableDataInsertAllRequest@@ -377,6 +489,12 @@ , tdiarTemplateSuffix , tdiarSkipInvalidRows + -- ** GetServiceAccountResponse+ , GetServiceAccountResponse+ , getServiceAccountResponse+ , gsarEmail+ , gsarKind+ -- ** ProjectListProjectsItem , ProjectListProjectsItem , projectListProjectsItem@@ -424,7 +542,9 @@ -- ** TimePartitioning , TimePartitioning , timePartitioning+ , tpField , tpExpirationMs+ , tpRequirePartitionFilter , tpType -- ** QueryParameterValueStructValues@@ -440,9 +560,11 @@ -- ** JobConfiguration , JobConfiguration , jobConfiguration+ , jcJobType , jcCopy , jcLoad , jcQuery+ , jcJobTimeoutMs , jcExtract , jcLabels , jcDryRun@@ -460,6 +582,11 @@ , jStatistics , jConfiguration + -- ** EncryptionConfiguration+ , EncryptionConfiguration+ , encryptionConfiguration+ , ecKmsKeyName+ -- ** TableDataInsertAllResponseInsertErrorsItem , TableDataInsertAllResponseInsertErrorsItem , tableDataInsertAllResponseInsertErrorsItem@@ -477,6 +604,12 @@ , jceDestinationURI , jceFieldDelimiter + -- ** ModelDefinition+ , ModelDefinition+ , modelDefinition+ , mdModelOptions+ , mdTrainingRuns+ -- ** JobCancelResponse , JobCancelResponse , jobCancelResponse@@ -494,6 +627,8 @@ , jcqDestinationTable , jcqWriteDisPosition , jcqPriority+ , jcqClustering+ , jcqRangePartitioning , jcqUseQueryCache , jcqPreserveNulls , jcqTableDefinitions@@ -504,16 +639,19 @@ , jcqUserDefinedFunctionResources , jcqAllowLargeResults , jcqMaximumBillingTier+ , jcqTimePartitioning , jcqQuery , jcqFlattenResults , jcqParameterMode , jcqUseLegacySQL+ , jcqDestinationEncryptionConfiguration , jcqDefaultDataSet -- ** GoogleSheetsOptions , GoogleSheetsOptions , googleSheetsOptions , gsoSkipLeadingRows+ , gsoRange -- ** TableDataInsertAllRequestRowsItem , TableDataInsertAllRequestRowsItem@@ -539,6 +677,12 @@ , tableCell , tcV + -- ** JobStatistics2ReservationUsageItem+ , JobStatistics2ReservationUsageItem+ , jobStatistics2ReservationUsageItem+ , jName+ , jSlotMs+ -- ** QueryParameterValue , QueryParameterValue , queryParameterValue@@ -562,16 +706,27 @@ -- ** JobStatistics2 , JobStatistics2 , jobStatistics2+ , jModelTrainingExpectedTotalIteration+ , jModelTraining+ , jTotalSlotMs+ , jDdlTargetTable+ , jEstimatedBytesProcessed+ , jModelTrainingCurrentIteration , jSchema , jTotalBytesProcessed , jBillingTier+ , jTotalBytesProcessedAccuracy , jUndeclaredQueryParameters , jReferencedTables , jStatementType+ , jReservationUsage , jNumDmlAffectedRows+ , jTimeline , jQueryPlan , jCacheHit , jTotalBytesBilled+ , jDdlOperationPerformed+ , jTotalPartitionsProcessed -- ** JobStatus , JobStatus@@ -585,6 +740,12 @@ , tableLabels , tlAddtional + -- ** DestinationTableProperties+ , DestinationTableProperties+ , destinationTableProperties+ , dtpFriendlyName+ , dtpDescription+ -- ** DataSetAccessItem , DataSetAccessItem , dataSetAccessItem@@ -592,6 +753,7 @@ , dsaiDomain , dsaiSpecialGroup , dsaiRole+ , dsaiIAMMember , dsaiView , dsaiUserByEmail @@ -611,10 +773,13 @@ -- ** Table , Table , table+ , tabMaterializedView , tabCreationTime , tabEtag , tabNumBytes+ , tabClustering , tabExternalDataConfiguration+ , tabRangePartitioning , tabLocation , tabTableReference , tabFriendlyName@@ -623,8 +788,12 @@ , tabSchema , tabStreamingBuffer , tabSelfLink+ , tabRequirePartitionFilter+ , tabEncryptionConfiguration+ , tabModel , tabTimePartitioning , tabNumRows+ , tabNumPhysicalBytes , tabView , tabId , tabLabels@@ -658,6 +827,7 @@ , jsOutputRows , jsOutputBytes , jsInputFileBytes+ , jsBadRecords -- ** QueryResponse , QueryResponse@@ -679,6 +849,19 @@ , dataSetListDataSetsItemLabels , dsldsilAddtional + -- ** TrainingRun+ , TrainingRun+ , trainingRun+ , trState+ , trStartTime+ , trIterationResults+ , trTrainingOptions++ -- ** TableListTablesItemView+ , TableListTablesItemView+ , tableListTablesItemView+ , tltivUseLegacySQL+ -- ** TableListTablesItemLabels , TableListTablesItemLabels , tableListTablesItemLabels@@ -699,6 +882,7 @@ import Network.Google.Resource.BigQuery.Jobs.Insert import Network.Google.Resource.BigQuery.Jobs.List import Network.Google.Resource.BigQuery.Jobs.Query+import Network.Google.Resource.BigQuery.Projects.GetServiceAccount import Network.Google.Resource.BigQuery.Projects.List import Network.Google.Resource.BigQuery.TableData.InsertAll import Network.Google.Resource.BigQuery.TableData.List@@ -728,6 +912,7 @@ :<|> TablesUpdateResource :<|> TableDataListResource :<|> TableDataInsertAllResource+ :<|> ProjectsGetServiceAccountResource :<|> ProjectsListResource :<|> DataSetsInsertResource :<|> DataSetsListResource
gen/Network/Google/BigQuery/Types.hs view
@@ -32,6 +32,7 @@ , JobReference , jobReference , jrJobId+ , jrLocation , jrProjectId -- * TableList@@ -46,6 +47,7 @@ -- * DataSetListDataSetsItem , DataSetListDataSetsItem , dataSetListDataSetsItem+ , dsldsiLocation , dsldsiFriendlyName , dsldsiKind , dsldsiDataSetReference@@ -69,16 +71,22 @@ , jctcSourceTables , jctcCreateDisPosition , jctcSourceTable+ , jctcDestinationEncryptionConfiguration -- * TableListTablesItem , TableListTablesItem , tableListTablesItem+ , tltiCreationTime+ , tltiClustering , tltiTableReference , tltiFriendlyName , tltiKind+ , tltiTimePartitioning+ , tltiView , tltiId , tltiLabels , tltiType+ , tltiExpirationTime -- * TableSchema , TableSchema@@ -100,6 +108,15 @@ , eqsSubsteps , eqsKind + -- * QueryTimelineSample+ , QueryTimelineSample+ , queryTimelineSample+ , qtsPendingUnits+ , qtsTotalSlotMs+ , qtsActiveUnits+ , qtsElapsedMs+ , qtsCompletedUnits+ -- * QueryParameterTypeStructTypesItem , QueryParameterTypeStructTypesItem , queryParameterTypeStructTypesItem@@ -121,11 +138,15 @@ , jobStatistics , jsCreationTime , jsStartTime+ , jsCompletionRatio+ , jsTotalSlotMs , jsLoad , jsTotalBytesProcessed+ , jsQuotaDeferments , jsEndTime , jsQuery , jsExtract+ , jsReservationUsage -- * JobConfigurationLabels , JobConfigurationLabels@@ -136,6 +157,7 @@ , DataSet , dataSet , dsCreationTime+ , dsDefaultPartitionExpirationMs , dsAccess , dsEtag , dsLocation@@ -149,6 +171,19 @@ , dsDefaultTableExpirationMs , dsDescription + -- * RangePartitioningRange+ , RangePartitioningRange+ , rangePartitioningRange+ , rprStart+ , rprInterval+ , rprEnd++ -- * JobStatisticsReservationUsageItem+ , JobStatisticsReservationUsageItem+ , jobStatisticsReservationUsageItem+ , jsruiName+ , jsruiSlotMs+ -- * BigtableOptions , BigtableOptions , bigtableOptions@@ -156,6 +191,11 @@ , boIgnoreUnspecifiedColumnFamilies , boColumnFamilies + -- * Clustering+ , Clustering+ , clustering+ , cFields+ -- * ExternalDataConfiguration , ExternalDataConfiguration , externalDataConfiguration@@ -177,6 +217,19 @@ , trProjectId , trTableId + -- * ModelDefinitionModelOptions+ , ModelDefinitionModelOptions+ , modelDefinitionModelOptions+ , mdmoModelType+ , mdmoLabels+ , mdmoLossType++ -- * RangePartitioning+ , RangePartitioning+ , rangePartitioning+ , rpField+ , rpRange+ -- * TableFieldSchema , TableFieldSchema , tableFieldSchema@@ -213,6 +266,7 @@ -- * QueryRequest , QueryRequest , queryRequest+ , qrLocation , qrUseQueryCache , qrPreserveNulls , qrKind@@ -235,6 +289,15 @@ , qpParameterType , qpName + -- * IterationResult+ , IterationResult+ , iterationResult+ , irDurationMs+ , irLearnRate+ , irEvalLoss+ , irTrainingLoss+ , irIndex+ -- * JobStatistics4 , JobStatistics4 , jobStatistics4@@ -248,21 +311,55 @@ -- * ExplainQueryStage , ExplainQueryStage , explainQueryStage+ , eqsReadMsAvg , eqsStatus+ , eqsShuffleOutputBytesSpilled+ , eqsReadMsMax+ , eqsCompletedParallelInputs , eqsWaitRatioMax+ , eqsParallelInputs+ , eqsShuffleOutputBytes , eqsRecordsWritten , eqsSteps+ , eqsInputStages , eqsWriteRatioAvg , eqsRecordsRead , eqsComputeRatioAvg , eqsName+ , eqsComputeMsMax , eqsReadRatioMax+ , eqsWriteMsMax , eqsWaitRatioAvg+ , eqsWaitMsAvg , eqsId , eqsComputeRatioMax , eqsWriteRatioMax+ , eqsComputeMsAvg , eqsReadRatioAvg+ , eqsWriteMsAvg+ , eqsStartMs+ , eqsEndMs+ , eqsWaitMsMax + -- * TrainingRunTrainingOptions+ , TrainingRunTrainingOptions+ , trainingRunTrainingOptions+ , trtoLineSearchInitLearnRate+ , trtoMinRelProgress+ , trtoL1Reg+ , trtoLearnRate+ , trtoLearnRateStrategy+ , trtoMaxIteration+ , trtoEarlyStop+ , trtoL2Reg+ , trtoWarmStart++ -- * BigQueryModelTraining+ , BigQueryModelTraining+ , bigQueryModelTraining+ , bqmtExpectedTotalIterations+ , bqmtCurrentIteration+ -- * JobConfigurationLoad , JobConfigurationLoad , jobConfigurationLoad@@ -271,6 +368,8 @@ , jclDestinationTable , jclWriteDisPosition , jclAllowJaggedRows+ , jclClustering+ , jclRangePartitioning , jclSchemaInline , jclIgnoreUnknownValues , jclSchemaUpdateOptions@@ -278,12 +377,16 @@ , jclSchemaInlineFormat , jclAllowQuotedNewlines , jclSourceFormat+ , jclUseAvroLogicalTypes , jclSchema+ , jclTimePartitioning , jclQuote , jclMaxBadRecords , jclAutodetect , jclSourceURIs , jclEncoding+ , jclDestinationTableProperties+ , jclDestinationEncryptionConfiguration , jclFieldDelimiter , jclNullMarker @@ -296,6 +399,12 @@ , dsrDataSetId , dsrProjectId + -- * MaterializedViewDefinition+ , MaterializedViewDefinition+ , materializedViewDefinition+ , mvdQuery+ , mvdLastRefreshTime+ -- * TableDataInsertAllRequest , TableDataInsertAllRequest , tableDataInsertAllRequest@@ -305,6 +414,12 @@ , tdiarTemplateSuffix , tdiarSkipInvalidRows + -- * GetServiceAccountResponse+ , GetServiceAccountResponse+ , getServiceAccountResponse+ , gsarEmail+ , gsarKind+ -- * ProjectListProjectsItem , ProjectListProjectsItem , projectListProjectsItem@@ -352,7 +467,9 @@ -- * TimePartitioning , TimePartitioning , timePartitioning+ , tpField , tpExpirationMs+ , tpRequirePartitionFilter , tpType -- * QueryParameterValueStructValues@@ -368,9 +485,11 @@ -- * JobConfiguration , JobConfiguration , jobConfiguration+ , jcJobType , jcCopy , jcLoad , jcQuery+ , jcJobTimeoutMs , jcExtract , jcLabels , jcDryRun@@ -388,6 +507,11 @@ , jStatistics , jConfiguration + -- * EncryptionConfiguration+ , EncryptionConfiguration+ , encryptionConfiguration+ , ecKmsKeyName+ -- * TableDataInsertAllResponseInsertErrorsItem , TableDataInsertAllResponseInsertErrorsItem , tableDataInsertAllResponseInsertErrorsItem@@ -405,6 +529,12 @@ , jceDestinationURI , jceFieldDelimiter + -- * ModelDefinition+ , ModelDefinition+ , modelDefinition+ , mdModelOptions+ , mdTrainingRuns+ -- * JobCancelResponse , JobCancelResponse , jobCancelResponse@@ -422,6 +552,8 @@ , jcqDestinationTable , jcqWriteDisPosition , jcqPriority+ , jcqClustering+ , jcqRangePartitioning , jcqUseQueryCache , jcqPreserveNulls , jcqTableDefinitions@@ -432,16 +564,19 @@ , jcqUserDefinedFunctionResources , jcqAllowLargeResults , jcqMaximumBillingTier+ , jcqTimePartitioning , jcqQuery , jcqFlattenResults , jcqParameterMode , jcqUseLegacySQL+ , jcqDestinationEncryptionConfiguration , jcqDefaultDataSet -- * GoogleSheetsOptions , GoogleSheetsOptions , googleSheetsOptions , gsoSkipLeadingRows+ , gsoRange -- * TableDataInsertAllRequestRowsItem , TableDataInsertAllRequestRowsItem@@ -467,6 +602,12 @@ , tableCell , tcV + -- * JobStatistics2ReservationUsageItem+ , JobStatistics2ReservationUsageItem+ , jobStatistics2ReservationUsageItem+ , jName+ , jSlotMs+ -- * QueryParameterValue , QueryParameterValue , queryParameterValue@@ -490,16 +631,27 @@ -- * JobStatistics2 , JobStatistics2 , jobStatistics2+ , jModelTrainingExpectedTotalIteration+ , jModelTraining+ , jTotalSlotMs+ , jDdlTargetTable+ , jEstimatedBytesProcessed+ , jModelTrainingCurrentIteration , jSchema , jTotalBytesProcessed , jBillingTier+ , jTotalBytesProcessedAccuracy , jUndeclaredQueryParameters , jReferencedTables , jStatementType+ , jReservationUsage , jNumDmlAffectedRows+ , jTimeline , jQueryPlan , jCacheHit , jTotalBytesBilled+ , jDdlOperationPerformed+ , jTotalPartitionsProcessed -- * JobStatus , JobStatus@@ -513,6 +665,12 @@ , tableLabels , tlAddtional + -- * DestinationTableProperties+ , DestinationTableProperties+ , destinationTableProperties+ , dtpFriendlyName+ , dtpDescription+ -- * DataSetAccessItem , DataSetAccessItem , dataSetAccessItem@@ -520,6 +678,7 @@ , dsaiDomain , dsaiSpecialGroup , dsaiRole+ , dsaiIAMMember , dsaiView , dsaiUserByEmail @@ -539,10 +698,13 @@ -- * Table , Table , table+ , tabMaterializedView , tabCreationTime , tabEtag , tabNumBytes+ , tabClustering , tabExternalDataConfiguration+ , tabRangePartitioning , tabLocation , tabTableReference , tabFriendlyName@@ -551,8 +713,12 @@ , tabSchema , tabStreamingBuffer , tabSelfLink+ , tabRequirePartitionFilter+ , tabEncryptionConfiguration+ , tabModel , tabTimePartitioning , tabNumRows+ , tabNumPhysicalBytes , tabView , tabId , tabLabels@@ -586,6 +752,7 @@ , jsOutputRows , jsOutputBytes , jsInputFileBytes+ , jsBadRecords -- * QueryResponse , QueryResponse@@ -606,6 +773,19 @@ , DataSetListDataSetsItemLabels , dataSetListDataSetsItemLabels , dsldsilAddtional++ -- * TrainingRun+ , TrainingRun+ , trainingRun+ , trState+ , trStartTime+ , trIterationResults+ , trTrainingOptions++ -- * TableListTablesItemView+ , TableListTablesItemView+ , tableListTablesItemView+ , tltivUseLegacySQL -- * TableListTablesItemLabels , TableListTablesItemLabels
gen/Network/Google/BigQuery/Types/Product.hs view
@@ -24,5767 +24,7710 @@ -- /See:/ 'jobReference' smart constructor. data JobReference = JobReference' { _jrJobId :: !(Maybe Text)- , _jrProjectId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobReference' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jrJobId'------ * 'jrProjectId'-jobReference- :: JobReference-jobReference =- JobReference'- { _jrJobId = Nothing- , _jrProjectId = Nothing- }---- | [Required] The ID of the job. The ID must contain only letters (a-z,--- A-Z), numbers (0-9), underscores (_), or dashes (-). The maximum length--- is 1,024 characters.-jrJobId :: Lens' JobReference (Maybe Text)-jrJobId = lens _jrJobId (\ s a -> s{_jrJobId = a})---- | [Required] The ID of the project containing this job.-jrProjectId :: Lens' JobReference (Maybe Text)-jrProjectId- = lens _jrProjectId (\ s a -> s{_jrProjectId = a})--instance FromJSON JobReference where- parseJSON- = withObject "JobReference"- (\ o ->- JobReference' <$>- (o .:? "jobId") <*> (o .:? "projectId"))--instance ToJSON JobReference where- toJSON JobReference'{..}- = object- (catMaybes- [("jobId" .=) <$> _jrJobId,- ("projectId" .=) <$> _jrProjectId])------- /See:/ 'tableList' smart constructor.-data TableList = TableList'- { _tlTotalItems :: !(Maybe (Textual Int32))- , _tlEtag :: !(Maybe Text)- , _tlNextPageToken :: !(Maybe Text)- , _tlKind :: !Text- , _tlTables :: !(Maybe [TableListTablesItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableList' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tlTotalItems'------ * 'tlEtag'------ * 'tlNextPageToken'------ * 'tlKind'------ * 'tlTables'-tableList- :: TableList-tableList =- TableList'- { _tlTotalItems = Nothing- , _tlEtag = Nothing- , _tlNextPageToken = Nothing- , _tlKind = "bigquery#tableList"- , _tlTables = Nothing- }---- | The total number of tables in the dataset.-tlTotalItems :: Lens' TableList (Maybe Int32)-tlTotalItems- = lens _tlTotalItems (\ s a -> s{_tlTotalItems = a})- . mapping _Coerce---- | A hash of this page of results.-tlEtag :: Lens' TableList (Maybe Text)-tlEtag = lens _tlEtag (\ s a -> s{_tlEtag = a})---- | A token to request the next page of results.-tlNextPageToken :: Lens' TableList (Maybe Text)-tlNextPageToken- = lens _tlNextPageToken- (\ s a -> s{_tlNextPageToken = a})---- | The type of list.-tlKind :: Lens' TableList Text-tlKind = lens _tlKind (\ s a -> s{_tlKind = a})---- | Tables in the requested dataset.-tlTables :: Lens' TableList [TableListTablesItem]-tlTables- = lens _tlTables (\ s a -> s{_tlTables = a}) .- _Default- . _Coerce--instance FromJSON TableList where- parseJSON- = withObject "TableList"- (\ o ->- TableList' <$>- (o .:? "totalItems") <*> (o .:? "etag") <*>- (o .:? "nextPageToken")- <*> (o .:? "kind" .!= "bigquery#tableList")- <*> (o .:? "tables" .!= mempty))--instance ToJSON TableList where- toJSON TableList'{..}- = object- (catMaybes- [("totalItems" .=) <$> _tlTotalItems,- ("etag" .=) <$> _tlEtag,- ("nextPageToken" .=) <$> _tlNextPageToken,- Just ("kind" .= _tlKind),- ("tables" .=) <$> _tlTables])------- /See:/ 'dataSetListDataSetsItem' smart constructor.-data DataSetListDataSetsItem = DataSetListDataSetsItem'- { _dsldsiFriendlyName :: !(Maybe Text)- , _dsldsiKind :: !Text- , _dsldsiDataSetReference :: !(Maybe DataSetReference)- , _dsldsiId :: !(Maybe Text)- , _dsldsiLabels :: !(Maybe DataSetListDataSetsItemLabels)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DataSetListDataSetsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dsldsiFriendlyName'------ * 'dsldsiKind'------ * 'dsldsiDataSetReference'------ * 'dsldsiId'------ * 'dsldsiLabels'-dataSetListDataSetsItem- :: DataSetListDataSetsItem-dataSetListDataSetsItem =- DataSetListDataSetsItem'- { _dsldsiFriendlyName = Nothing- , _dsldsiKind = "bigquery#dataset"- , _dsldsiDataSetReference = Nothing- , _dsldsiId = Nothing- , _dsldsiLabels = Nothing- }---- | A descriptive name for the dataset, if one exists.-dsldsiFriendlyName :: Lens' DataSetListDataSetsItem (Maybe Text)-dsldsiFriendlyName- = lens _dsldsiFriendlyName- (\ s a -> s{_dsldsiFriendlyName = a})---- | The resource type. This property always returns the value--- \"bigquery#dataset\".-dsldsiKind :: Lens' DataSetListDataSetsItem Text-dsldsiKind- = lens _dsldsiKind (\ s a -> s{_dsldsiKind = a})---- | The dataset reference. Use this property to access specific parts of the--- dataset\'s ID, such as project ID or dataset ID.-dsldsiDataSetReference :: Lens' DataSetListDataSetsItem (Maybe DataSetReference)-dsldsiDataSetReference- = lens _dsldsiDataSetReference- (\ s a -> s{_dsldsiDataSetReference = a})---- | The fully-qualified, unique, opaque ID of the dataset.-dsldsiId :: Lens' DataSetListDataSetsItem (Maybe Text)-dsldsiId = lens _dsldsiId (\ s a -> s{_dsldsiId = a})---- | [Experimental] The labels associated with this dataset. You can use--- these to organize and group your datasets.-dsldsiLabels :: Lens' DataSetListDataSetsItem (Maybe DataSetListDataSetsItemLabels)-dsldsiLabels- = lens _dsldsiLabels (\ s a -> s{_dsldsiLabels = a})--instance FromJSON DataSetListDataSetsItem where- parseJSON- = withObject "DataSetListDataSetsItem"- (\ o ->- DataSetListDataSetsItem' <$>- (o .:? "friendlyName") <*>- (o .:? "kind" .!= "bigquery#dataset")- <*> (o .:? "datasetReference")- <*> (o .:? "id")- <*> (o .:? "labels"))--instance ToJSON DataSetListDataSetsItem where- toJSON DataSetListDataSetsItem'{..}- = object- (catMaybes- [("friendlyName" .=) <$> _dsldsiFriendlyName,- Just ("kind" .= _dsldsiKind),- ("datasetReference" .=) <$> _dsldsiDataSetReference,- ("id" .=) <$> _dsldsiId,- ("labels" .=) <$> _dsldsiLabels])------- /See:/ 'tableDataList' smart constructor.-data TableDataList = TableDataList'- { _tdlEtag :: !(Maybe Text)- , _tdlKind :: !Text- , _tdlRows :: !(Maybe [TableRow])- , _tdlPageToken :: !(Maybe Text)- , _tdlTotalRows :: !(Maybe (Textual Int64))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableDataList' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tdlEtag'------ * 'tdlKind'------ * 'tdlRows'------ * 'tdlPageToken'------ * 'tdlTotalRows'-tableDataList- :: TableDataList-tableDataList =- TableDataList'- { _tdlEtag = Nothing- , _tdlKind = "bigquery#tableDataList"- , _tdlRows = Nothing- , _tdlPageToken = Nothing- , _tdlTotalRows = Nothing- }---- | A hash of this page of results.-tdlEtag :: Lens' TableDataList (Maybe Text)-tdlEtag = lens _tdlEtag (\ s a -> s{_tdlEtag = a})---- | The resource type of the response.-tdlKind :: Lens' TableDataList Text-tdlKind = lens _tdlKind (\ s a -> s{_tdlKind = a})---- | Rows of results.-tdlRows :: Lens' TableDataList [TableRow]-tdlRows- = lens _tdlRows (\ s a -> s{_tdlRows = a}) . _Default- . _Coerce---- | A token used for paging results. Providing this token instead of the--- startIndex parameter can help you retrieve stable results when an--- underlying table is changing.-tdlPageToken :: Lens' TableDataList (Maybe Text)-tdlPageToken- = lens _tdlPageToken (\ s a -> s{_tdlPageToken = a})---- | The total number of rows in the complete table.-tdlTotalRows :: Lens' TableDataList (Maybe Int64)-tdlTotalRows- = lens _tdlTotalRows (\ s a -> s{_tdlTotalRows = a})- . mapping _Coerce--instance FromJSON TableDataList where- parseJSON- = withObject "TableDataList"- (\ o ->- TableDataList' <$>- (o .:? "etag") <*>- (o .:? "kind" .!= "bigquery#tableDataList")- <*> (o .:? "rows" .!= mempty)- <*> (o .:? "pageToken")- <*> (o .:? "totalRows"))--instance ToJSON TableDataList where- toJSON TableDataList'{..}- = object- (catMaybes- [("etag" .=) <$> _tdlEtag, Just ("kind" .= _tdlKind),- ("rows" .=) <$> _tdlRows,- ("pageToken" .=) <$> _tdlPageToken,- ("totalRows" .=) <$> _tdlTotalRows])------- /See:/ 'jobConfigurationTableCopy' smart constructor.-data JobConfigurationTableCopy = JobConfigurationTableCopy'- { _jctcDestinationTable :: !(Maybe TableReference)- , _jctcWriteDisPosition :: !(Maybe Text)- , _jctcSourceTables :: !(Maybe [TableReference])- , _jctcCreateDisPosition :: !(Maybe Text)- , _jctcSourceTable :: !(Maybe TableReference)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobConfigurationTableCopy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jctcDestinationTable'------ * 'jctcWriteDisPosition'------ * 'jctcSourceTables'------ * 'jctcCreateDisPosition'------ * 'jctcSourceTable'-jobConfigurationTableCopy- :: JobConfigurationTableCopy-jobConfigurationTableCopy =- JobConfigurationTableCopy'- { _jctcDestinationTable = Nothing- , _jctcWriteDisPosition = Nothing- , _jctcSourceTables = Nothing- , _jctcCreateDisPosition = Nothing- , _jctcSourceTable = Nothing- }---- | [Required] The destination table-jctcDestinationTable :: Lens' JobConfigurationTableCopy (Maybe TableReference)-jctcDestinationTable- = lens _jctcDestinationTable- (\ s a -> s{_jctcDestinationTable = a})---- | [Optional] Specifies the action that occurs if the destination table--- already exists. The following values are supported: WRITE_TRUNCATE: If--- the table already exists, BigQuery overwrites the table data.--- WRITE_APPEND: If the table already exists, BigQuery appends the data to--- the table. WRITE_EMPTY: If the table already exists and contains data, a--- \'duplicate\' error is returned in the job result. The default value is--- WRITE_EMPTY. Each action is atomic and only occurs if BigQuery is able--- to complete the job successfully. Creation, truncation and append--- actions occur as one atomic update upon job completion.-jctcWriteDisPosition :: Lens' JobConfigurationTableCopy (Maybe Text)-jctcWriteDisPosition- = lens _jctcWriteDisPosition- (\ s a -> s{_jctcWriteDisPosition = a})---- | [Pick one] Source tables to copy.-jctcSourceTables :: Lens' JobConfigurationTableCopy [TableReference]-jctcSourceTables- = lens _jctcSourceTables- (\ s a -> s{_jctcSourceTables = a})- . _Default- . _Coerce---- | [Optional] Specifies whether the job is allowed to create new tables.--- The following values are supported: CREATE_IF_NEEDED: If the table does--- not exist, BigQuery creates the table. CREATE_NEVER: The table must--- already exist. If it does not, a \'notFound\' error is returned in the--- job result. The default value is CREATE_IF_NEEDED. Creation, truncation--- and append actions occur as one atomic update upon job completion.-jctcCreateDisPosition :: Lens' JobConfigurationTableCopy (Maybe Text)-jctcCreateDisPosition- = lens _jctcCreateDisPosition- (\ s a -> s{_jctcCreateDisPosition = a})---- | [Pick one] Source table to copy.-jctcSourceTable :: Lens' JobConfigurationTableCopy (Maybe TableReference)-jctcSourceTable- = lens _jctcSourceTable- (\ s a -> s{_jctcSourceTable = a})--instance FromJSON JobConfigurationTableCopy where- parseJSON- = withObject "JobConfigurationTableCopy"- (\ o ->- JobConfigurationTableCopy' <$>- (o .:? "destinationTable") <*>- (o .:? "writeDisposition")- <*> (o .:? "sourceTables" .!= mempty)- <*> (o .:? "createDisposition")- <*> (o .:? "sourceTable"))--instance ToJSON JobConfigurationTableCopy where- toJSON JobConfigurationTableCopy'{..}- = object- (catMaybes- [("destinationTable" .=) <$> _jctcDestinationTable,- ("writeDisposition" .=) <$> _jctcWriteDisPosition,- ("sourceTables" .=) <$> _jctcSourceTables,- ("createDisposition" .=) <$> _jctcCreateDisPosition,- ("sourceTable" .=) <$> _jctcSourceTable])------- /See:/ 'tableListTablesItem' smart constructor.-data TableListTablesItem = TableListTablesItem'- { _tltiTableReference :: !(Maybe TableReference)- , _tltiFriendlyName :: !(Maybe Text)- , _tltiKind :: !Text- , _tltiId :: !(Maybe Text)- , _tltiLabels :: !(Maybe TableListTablesItemLabels)- , _tltiType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableListTablesItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tltiTableReference'------ * 'tltiFriendlyName'------ * 'tltiKind'------ * 'tltiId'------ * 'tltiLabels'------ * 'tltiType'-tableListTablesItem- :: TableListTablesItem-tableListTablesItem =- TableListTablesItem'- { _tltiTableReference = Nothing- , _tltiFriendlyName = Nothing- , _tltiKind = "bigquery#table"- , _tltiId = Nothing- , _tltiLabels = Nothing- , _tltiType = Nothing- }---- | A reference uniquely identifying the table.-tltiTableReference :: Lens' TableListTablesItem (Maybe TableReference)-tltiTableReference- = lens _tltiTableReference- (\ s a -> s{_tltiTableReference = a})---- | The user-friendly name for this table.-tltiFriendlyName :: Lens' TableListTablesItem (Maybe Text)-tltiFriendlyName- = lens _tltiFriendlyName- (\ s a -> s{_tltiFriendlyName = a})---- | The resource type.-tltiKind :: Lens' TableListTablesItem Text-tltiKind = lens _tltiKind (\ s a -> s{_tltiKind = a})---- | An opaque ID of the table-tltiId :: Lens' TableListTablesItem (Maybe Text)-tltiId = lens _tltiId (\ s a -> s{_tltiId = a})---- | [Experimental] The labels associated with this table. You can use these--- to organize and group your tables.-tltiLabels :: Lens' TableListTablesItem (Maybe TableListTablesItemLabels)-tltiLabels- = lens _tltiLabels (\ s a -> s{_tltiLabels = a})---- | The type of table. Possible values are: TABLE, VIEW.-tltiType :: Lens' TableListTablesItem (Maybe Text)-tltiType = lens _tltiType (\ s a -> s{_tltiType = a})--instance FromJSON TableListTablesItem where- parseJSON- = withObject "TableListTablesItem"- (\ o ->- TableListTablesItem' <$>- (o .:? "tableReference") <*> (o .:? "friendlyName")- <*> (o .:? "kind" .!= "bigquery#table")- <*> (o .:? "id")- <*> (o .:? "labels")- <*> (o .:? "type"))--instance ToJSON TableListTablesItem where- toJSON TableListTablesItem'{..}- = object- (catMaybes- [("tableReference" .=) <$> _tltiTableReference,- ("friendlyName" .=) <$> _tltiFriendlyName,- Just ("kind" .= _tltiKind), ("id" .=) <$> _tltiId,- ("labels" .=) <$> _tltiLabels,- ("type" .=) <$> _tltiType])------- /See:/ 'tableSchema' smart constructor.-newtype TableSchema = TableSchema'- { _tsFields :: Maybe [TableFieldSchema]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableSchema' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tsFields'-tableSchema- :: TableSchema-tableSchema =- TableSchema'- { _tsFields = Nothing- }---- | Describes the fields in a table.-tsFields :: Lens' TableSchema [TableFieldSchema]-tsFields- = lens _tsFields (\ s a -> s{_tsFields = a}) .- _Default- . _Coerce--instance FromJSON TableSchema where- parseJSON- = withObject "TableSchema"- (\ o -> TableSchema' <$> (o .:? "fields" .!= mempty))--instance ToJSON TableSchema where- toJSON TableSchema'{..}- = object (catMaybes [("fields" .=) <$> _tsFields])------- /See:/ 'projectList' smart constructor.-data ProjectList = ProjectList'- { _plTotalItems :: !(Maybe (Textual Int32))- , _plEtag :: !(Maybe Text)- , _plNextPageToken :: !(Maybe Text)- , _plKind :: !Text- , _plProjects :: !(Maybe [ProjectListProjectsItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProjectList' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'plTotalItems'------ * 'plEtag'------ * 'plNextPageToken'------ * 'plKind'------ * 'plProjects'-projectList- :: ProjectList-projectList =- ProjectList'- { _plTotalItems = Nothing- , _plEtag = Nothing- , _plNextPageToken = Nothing- , _plKind = "bigquery#projectList"- , _plProjects = Nothing- }---- | The total number of projects in the list.-plTotalItems :: Lens' ProjectList (Maybe Int32)-plTotalItems- = lens _plTotalItems (\ s a -> s{_plTotalItems = a})- . mapping _Coerce---- | A hash of the page of results-plEtag :: Lens' ProjectList (Maybe Text)-plEtag = lens _plEtag (\ s a -> s{_plEtag = a})---- | A token to request the next page of results.-plNextPageToken :: Lens' ProjectList (Maybe Text)-plNextPageToken- = lens _plNextPageToken- (\ s a -> s{_plNextPageToken = a})---- | The type of list.-plKind :: Lens' ProjectList Text-plKind = lens _plKind (\ s a -> s{_plKind = a})---- | Projects to which you have at least READ access.-plProjects :: Lens' ProjectList [ProjectListProjectsItem]-plProjects- = lens _plProjects (\ s a -> s{_plProjects = a}) .- _Default- . _Coerce--instance FromJSON ProjectList where- parseJSON- = withObject "ProjectList"- (\ o ->- ProjectList' <$>- (o .:? "totalItems") <*> (o .:? "etag") <*>- (o .:? "nextPageToken")- <*> (o .:? "kind" .!= "bigquery#projectList")- <*> (o .:? "projects" .!= mempty))--instance ToJSON ProjectList where- toJSON ProjectList'{..}- = object- (catMaybes- [("totalItems" .=) <$> _plTotalItems,- ("etag" .=) <$> _plEtag,- ("nextPageToken" .=) <$> _plNextPageToken,- Just ("kind" .= _plKind),- ("projects" .=) <$> _plProjects])------- /See:/ 'explainQueryStep' smart constructor.-data ExplainQueryStep = ExplainQueryStep'- { _eqsSubsteps :: !(Maybe [Text])- , _eqsKind :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ExplainQueryStep' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'eqsSubsteps'------ * 'eqsKind'-explainQueryStep- :: ExplainQueryStep-explainQueryStep =- ExplainQueryStep'- { _eqsSubsteps = Nothing- , _eqsKind = Nothing- }---- | Human-readable stage descriptions.-eqsSubsteps :: Lens' ExplainQueryStep [Text]-eqsSubsteps- = lens _eqsSubsteps (\ s a -> s{_eqsSubsteps = a}) .- _Default- . _Coerce---- | Machine-readable operation type.-eqsKind :: Lens' ExplainQueryStep (Maybe Text)-eqsKind = lens _eqsKind (\ s a -> s{_eqsKind = a})--instance FromJSON ExplainQueryStep where- parseJSON- = withObject "ExplainQueryStep"- (\ o ->- ExplainQueryStep' <$>- (o .:? "substeps" .!= mempty) <*> (o .:? "kind"))--instance ToJSON ExplainQueryStep where- toJSON ExplainQueryStep'{..}- = object- (catMaybes- [("substeps" .=) <$> _eqsSubsteps,- ("kind" .=) <$> _eqsKind])------- /See:/ 'queryParameterTypeStructTypesItem' smart constructor.-data QueryParameterTypeStructTypesItem = QueryParameterTypeStructTypesItem'- { _qptstiName :: !(Maybe Text)- , _qptstiType :: !(Maybe QueryParameterType)- , _qptstiDescription :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'QueryParameterTypeStructTypesItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'qptstiName'------ * 'qptstiType'------ * 'qptstiDescription'-queryParameterTypeStructTypesItem- :: QueryParameterTypeStructTypesItem-queryParameterTypeStructTypesItem =- QueryParameterTypeStructTypesItem'- { _qptstiName = Nothing- , _qptstiType = Nothing- , _qptstiDescription = Nothing- }---- | [Optional] The name of this field.-qptstiName :: Lens' QueryParameterTypeStructTypesItem (Maybe Text)-qptstiName- = lens _qptstiName (\ s a -> s{_qptstiName = a})---- | [Required] The type of this field.-qptstiType :: Lens' QueryParameterTypeStructTypesItem (Maybe QueryParameterType)-qptstiType- = lens _qptstiType (\ s a -> s{_qptstiType = a})---- | [Optional] Human-oriented description of the field.-qptstiDescription :: Lens' QueryParameterTypeStructTypesItem (Maybe Text)-qptstiDescription- = lens _qptstiDescription- (\ s a -> s{_qptstiDescription = a})--instance FromJSON QueryParameterTypeStructTypesItem- where- parseJSON- = withObject "QueryParameterTypeStructTypesItem"- (\ o ->- QueryParameterTypeStructTypesItem' <$>- (o .:? "name") <*> (o .:? "type") <*>- (o .:? "description"))--instance ToJSON QueryParameterTypeStructTypesItem- where- toJSON QueryParameterTypeStructTypesItem'{..}- = object- (catMaybes- [("name" .=) <$> _qptstiName,- ("type" .=) <$> _qptstiType,- ("description" .=) <$> _qptstiDescription])------- /See:/ 'bigtableColumnFamily' smart constructor.-data BigtableColumnFamily = BigtableColumnFamily'- { _bcfFamilyId :: !(Maybe Text)- , _bcfColumns :: !(Maybe [BigtableColumn])- , _bcfOnlyReadLatest :: !(Maybe Bool)- , _bcfType :: !(Maybe Text)- , _bcfEncoding :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'BigtableColumnFamily' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'bcfFamilyId'------ * 'bcfColumns'------ * 'bcfOnlyReadLatest'------ * 'bcfType'------ * 'bcfEncoding'-bigtableColumnFamily- :: BigtableColumnFamily-bigtableColumnFamily =- BigtableColumnFamily'- { _bcfFamilyId = Nothing- , _bcfColumns = Nothing- , _bcfOnlyReadLatest = Nothing- , _bcfType = Nothing- , _bcfEncoding = Nothing- }---- | Identifier of the column family.-bcfFamilyId :: Lens' BigtableColumnFamily (Maybe Text)-bcfFamilyId- = lens _bcfFamilyId (\ s a -> s{_bcfFamilyId = a})---- | [Optional] Lists of columns that should be exposed as individual fields--- as opposed to a list of (column name, value) pairs. All columns whose--- qualifier matches a qualifier in this list can be accessed as .. Other--- columns can be accessed as a list through .Column field.-bcfColumns :: Lens' BigtableColumnFamily [BigtableColumn]-bcfColumns- = lens _bcfColumns (\ s a -> s{_bcfColumns = a}) .- _Default- . _Coerce---- | [Optional] If this is set only the latest version of value are exposed--- for all columns in this column family. This can be overridden for a--- specific column by listing that column in \'columns\' and specifying a--- different setting for that column.-bcfOnlyReadLatest :: Lens' BigtableColumnFamily (Maybe Bool)-bcfOnlyReadLatest- = lens _bcfOnlyReadLatest- (\ s a -> s{_bcfOnlyReadLatest = a})---- | [Optional] The type to convert the value in cells of this column family.--- The values are expected to be encoded using HBase Bytes.toBytes function--- when using the BINARY encoding value. Following BigQuery types are--- allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default--- type is BYTES. This can be overridden for a specific column by listing--- that column in \'columns\' and specifying a type for it.-bcfType :: Lens' BigtableColumnFamily (Maybe Text)-bcfType = lens _bcfType (\ s a -> s{_bcfType = a})---- | [Optional] The encoding of the values when the type is not STRING.--- Acceptable encoding values are: TEXT - indicates values are alphanumeric--- text strings. BINARY - indicates values are encoded using HBase--- Bytes.toBytes family of functions. This can be overridden for a specific--- column by listing that column in \'columns\' and specifying an encoding--- for it.-bcfEncoding :: Lens' BigtableColumnFamily (Maybe Text)-bcfEncoding- = lens _bcfEncoding (\ s a -> s{_bcfEncoding = a})--instance FromJSON BigtableColumnFamily where- parseJSON- = withObject "BigtableColumnFamily"- (\ o ->- BigtableColumnFamily' <$>- (o .:? "familyId") <*> (o .:? "columns" .!= mempty)- <*> (o .:? "onlyReadLatest")- <*> (o .:? "type")- <*> (o .:? "encoding"))--instance ToJSON BigtableColumnFamily where- toJSON BigtableColumnFamily'{..}- = object- (catMaybes- [("familyId" .=) <$> _bcfFamilyId,- ("columns" .=) <$> _bcfColumns,- ("onlyReadLatest" .=) <$> _bcfOnlyReadLatest,- ("type" .=) <$> _bcfType,- ("encoding" .=) <$> _bcfEncoding])------- /See:/ 'jobStatistics' smart constructor.-data JobStatistics = JobStatistics'- { _jsCreationTime :: !(Maybe (Textual Int64))- , _jsStartTime :: !(Maybe (Textual Int64))- , _jsLoad :: !(Maybe JobStatistics3)- , _jsTotalBytesProcessed :: !(Maybe (Textual Int64))- , _jsEndTime :: !(Maybe (Textual Int64))- , _jsQuery :: !(Maybe JobStatistics2)- , _jsExtract :: !(Maybe JobStatistics4)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobStatistics' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jsCreationTime'------ * 'jsStartTime'------ * 'jsLoad'------ * 'jsTotalBytesProcessed'------ * 'jsEndTime'------ * 'jsQuery'------ * 'jsExtract'-jobStatistics- :: JobStatistics-jobStatistics =- JobStatistics'- { _jsCreationTime = Nothing- , _jsStartTime = Nothing- , _jsLoad = Nothing- , _jsTotalBytesProcessed = Nothing- , _jsEndTime = Nothing- , _jsQuery = Nothing- , _jsExtract = Nothing- }---- | [Output-only] Creation time of this job, in milliseconds since the--- epoch. This field will be present on all jobs.-jsCreationTime :: Lens' JobStatistics (Maybe Int64)-jsCreationTime- = lens _jsCreationTime- (\ s a -> s{_jsCreationTime = a})- . mapping _Coerce---- | [Output-only] Start time of this job, in milliseconds since the epoch.--- This field will be present when the job transitions from the PENDING--- state to either RUNNING or DONE.-jsStartTime :: Lens' JobStatistics (Maybe Int64)-jsStartTime- = lens _jsStartTime (\ s a -> s{_jsStartTime = a}) .- mapping _Coerce---- | [Output-only] Statistics for a load job.-jsLoad :: Lens' JobStatistics (Maybe JobStatistics3)-jsLoad = lens _jsLoad (\ s a -> s{_jsLoad = a})---- | [Output-only] [Deprecated] Use the bytes processed in the query--- statistics instead.-jsTotalBytesProcessed :: Lens' JobStatistics (Maybe Int64)-jsTotalBytesProcessed- = lens _jsTotalBytesProcessed- (\ s a -> s{_jsTotalBytesProcessed = a})- . mapping _Coerce---- | [Output-only] End time of this job, in milliseconds since the epoch.--- This field will be present whenever a job is in the DONE state.-jsEndTime :: Lens' JobStatistics (Maybe Int64)-jsEndTime- = lens _jsEndTime (\ s a -> s{_jsEndTime = a}) .- mapping _Coerce---- | [Output-only] Statistics for a query job.-jsQuery :: Lens' JobStatistics (Maybe JobStatistics2)-jsQuery = lens _jsQuery (\ s a -> s{_jsQuery = a})---- | [Output-only] Statistics for an extract job.-jsExtract :: Lens' JobStatistics (Maybe JobStatistics4)-jsExtract- = lens _jsExtract (\ s a -> s{_jsExtract = a})--instance FromJSON JobStatistics where- parseJSON- = withObject "JobStatistics"- (\ o ->- JobStatistics' <$>- (o .:? "creationTime") <*> (o .:? "startTime") <*>- (o .:? "load")- <*> (o .:? "totalBytesProcessed")- <*> (o .:? "endTime")- <*> (o .:? "query")- <*> (o .:? "extract"))--instance ToJSON JobStatistics where- toJSON JobStatistics'{..}- = object- (catMaybes- [("creationTime" .=) <$> _jsCreationTime,- ("startTime" .=) <$> _jsStartTime,- ("load" .=) <$> _jsLoad,- ("totalBytesProcessed" .=) <$>- _jsTotalBytesProcessed,- ("endTime" .=) <$> _jsEndTime,- ("query" .=) <$> _jsQuery,- ("extract" .=) <$> _jsExtract])---- | [Experimental] The labels associated with this job. You can use these to--- organize and group your jobs. Label keys and values can be no longer--- than 63 characters, can only contain letters, numeric characters,--- underscores and dashes. International characters are allowed. Label--- values are optional. Label keys must start with a letter and must be--- unique within a dataset. Both keys and values are additionally--- constrained to be \<= 128 bytes in size.------ /See:/ 'jobConfigurationLabels' smart constructor.-newtype JobConfigurationLabels = JobConfigurationLabels'- { _jclAddtional :: HashMap Text Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobConfigurationLabels' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jclAddtional'-jobConfigurationLabels- :: HashMap Text Text -- ^ 'jclAddtional'- -> JobConfigurationLabels-jobConfigurationLabels pJclAddtional_ =- JobConfigurationLabels'- { _jclAddtional = _Coerce # pJclAddtional_- }--jclAddtional :: Lens' JobConfigurationLabels (HashMap Text Text)-jclAddtional- = lens _jclAddtional (\ s a -> s{_jclAddtional = a})- . _Coerce--instance FromJSON JobConfigurationLabels where- parseJSON- = withObject "JobConfigurationLabels"- (\ o ->- JobConfigurationLabels' <$> (parseJSONObject o))--instance ToJSON JobConfigurationLabels where- toJSON = toJSON . _jclAddtional------- /See:/ 'dataSet' smart constructor.-data DataSet = DataSet'- { _dsCreationTime :: !(Maybe (Textual Int64))- , _dsAccess :: !(Maybe [DataSetAccessItem])- , _dsEtag :: !(Maybe Text)- , _dsLocation :: !(Maybe Text)- , _dsFriendlyName :: !(Maybe Text)- , _dsKind :: !Text- , _dsLastModifiedTime :: !(Maybe (Textual Int64))- , _dsDataSetReference :: !(Maybe DataSetReference)- , _dsSelfLink :: !(Maybe Text)- , _dsId :: !(Maybe Text)- , _dsLabels :: !(Maybe DataSetLabels)- , _dsDefaultTableExpirationMs :: !(Maybe (Textual Int64))- , _dsDescription :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DataSet' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dsCreationTime'------ * 'dsAccess'------ * 'dsEtag'------ * 'dsLocation'------ * 'dsFriendlyName'------ * 'dsKind'------ * 'dsLastModifiedTime'------ * 'dsDataSetReference'------ * 'dsSelfLink'------ * 'dsId'------ * 'dsLabels'------ * 'dsDefaultTableExpirationMs'------ * 'dsDescription'-dataSet- :: DataSet-dataSet =- DataSet'- { _dsCreationTime = Nothing- , _dsAccess = Nothing- , _dsEtag = Nothing- , _dsLocation = Nothing- , _dsFriendlyName = Nothing- , _dsKind = "bigquery#dataset"- , _dsLastModifiedTime = Nothing- , _dsDataSetReference = Nothing- , _dsSelfLink = Nothing- , _dsId = Nothing- , _dsLabels = Nothing- , _dsDefaultTableExpirationMs = Nothing- , _dsDescription = Nothing- }---- | [Output-only] The time when this dataset was created, in milliseconds--- since the epoch.-dsCreationTime :: Lens' DataSet (Maybe Int64)-dsCreationTime- = lens _dsCreationTime- (\ s a -> s{_dsCreationTime = a})- . mapping _Coerce---- | [Optional] An array of objects that define dataset access for one or--- more entities. You can set this property when inserting or updating a--- dataset in order to control who is allowed to access the data. If--- unspecified at dataset creation time, BigQuery adds default dataset--- access for the following entities: access.specialGroup: projectReaders;--- access.role: READER; access.specialGroup: projectWriters; access.role:--- WRITER; access.specialGroup: projectOwners; access.role: OWNER;--- access.userByEmail: [dataset creator email]; access.role: OWNER;-dsAccess :: Lens' DataSet [DataSetAccessItem]-dsAccess- = lens _dsAccess (\ s a -> s{_dsAccess = a}) .- _Default- . _Coerce---- | [Output-only] A hash of the resource.-dsEtag :: Lens' DataSet (Maybe Text)-dsEtag = lens _dsEtag (\ s a -> s{_dsEtag = a})---- | [Experimental] The geographic location where the dataset should reside.--- Possible values include EU and US. The default value is US.-dsLocation :: Lens' DataSet (Maybe Text)-dsLocation- = lens _dsLocation (\ s a -> s{_dsLocation = a})---- | [Optional] A descriptive name for the dataset.-dsFriendlyName :: Lens' DataSet (Maybe Text)-dsFriendlyName- = lens _dsFriendlyName- (\ s a -> s{_dsFriendlyName = a})---- | [Output-only] The resource type.-dsKind :: Lens' DataSet Text-dsKind = lens _dsKind (\ s a -> s{_dsKind = a})---- | [Output-only] The date when this dataset or any of its tables was last--- modified, in milliseconds since the epoch.-dsLastModifiedTime :: Lens' DataSet (Maybe Int64)-dsLastModifiedTime- = lens _dsLastModifiedTime- (\ s a -> s{_dsLastModifiedTime = a})- . mapping _Coerce---- | [Required] A reference that identifies the dataset.-dsDataSetReference :: Lens' DataSet (Maybe DataSetReference)-dsDataSetReference- = lens _dsDataSetReference- (\ s a -> s{_dsDataSetReference = a})---- | [Output-only] A URL that can be used to access the resource again. You--- can use this URL in Get or Update requests to the resource.-dsSelfLink :: Lens' DataSet (Maybe Text)-dsSelfLink- = lens _dsSelfLink (\ s a -> s{_dsSelfLink = a})---- | [Output-only] The fully-qualified unique name of the dataset in the--- format projectId:datasetId. The dataset name without the project name is--- given in the datasetId field. When creating a new dataset, leave this--- field blank, and instead specify the datasetId field.-dsId :: Lens' DataSet (Maybe Text)-dsId = lens _dsId (\ s a -> s{_dsId = a})---- | [Experimental] The labels associated with this dataset. You can use--- these to organize and group your datasets. You can set this property--- when inserting or updating a dataset. See Labeling Datasets for more--- information.-dsLabels :: Lens' DataSet (Maybe DataSetLabels)-dsLabels = lens _dsLabels (\ s a -> s{_dsLabels = a})---- | [Optional] The default lifetime of all tables in the dataset, in--- milliseconds. The minimum value is 3600000 milliseconds (one hour). Once--- this property is set, all newly-created tables in the dataset will have--- an expirationTime property set to the creation time plus the value in--- this property, and changing the value will only affect new tables, not--- existing ones. When the expirationTime for a given table is reached,--- that table will be deleted automatically. If a table\'s expirationTime--- is modified or removed before the table expires, or if you provide an--- explicit expirationTime when creating a table, that value takes--- precedence over the default expiration time indicated by this property.-dsDefaultTableExpirationMs :: Lens' DataSet (Maybe Int64)-dsDefaultTableExpirationMs- = lens _dsDefaultTableExpirationMs- (\ s a -> s{_dsDefaultTableExpirationMs = a})- . mapping _Coerce---- | [Optional] A user-friendly description of the dataset.-dsDescription :: Lens' DataSet (Maybe Text)-dsDescription- = lens _dsDescription- (\ s a -> s{_dsDescription = a})--instance FromJSON DataSet where- parseJSON- = withObject "DataSet"- (\ o ->- DataSet' <$>- (o .:? "creationTime") <*>- (o .:? "access" .!= mempty)- <*> (o .:? "etag")- <*> (o .:? "location")- <*> (o .:? "friendlyName")- <*> (o .:? "kind" .!= "bigquery#dataset")- <*> (o .:? "lastModifiedTime")- <*> (o .:? "datasetReference")- <*> (o .:? "selfLink")- <*> (o .:? "id")- <*> (o .:? "labels")- <*> (o .:? "defaultTableExpirationMs")- <*> (o .:? "description"))--instance ToJSON DataSet where- toJSON DataSet'{..}- = object- (catMaybes- [("creationTime" .=) <$> _dsCreationTime,- ("access" .=) <$> _dsAccess, ("etag" .=) <$> _dsEtag,- ("location" .=) <$> _dsLocation,- ("friendlyName" .=) <$> _dsFriendlyName,- Just ("kind" .= _dsKind),- ("lastModifiedTime" .=) <$> _dsLastModifiedTime,- ("datasetReference" .=) <$> _dsDataSetReference,- ("selfLink" .=) <$> _dsSelfLink, ("id" .=) <$> _dsId,- ("labels" .=) <$> _dsLabels,- ("defaultTableExpirationMs" .=) <$>- _dsDefaultTableExpirationMs,- ("description" .=) <$> _dsDescription])------- /See:/ 'bigtableOptions' smart constructor.-data BigtableOptions = BigtableOptions'- { _boReadRowkeyAsString :: !(Maybe Bool)- , _boIgnoreUnspecifiedColumnFamilies :: !(Maybe Bool)- , _boColumnFamilies :: !(Maybe [BigtableColumnFamily])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'BigtableOptions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'boReadRowkeyAsString'------ * 'boIgnoreUnspecifiedColumnFamilies'------ * 'boColumnFamilies'-bigtableOptions- :: BigtableOptions-bigtableOptions =- BigtableOptions'- { _boReadRowkeyAsString = Nothing- , _boIgnoreUnspecifiedColumnFamilies = Nothing- , _boColumnFamilies = Nothing- }---- | [Optional] If field is true, then the rowkey column families will be--- read and converted to string. Otherwise they are read with BYTES type--- values and users need to manually cast them with CAST if necessary. The--- default value is false.-boReadRowkeyAsString :: Lens' BigtableOptions (Maybe Bool)-boReadRowkeyAsString- = lens _boReadRowkeyAsString- (\ s a -> s{_boReadRowkeyAsString = a})---- | [Optional] If field is true, then the column families that are not--- specified in columnFamilies list are not exposed in the table schema.--- Otherwise, they are read with BYTES type values. The default value is--- false.-boIgnoreUnspecifiedColumnFamilies :: Lens' BigtableOptions (Maybe Bool)-boIgnoreUnspecifiedColumnFamilies- = lens _boIgnoreUnspecifiedColumnFamilies- (\ s a -> s{_boIgnoreUnspecifiedColumnFamilies = a})---- | [Optional] List of column families to expose in the table schema along--- with their types. This list restricts the column families that can be--- referenced in queries and specifies their value types. You can use this--- list to do type conversions - see the \'type\' field for more details.--- If you leave this list empty, all column families are present in the--- table schema and their values are read as BYTES. During a query only the--- column families referenced in that query are read from Bigtable.-boColumnFamilies :: Lens' BigtableOptions [BigtableColumnFamily]-boColumnFamilies- = lens _boColumnFamilies- (\ s a -> s{_boColumnFamilies = a})- . _Default- . _Coerce--instance FromJSON BigtableOptions where- parseJSON- = withObject "BigtableOptions"- (\ o ->- BigtableOptions' <$>- (o .:? "readRowkeyAsString") <*>- (o .:? "ignoreUnspecifiedColumnFamilies")- <*> (o .:? "columnFamilies" .!= mempty))--instance ToJSON BigtableOptions where- toJSON BigtableOptions'{..}- = object- (catMaybes- [("readRowkeyAsString" .=) <$> _boReadRowkeyAsString,- ("ignoreUnspecifiedColumnFamilies" .=) <$>- _boIgnoreUnspecifiedColumnFamilies,- ("columnFamilies" .=) <$> _boColumnFamilies])------- /See:/ 'externalDataConfiguration' smart constructor.-data ExternalDataConfiguration = ExternalDataConfiguration'- { _edcBigtableOptions :: !(Maybe BigtableOptions)- , _edcIgnoreUnknownValues :: !(Maybe Bool)- , _edcCompression :: !(Maybe Text)- , _edcSourceFormat :: !(Maybe Text)- , _edcSchema :: !(Maybe TableSchema)- , _edcMaxBadRecords :: !(Maybe (Textual Int32))- , _edcGoogleSheetsOptions :: !(Maybe GoogleSheetsOptions)- , _edcAutodetect :: !(Maybe Bool)- , _edcSourceURIs :: !(Maybe [Text])- , _edcCSVOptions :: !(Maybe CSVOptions)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ExternalDataConfiguration' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'edcBigtableOptions'------ * 'edcIgnoreUnknownValues'------ * 'edcCompression'------ * 'edcSourceFormat'------ * 'edcSchema'------ * 'edcMaxBadRecords'------ * 'edcGoogleSheetsOptions'------ * 'edcAutodetect'------ * 'edcSourceURIs'------ * 'edcCSVOptions'-externalDataConfiguration- :: ExternalDataConfiguration-externalDataConfiguration =- ExternalDataConfiguration'- { _edcBigtableOptions = Nothing- , _edcIgnoreUnknownValues = Nothing- , _edcCompression = Nothing- , _edcSourceFormat = Nothing- , _edcSchema = Nothing- , _edcMaxBadRecords = Nothing- , _edcGoogleSheetsOptions = Nothing- , _edcAutodetect = Nothing- , _edcSourceURIs = Nothing- , _edcCSVOptions = Nothing- }---- | [Optional] Additional options if sourceFormat is set to BIGTABLE.-edcBigtableOptions :: Lens' ExternalDataConfiguration (Maybe BigtableOptions)-edcBigtableOptions- = lens _edcBigtableOptions- (\ s a -> s{_edcBigtableOptions = a})---- | [Optional] Indicates if BigQuery should allow extra values that are not--- represented in the table schema. If true, the extra values are ignored.--- If false, records with extra columns are treated as bad records, and if--- there are too many bad records, an invalid error is returned in the job--- result. The default value is false. The sourceFormat property determines--- what BigQuery treats as an extra value: CSV: Trailing columns JSON:--- Named values that don\'t match any column names Google Cloud Bigtable:--- This setting is ignored. Google Cloud Datastore backups: This setting is--- ignored. Avro: This setting is ignored.-edcIgnoreUnknownValues :: Lens' ExternalDataConfiguration (Maybe Bool)-edcIgnoreUnknownValues- = lens _edcIgnoreUnknownValues- (\ s a -> s{_edcIgnoreUnknownValues = a})---- | [Optional] The compression type of the data source. Possible values--- include GZIP and NONE. The default value is NONE. This setting is--- ignored for Google Cloud Bigtable, Google Cloud Datastore backups and--- Avro formats.-edcCompression :: Lens' ExternalDataConfiguration (Maybe Text)-edcCompression- = lens _edcCompression- (\ s a -> s{_edcCompression = a})---- | [Required] The data format. For CSV files, specify \"CSV\". For Google--- sheets, specify \"GOOGLE_SHEETS\". For newline-delimited JSON, specify--- \"NEWLINE_DELIMITED_JSON\". For Avro files, specify \"AVRO\". For Google--- Cloud Datastore backups, specify \"DATASTORE_BACKUP\". [Experimental]--- For Google Cloud Bigtable, specify \"BIGTABLE\". Please note that--- reading from Google Cloud Bigtable is experimental and has to be enabled--- for your project. Please contact Google Cloud Support to enable this for--- your project.-edcSourceFormat :: Lens' ExternalDataConfiguration (Maybe Text)-edcSourceFormat- = lens _edcSourceFormat- (\ s a -> s{_edcSourceFormat = a})---- | [Optional] The schema for the data. Schema is required for CSV and JSON--- formats. Schema is disallowed for Google Cloud Bigtable, Cloud Datastore--- backups, and Avro formats.-edcSchema :: Lens' ExternalDataConfiguration (Maybe TableSchema)-edcSchema- = lens _edcSchema (\ s a -> s{_edcSchema = a})---- | [Optional] The maximum number of bad records that BigQuery can ignore--- when reading data. If the number of bad records exceeds this value, an--- invalid error is returned in the job result. The default value is 0,--- which requires that all records are valid. This setting is ignored for--- Google Cloud Bigtable, Google Cloud Datastore backups and Avro formats.-edcMaxBadRecords :: Lens' ExternalDataConfiguration (Maybe Int32)-edcMaxBadRecords- = lens _edcMaxBadRecords- (\ s a -> s{_edcMaxBadRecords = a})- . mapping _Coerce---- | [Optional] Additional options if sourceFormat is set to GOOGLE_SHEETS.-edcGoogleSheetsOptions :: Lens' ExternalDataConfiguration (Maybe GoogleSheetsOptions)-edcGoogleSheetsOptions- = lens _edcGoogleSheetsOptions- (\ s a -> s{_edcGoogleSheetsOptions = a})---- | [Experimental] Try to detect schema and format options automatically.--- Any option specified explicitly will be honored.-edcAutodetect :: Lens' ExternalDataConfiguration (Maybe Bool)-edcAutodetect- = lens _edcAutodetect- (\ s a -> s{_edcAutodetect = a})---- | [Required] The fully-qualified URIs that point to your data in Google--- Cloud. For Google Cloud Storage URIs: Each URI can contain one \'*\'--- wildcard character and it must come after the \'bucket\' name. Size--- limits related to load jobs apply to external data sources. For Google--- Cloud Bigtable URIs: Exactly one URI can be specified and it has be a--- fully specified and valid HTTPS URL for a Google Cloud Bigtable table.--- For Google Cloud Datastore backups, exactly one URI can be specified,--- and it must end with \'.backup_info\'. Also, the \'*\' wildcard--- character is not allowed.-edcSourceURIs :: Lens' ExternalDataConfiguration [Text]-edcSourceURIs- = lens _edcSourceURIs- (\ s a -> s{_edcSourceURIs = a})- . _Default- . _Coerce---- | Additional properties to set if sourceFormat is set to CSV.-edcCSVOptions :: Lens' ExternalDataConfiguration (Maybe CSVOptions)-edcCSVOptions- = lens _edcCSVOptions- (\ s a -> s{_edcCSVOptions = a})--instance FromJSON ExternalDataConfiguration where- parseJSON- = withObject "ExternalDataConfiguration"- (\ o ->- ExternalDataConfiguration' <$>- (o .:? "bigtableOptions") <*>- (o .:? "ignoreUnknownValues")- <*> (o .:? "compression")- <*> (o .:? "sourceFormat")- <*> (o .:? "schema")- <*> (o .:? "maxBadRecords")- <*> (o .:? "googleSheetsOptions")- <*> (o .:? "autodetect")- <*> (o .:? "sourceUris" .!= mempty)- <*> (o .:? "csvOptions"))--instance ToJSON ExternalDataConfiguration where- toJSON ExternalDataConfiguration'{..}- = object- (catMaybes- [("bigtableOptions" .=) <$> _edcBigtableOptions,- ("ignoreUnknownValues" .=) <$>- _edcIgnoreUnknownValues,- ("compression" .=) <$> _edcCompression,- ("sourceFormat" .=) <$> _edcSourceFormat,- ("schema" .=) <$> _edcSchema,- ("maxBadRecords" .=) <$> _edcMaxBadRecords,- ("googleSheetsOptions" .=) <$>- _edcGoogleSheetsOptions,- ("autodetect" .=) <$> _edcAutodetect,- ("sourceUris" .=) <$> _edcSourceURIs,- ("csvOptions" .=) <$> _edcCSVOptions])------- /See:/ 'tableReference' smart constructor.-data TableReference = TableReference'- { _trDataSetId :: !(Maybe Text)- , _trProjectId :: !(Maybe Text)- , _trTableId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableReference' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'trDataSetId'------ * 'trProjectId'------ * 'trTableId'-tableReference- :: TableReference-tableReference =- TableReference'- { _trDataSetId = Nothing- , _trProjectId = Nothing- , _trTableId = Nothing- }---- | [Required] The ID of the dataset containing this table.-trDataSetId :: Lens' TableReference (Maybe Text)-trDataSetId- = lens _trDataSetId (\ s a -> s{_trDataSetId = a})---- | [Required] The ID of the project containing this table.-trProjectId :: Lens' TableReference (Maybe Text)-trProjectId- = lens _trProjectId (\ s a -> s{_trProjectId = a})---- | [Required] The ID of the table. The ID must contain only letters (a-z,--- A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024--- characters.-trTableId :: Lens' TableReference (Maybe Text)-trTableId- = lens _trTableId (\ s a -> s{_trTableId = a})--instance FromJSON TableReference where- parseJSON- = withObject "TableReference"- (\ o ->- TableReference' <$>- (o .:? "datasetId") <*> (o .:? "projectId") <*>- (o .:? "tableId"))--instance ToJSON TableReference where- toJSON TableReference'{..}- = object- (catMaybes- [("datasetId" .=) <$> _trDataSetId,- ("projectId" .=) <$> _trProjectId,- ("tableId" .=) <$> _trTableId])------- /See:/ 'tableFieldSchema' smart constructor.-data TableFieldSchema = TableFieldSchema'- { _tfsMode :: !(Maybe Text)- , _tfsName :: !(Maybe Text)- , _tfsType :: !(Maybe Text)- , _tfsDescription :: !(Maybe Text)- , _tfsFields :: !(Maybe [TableFieldSchema])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableFieldSchema' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tfsMode'------ * 'tfsName'------ * 'tfsType'------ * 'tfsDescription'------ * 'tfsFields'-tableFieldSchema- :: TableFieldSchema-tableFieldSchema =- TableFieldSchema'- { _tfsMode = Nothing- , _tfsName = Nothing- , _tfsType = Nothing- , _tfsDescription = Nothing- , _tfsFields = Nothing- }---- | [Optional] The field mode. Possible values include NULLABLE, REQUIRED--- and REPEATED. The default value is NULLABLE.-tfsMode :: Lens' TableFieldSchema (Maybe Text)-tfsMode = lens _tfsMode (\ s a -> s{_tfsMode = a})---- | [Required] The field name. The name must contain only letters (a-z,--- A-Z), numbers (0-9), or underscores (_), and must start with a letter or--- underscore. The maximum length is 128 characters.-tfsName :: Lens' TableFieldSchema (Maybe Text)-tfsName = lens _tfsName (\ s a -> s{_tfsName = a})---- | [Required] The field data type. Possible values include STRING, BYTES,--- INTEGER, INT64 (same as INTEGER), FLOAT, FLOAT64 (same as FLOAT),--- BOOLEAN, BOOL (same as BOOLEAN), TIMESTAMP, DATE, TIME, DATETIME, RECORD--- (where RECORD indicates that the field contains a nested schema) or--- STRUCT (same as RECORD).-tfsType :: Lens' TableFieldSchema (Maybe Text)-tfsType = lens _tfsType (\ s a -> s{_tfsType = a})---- | [Optional] The field description. The maximum length is 16K characters.-tfsDescription :: Lens' TableFieldSchema (Maybe Text)-tfsDescription- = lens _tfsDescription- (\ s a -> s{_tfsDescription = a})---- | [Optional] Describes the nested schema fields if the type property is--- set to RECORD.-tfsFields :: Lens' TableFieldSchema [TableFieldSchema]-tfsFields- = lens _tfsFields (\ s a -> s{_tfsFields = a}) .- _Default- . _Coerce--instance FromJSON TableFieldSchema where- parseJSON- = withObject "TableFieldSchema"- (\ o ->- TableFieldSchema' <$>- (o .:? "mode") <*> (o .:? "name") <*> (o .:? "type")- <*> (o .:? "description")- <*> (o .:? "fields" .!= mempty))--instance ToJSON TableFieldSchema where- toJSON TableFieldSchema'{..}- = object- (catMaybes- [("mode" .=) <$> _tfsMode, ("name" .=) <$> _tfsName,- ("type" .=) <$> _tfsType,- ("description" .=) <$> _tfsDescription,- ("fields" .=) <$> _tfsFields])------- /See:/ 'getQueryResultsResponse' smart constructor.-data GetQueryResultsResponse = GetQueryResultsResponse'- { _gqrrJobReference :: !(Maybe JobReference)- , _gqrrEtag :: !(Maybe Text)- , _gqrrKind :: !Text- , _gqrrSchema :: !(Maybe TableSchema)- , _gqrrTotalBytesProcessed :: !(Maybe (Textual Int64))- , _gqrrRows :: !(Maybe [TableRow])- , _gqrrPageToken :: !(Maybe Text)- , _gqrrNumDmlAffectedRows :: !(Maybe (Textual Int64))- , _gqrrTotalRows :: !(Maybe (Textual Word64))- , _gqrrErrors :: !(Maybe [ErrorProto])- , _gqrrJobComplete :: !(Maybe Bool)- , _gqrrCacheHit :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GetQueryResultsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gqrrJobReference'------ * 'gqrrEtag'------ * 'gqrrKind'------ * 'gqrrSchema'------ * 'gqrrTotalBytesProcessed'------ * 'gqrrRows'------ * 'gqrrPageToken'------ * 'gqrrNumDmlAffectedRows'------ * 'gqrrTotalRows'------ * 'gqrrErrors'------ * 'gqrrJobComplete'------ * 'gqrrCacheHit'-getQueryResultsResponse- :: GetQueryResultsResponse-getQueryResultsResponse =- GetQueryResultsResponse'- { _gqrrJobReference = Nothing- , _gqrrEtag = Nothing- , _gqrrKind = "bigquery#getQueryResultsResponse"- , _gqrrSchema = Nothing- , _gqrrTotalBytesProcessed = Nothing- , _gqrrRows = Nothing- , _gqrrPageToken = Nothing- , _gqrrNumDmlAffectedRows = Nothing- , _gqrrTotalRows = Nothing- , _gqrrErrors = Nothing- , _gqrrJobComplete = Nothing- , _gqrrCacheHit = Nothing- }---- | Reference to the BigQuery Job that was created to run the query. This--- field will be present even if the original request timed out, in which--- case GetQueryResults can be used to read the results once the query has--- completed. Since this API only returns the first page of results,--- subsequent pages can be fetched via the same mechanism--- (GetQueryResults).-gqrrJobReference :: Lens' GetQueryResultsResponse (Maybe JobReference)-gqrrJobReference- = lens _gqrrJobReference- (\ s a -> s{_gqrrJobReference = a})---- | A hash of this response.-gqrrEtag :: Lens' GetQueryResultsResponse (Maybe Text)-gqrrEtag = lens _gqrrEtag (\ s a -> s{_gqrrEtag = a})---- | The resource type of the response.-gqrrKind :: Lens' GetQueryResultsResponse Text-gqrrKind = lens _gqrrKind (\ s a -> s{_gqrrKind = a})---- | The schema of the results. Present only when the query completes--- successfully.-gqrrSchema :: Lens' GetQueryResultsResponse (Maybe TableSchema)-gqrrSchema- = lens _gqrrSchema (\ s a -> s{_gqrrSchema = a})---- | The total number of bytes processed for this query.-gqrrTotalBytesProcessed :: Lens' GetQueryResultsResponse (Maybe Int64)-gqrrTotalBytesProcessed- = lens _gqrrTotalBytesProcessed- (\ s a -> s{_gqrrTotalBytesProcessed = a})- . mapping _Coerce---- | An object with as many results as can be contained within the maximum--- permitted reply size. To get any additional rows, you can call--- GetQueryResults and specify the jobReference returned above. Present--- only when the query completes successfully.-gqrrRows :: Lens' GetQueryResultsResponse [TableRow]-gqrrRows- = lens _gqrrRows (\ s a -> s{_gqrrRows = a}) .- _Default- . _Coerce---- | A token used for paging results.-gqrrPageToken :: Lens' GetQueryResultsResponse (Maybe Text)-gqrrPageToken- = lens _gqrrPageToken- (\ s a -> s{_gqrrPageToken = a})---- | [Output-only, Experimental] The number of rows affected by a DML--- statement. Present only for DML statements INSERT, UPDATE or DELETE.-gqrrNumDmlAffectedRows :: Lens' GetQueryResultsResponse (Maybe Int64)-gqrrNumDmlAffectedRows- = lens _gqrrNumDmlAffectedRows- (\ s a -> s{_gqrrNumDmlAffectedRows = a})- . mapping _Coerce---- | The total number of rows in the complete query result set, which can be--- more than the number of rows in this single page of results. Present--- only when the query completes successfully.-gqrrTotalRows :: Lens' GetQueryResultsResponse (Maybe Word64)-gqrrTotalRows- = lens _gqrrTotalRows- (\ s a -> s{_gqrrTotalRows = a})- . mapping _Coerce---- | [Output-only] All errors and warnings encountered during the running of--- the job. Errors here do not necessarily mean that the job has completed--- or was unsuccessful.-gqrrErrors :: Lens' GetQueryResultsResponse [ErrorProto]-gqrrErrors- = lens _gqrrErrors (\ s a -> s{_gqrrErrors = a}) .- _Default- . _Coerce---- | Whether the query has completed or not. If rows or totalRows are--- present, this will always be true. If this is false, totalRows will not--- be available.-gqrrJobComplete :: Lens' GetQueryResultsResponse (Maybe Bool)-gqrrJobComplete- = lens _gqrrJobComplete- (\ s a -> s{_gqrrJobComplete = a})---- | Whether the query result was fetched from the query cache.-gqrrCacheHit :: Lens' GetQueryResultsResponse (Maybe Bool)-gqrrCacheHit- = lens _gqrrCacheHit (\ s a -> s{_gqrrCacheHit = a})--instance FromJSON GetQueryResultsResponse where- parseJSON- = withObject "GetQueryResultsResponse"- (\ o ->- GetQueryResultsResponse' <$>- (o .:? "jobReference") <*> (o .:? "etag") <*>- (o .:? "kind" .!= "bigquery#getQueryResultsResponse")- <*> (o .:? "schema")- <*> (o .:? "totalBytesProcessed")- <*> (o .:? "rows" .!= mempty)- <*> (o .:? "pageToken")- <*> (o .:? "numDmlAffectedRows")- <*> (o .:? "totalRows")- <*> (o .:? "errors" .!= mempty)- <*> (o .:? "jobComplete")- <*> (o .:? "cacheHit"))--instance ToJSON GetQueryResultsResponse where- toJSON GetQueryResultsResponse'{..}- = object- (catMaybes- [("jobReference" .=) <$> _gqrrJobReference,- ("etag" .=) <$> _gqrrEtag,- Just ("kind" .= _gqrrKind),- ("schema" .=) <$> _gqrrSchema,- ("totalBytesProcessed" .=) <$>- _gqrrTotalBytesProcessed,- ("rows" .=) <$> _gqrrRows,- ("pageToken" .=) <$> _gqrrPageToken,- ("numDmlAffectedRows" .=) <$>- _gqrrNumDmlAffectedRows,- ("totalRows" .=) <$> _gqrrTotalRows,- ("errors" .=) <$> _gqrrErrors,- ("jobComplete" .=) <$> _gqrrJobComplete,- ("cacheHit" .=) <$> _gqrrCacheHit])------- /See:/ 'dataSetList' smart constructor.-data DataSetList = DataSetList'- { _dslEtag :: !(Maybe Text)- , _dslNextPageToken :: !(Maybe Text)- , _dslKind :: !Text- , _dslDataSets :: !(Maybe [DataSetListDataSetsItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DataSetList' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dslEtag'------ * 'dslNextPageToken'------ * 'dslKind'------ * 'dslDataSets'-dataSetList- :: DataSetList-dataSetList =- DataSetList'- { _dslEtag = Nothing- , _dslNextPageToken = Nothing- , _dslKind = "bigquery#datasetList"- , _dslDataSets = Nothing- }---- | A hash value of the results page. You can use this property to determine--- if the page has changed since the last request.-dslEtag :: Lens' DataSetList (Maybe Text)-dslEtag = lens _dslEtag (\ s a -> s{_dslEtag = a})---- | A token that can be used to request the next results page. This property--- is omitted on the final results page.-dslNextPageToken :: Lens' DataSetList (Maybe Text)-dslNextPageToken- = lens _dslNextPageToken- (\ s a -> s{_dslNextPageToken = a})---- | The list type. This property always returns the value--- \"bigquery#datasetList\".-dslKind :: Lens' DataSetList Text-dslKind = lens _dslKind (\ s a -> s{_dslKind = a})---- | An array of the dataset resources in the project. Each resource contains--- basic information. For full information about a particular dataset--- resource, use the Datasets: get method. This property is omitted when--- there are no datasets in the project.-dslDataSets :: Lens' DataSetList [DataSetListDataSetsItem]-dslDataSets- = lens _dslDataSets (\ s a -> s{_dslDataSets = a}) .- _Default- . _Coerce--instance FromJSON DataSetList where- parseJSON- = withObject "DataSetList"- (\ o ->- DataSetList' <$>- (o .:? "etag") <*> (o .:? "nextPageToken") <*>- (o .:? "kind" .!= "bigquery#datasetList")- <*> (o .:? "datasets" .!= mempty))--instance ToJSON DataSetList where- toJSON DataSetList'{..}- = object- (catMaybes- [("etag" .=) <$> _dslEtag,- ("nextPageToken" .=) <$> _dslNextPageToken,- Just ("kind" .= _dslKind),- ("datasets" .=) <$> _dslDataSets])------- /See:/ 'queryRequest' smart constructor.-data QueryRequest = QueryRequest'- { _qrUseQueryCache :: !Bool- , _qrPreserveNulls :: !(Maybe Bool)- , _qrKind :: !Text- , _qrQueryParameters :: !(Maybe [QueryParameter])- , _qrQuery :: !(Maybe Text)- , _qrParameterMode :: !(Maybe Text)- , _qrTimeoutMs :: !(Maybe (Textual Word32))- , _qrUseLegacySQL :: !Bool- , _qrDryRun :: !(Maybe Bool)- , _qrMaxResults :: !(Maybe (Textual Word32))- , _qrDefaultDataSet :: !(Maybe DataSetReference)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'QueryRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'qrUseQueryCache'------ * 'qrPreserveNulls'------ * 'qrKind'------ * 'qrQueryParameters'------ * 'qrQuery'------ * 'qrParameterMode'------ * 'qrTimeoutMs'------ * 'qrUseLegacySQL'------ * 'qrDryRun'------ * 'qrMaxResults'------ * 'qrDefaultDataSet'-queryRequest- :: QueryRequest-queryRequest =- QueryRequest'- { _qrUseQueryCache = True- , _qrPreserveNulls = Nothing- , _qrKind = "bigquery#queryRequest"- , _qrQueryParameters = Nothing- , _qrQuery = Nothing- , _qrParameterMode = Nothing- , _qrTimeoutMs = Nothing- , _qrUseLegacySQL = True- , _qrDryRun = Nothing- , _qrMaxResults = Nothing- , _qrDefaultDataSet = Nothing- }---- | [Optional] Whether to look for the result in the query cache. The query--- cache is a best-effort cache that will be flushed whenever tables in the--- query are modified. The default value is true.-qrUseQueryCache :: Lens' QueryRequest Bool-qrUseQueryCache- = lens _qrUseQueryCache- (\ s a -> s{_qrUseQueryCache = a})---- | [Deprecated] This property is deprecated.-qrPreserveNulls :: Lens' QueryRequest (Maybe Bool)-qrPreserveNulls- = lens _qrPreserveNulls- (\ s a -> s{_qrPreserveNulls = a})---- | The resource type of the request.-qrKind :: Lens' QueryRequest Text-qrKind = lens _qrKind (\ s a -> s{_qrKind = a})---- | [Experimental] Query parameters for Standard SQL queries.-qrQueryParameters :: Lens' QueryRequest [QueryParameter]-qrQueryParameters- = lens _qrQueryParameters- (\ s a -> s{_qrQueryParameters = a})- . _Default- . _Coerce---- | [Required] A query string, following the BigQuery query syntax, of the--- query to execute. Example: \"SELECT count(f1) FROM--- [myProjectId:myDatasetId.myTableId]\".-qrQuery :: Lens' QueryRequest (Maybe Text)-qrQuery = lens _qrQuery (\ s a -> s{_qrQuery = a})---- | [Experimental] Standard SQL only. Set to POSITIONAL to use positional--- (?) query parameters or to NAMED to use named (\'myparam) query--- parameters in this query.-qrParameterMode :: Lens' QueryRequest (Maybe Text)-qrParameterMode- = lens _qrParameterMode- (\ s a -> s{_qrParameterMode = a})---- | [Optional] How long to wait for the query to complete, in milliseconds,--- before the request times out and returns. Note that this is only a--- timeout for the request, not the query. If the query takes longer to run--- than the timeout value, the call returns without any results and with--- the \'jobComplete\' flag set to false. You can call GetQueryResults() to--- wait for the query to complete and read the results. The default value--- is 10000 milliseconds (10 seconds).-qrTimeoutMs :: Lens' QueryRequest (Maybe Word32)-qrTimeoutMs- = lens _qrTimeoutMs (\ s a -> s{_qrTimeoutMs = a}) .- mapping _Coerce---- | Specifies whether to use BigQuery\'s legacy SQL dialect for this query.--- The default value is true. If set to false, the query will use--- BigQuery\'s standard SQL:--- https:\/\/cloud.google.com\/bigquery\/sql-reference\/ When useLegacySql--- is set to false, the values of allowLargeResults and flattenResults are--- ignored; query will be run as if allowLargeResults is true and--- flattenResults is false.-qrUseLegacySQL :: Lens' QueryRequest Bool-qrUseLegacySQL- = lens _qrUseLegacySQL- (\ s a -> s{_qrUseLegacySQL = a})---- | [Optional] If set to true, BigQuery doesn\'t run the job. Instead, if--- the query is valid, BigQuery returns statistics about the job such as--- how many bytes would be processed. If the query is invalid, an error--- returns. The default value is false.-qrDryRun :: Lens' QueryRequest (Maybe Bool)-qrDryRun = lens _qrDryRun (\ s a -> s{_qrDryRun = a})---- | [Optional] The maximum number of rows of data to return per page of--- results. Setting this flag to a small value such as 1000 and then paging--- through results might improve reliability when the query result set is--- large. In addition to this limit, responses are also limited to 10 MB.--- By default, there is no maximum row count, and only the byte limit--- applies.-qrMaxResults :: Lens' QueryRequest (Maybe Word32)-qrMaxResults- = lens _qrMaxResults (\ s a -> s{_qrMaxResults = a})- . mapping _Coerce---- | [Optional] Specifies the default datasetId and projectId to assume for--- any unqualified table names in the query. If not set, all table names in--- the query string must be qualified in the format \'datasetId.tableId\'.-qrDefaultDataSet :: Lens' QueryRequest (Maybe DataSetReference)-qrDefaultDataSet- = lens _qrDefaultDataSet- (\ s a -> s{_qrDefaultDataSet = a})--instance FromJSON QueryRequest where- parseJSON- = withObject "QueryRequest"- (\ o ->- QueryRequest' <$>- (o .:? "useQueryCache" .!= True) <*>- (o .:? "preserveNulls")- <*> (o .:? "kind" .!= "bigquery#queryRequest")- <*> (o .:? "queryParameters" .!= mempty)- <*> (o .:? "query")- <*> (o .:? "parameterMode")- <*> (o .:? "timeoutMs")- <*> (o .:? "useLegacySql" .!= True)- <*> (o .:? "dryRun")- <*> (o .:? "maxResults")- <*> (o .:? "defaultDataset"))--instance ToJSON QueryRequest where- toJSON QueryRequest'{..}- = object- (catMaybes- [Just ("useQueryCache" .= _qrUseQueryCache),- ("preserveNulls" .=) <$> _qrPreserveNulls,- Just ("kind" .= _qrKind),- ("queryParameters" .=) <$> _qrQueryParameters,- ("query" .=) <$> _qrQuery,- ("parameterMode" .=) <$> _qrParameterMode,- ("timeoutMs" .=) <$> _qrTimeoutMs,- Just ("useLegacySql" .= _qrUseLegacySQL),- ("dryRun" .=) <$> _qrDryRun,- ("maxResults" .=) <$> _qrMaxResults,- ("defaultDataset" .=) <$> _qrDefaultDataSet])------- /See:/ 'queryParameter' smart constructor.-data QueryParameter = QueryParameter'- { _qpParameterValue :: !(Maybe QueryParameterValue)- , _qpParameterType :: !(Maybe QueryParameterType)- , _qpName :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'QueryParameter' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'qpParameterValue'------ * 'qpParameterType'------ * 'qpName'-queryParameter- :: QueryParameter-queryParameter =- QueryParameter'- { _qpParameterValue = Nothing- , _qpParameterType = Nothing- , _qpName = Nothing- }---- | [Required] The value of this parameter.-qpParameterValue :: Lens' QueryParameter (Maybe QueryParameterValue)-qpParameterValue- = lens _qpParameterValue- (\ s a -> s{_qpParameterValue = a})---- | [Required] The type of this parameter.-qpParameterType :: Lens' QueryParameter (Maybe QueryParameterType)-qpParameterType- = lens _qpParameterType- (\ s a -> s{_qpParameterType = a})---- | [Optional] If unset, this is a positional parameter. Otherwise, should--- be unique within a query.-qpName :: Lens' QueryParameter (Maybe Text)-qpName = lens _qpName (\ s a -> s{_qpName = a})--instance FromJSON QueryParameter where- parseJSON- = withObject "QueryParameter"- (\ o ->- QueryParameter' <$>- (o .:? "parameterValue") <*> (o .:? "parameterType")- <*> (o .:? "name"))--instance ToJSON QueryParameter where- toJSON QueryParameter'{..}- = object- (catMaybes- [("parameterValue" .=) <$> _qpParameterValue,- ("parameterType" .=) <$> _qpParameterType,- ("name" .=) <$> _qpName])------- /See:/ 'jobStatistics4' smart constructor.-newtype JobStatistics4 = JobStatistics4'- { _jsDestinationURIFileCounts :: Maybe [Textual Int64]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobStatistics4' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jsDestinationURIFileCounts'-jobStatistics4- :: JobStatistics4-jobStatistics4 =- JobStatistics4'- { _jsDestinationURIFileCounts = Nothing- }---- | [Output-only] Number of files per destination URI or URI pattern--- specified in the extract configuration. These values will be in the same--- order as the URIs specified in the \'destinationUris\' field.-jsDestinationURIFileCounts :: Lens' JobStatistics4 [Int64]-jsDestinationURIFileCounts- = lens _jsDestinationURIFileCounts- (\ s a -> s{_jsDestinationURIFileCounts = a})- . _Default- . _Coerce--instance FromJSON JobStatistics4 where- parseJSON- = withObject "JobStatistics4"- (\ o ->- JobStatistics4' <$>- (o .:? "destinationUriFileCounts" .!= mempty))--instance ToJSON JobStatistics4 where- toJSON JobStatistics4'{..}- = object- (catMaybes- [("destinationUriFileCounts" .=) <$>- _jsDestinationURIFileCounts])------- /See:/ 'projectReference' smart constructor.-newtype ProjectReference = ProjectReference'- { _prProjectId :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProjectReference' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'prProjectId'-projectReference- :: ProjectReference-projectReference =- ProjectReference'- { _prProjectId = Nothing- }---- | [Required] ID of the project. Can be either the numeric ID or the--- assigned ID of the project.-prProjectId :: Lens' ProjectReference (Maybe Text)-prProjectId- = lens _prProjectId (\ s a -> s{_prProjectId = a})--instance FromJSON ProjectReference where- parseJSON- = withObject "ProjectReference"- (\ o -> ProjectReference' <$> (o .:? "projectId"))--instance ToJSON ProjectReference where- toJSON ProjectReference'{..}- = object- (catMaybes [("projectId" .=) <$> _prProjectId])------- /See:/ 'explainQueryStage' smart constructor.-data ExplainQueryStage = ExplainQueryStage'- { _eqsStatus :: !(Maybe Text)- , _eqsWaitRatioMax :: !(Maybe (Textual Double))- , _eqsRecordsWritten :: !(Maybe (Textual Int64))- , _eqsSteps :: !(Maybe [ExplainQueryStep])- , _eqsWriteRatioAvg :: !(Maybe (Textual Double))- , _eqsRecordsRead :: !(Maybe (Textual Int64))- , _eqsComputeRatioAvg :: !(Maybe (Textual Double))- , _eqsName :: !(Maybe Text)- , _eqsReadRatioMax :: !(Maybe (Textual Double))- , _eqsWaitRatioAvg :: !(Maybe (Textual Double))- , _eqsId :: !(Maybe (Textual Int64))- , _eqsComputeRatioMax :: !(Maybe (Textual Double))- , _eqsWriteRatioMax :: !(Maybe (Textual Double))- , _eqsReadRatioAvg :: !(Maybe (Textual Double))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ExplainQueryStage' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'eqsStatus'------ * 'eqsWaitRatioMax'------ * 'eqsRecordsWritten'------ * 'eqsSteps'------ * 'eqsWriteRatioAvg'------ * 'eqsRecordsRead'------ * 'eqsComputeRatioAvg'------ * 'eqsName'------ * 'eqsReadRatioMax'------ * 'eqsWaitRatioAvg'------ * 'eqsId'------ * 'eqsComputeRatioMax'------ * 'eqsWriteRatioMax'------ * 'eqsReadRatioAvg'-explainQueryStage- :: ExplainQueryStage-explainQueryStage =- ExplainQueryStage'- { _eqsStatus = Nothing- , _eqsWaitRatioMax = Nothing- , _eqsRecordsWritten = Nothing- , _eqsSteps = Nothing- , _eqsWriteRatioAvg = Nothing- , _eqsRecordsRead = Nothing- , _eqsComputeRatioAvg = Nothing- , _eqsName = Nothing- , _eqsReadRatioMax = Nothing- , _eqsWaitRatioAvg = Nothing- , _eqsId = Nothing- , _eqsComputeRatioMax = Nothing- , _eqsWriteRatioMax = Nothing- , _eqsReadRatioAvg = Nothing- }---- | Current status for the stage.-eqsStatus :: Lens' ExplainQueryStage (Maybe Text)-eqsStatus- = lens _eqsStatus (\ s a -> s{_eqsStatus = a})---- | Relative amount of time the slowest shard spent waiting to be scheduled.-eqsWaitRatioMax :: Lens' ExplainQueryStage (Maybe Double)-eqsWaitRatioMax- = lens _eqsWaitRatioMax- (\ s a -> s{_eqsWaitRatioMax = a})- . mapping _Coerce---- | Number of records written by the stage.-eqsRecordsWritten :: Lens' ExplainQueryStage (Maybe Int64)-eqsRecordsWritten- = lens _eqsRecordsWritten- (\ s a -> s{_eqsRecordsWritten = a})- . mapping _Coerce---- | List of operations within the stage in dependency order (approximately--- chronological).-eqsSteps :: Lens' ExplainQueryStage [ExplainQueryStep]-eqsSteps- = lens _eqsSteps (\ s a -> s{_eqsSteps = a}) .- _Default- . _Coerce---- | Relative amount of time the average shard spent on writing output.-eqsWriteRatioAvg :: Lens' ExplainQueryStage (Maybe Double)-eqsWriteRatioAvg- = lens _eqsWriteRatioAvg- (\ s a -> s{_eqsWriteRatioAvg = a})- . mapping _Coerce---- | Number of records read into the stage.-eqsRecordsRead :: Lens' ExplainQueryStage (Maybe Int64)-eqsRecordsRead- = lens _eqsRecordsRead- (\ s a -> s{_eqsRecordsRead = a})- . mapping _Coerce---- | Relative amount of time the average shard spent on CPU-bound tasks.-eqsComputeRatioAvg :: Lens' ExplainQueryStage (Maybe Double)-eqsComputeRatioAvg- = lens _eqsComputeRatioAvg- (\ s a -> s{_eqsComputeRatioAvg = a})- . mapping _Coerce---- | Human-readable name for stage.-eqsName :: Lens' ExplainQueryStage (Maybe Text)-eqsName = lens _eqsName (\ s a -> s{_eqsName = a})---- | Relative amount of time the slowest shard spent reading input.-eqsReadRatioMax :: Lens' ExplainQueryStage (Maybe Double)-eqsReadRatioMax- = lens _eqsReadRatioMax- (\ s a -> s{_eqsReadRatioMax = a})- . mapping _Coerce---- | Relative amount of time the average shard spent waiting to be scheduled.-eqsWaitRatioAvg :: Lens' ExplainQueryStage (Maybe Double)-eqsWaitRatioAvg- = lens _eqsWaitRatioAvg- (\ s a -> s{_eqsWaitRatioAvg = a})- . mapping _Coerce---- | Unique ID for stage within plan.-eqsId :: Lens' ExplainQueryStage (Maybe Int64)-eqsId- = lens _eqsId (\ s a -> s{_eqsId = a}) .- mapping _Coerce---- | Relative amount of time the slowest shard spent on CPU-bound tasks.-eqsComputeRatioMax :: Lens' ExplainQueryStage (Maybe Double)-eqsComputeRatioMax- = lens _eqsComputeRatioMax- (\ s a -> s{_eqsComputeRatioMax = a})- . mapping _Coerce---- | Relative amount of time the slowest shard spent on writing output.-eqsWriteRatioMax :: Lens' ExplainQueryStage (Maybe Double)-eqsWriteRatioMax- = lens _eqsWriteRatioMax- (\ s a -> s{_eqsWriteRatioMax = a})- . mapping _Coerce---- | Relative amount of time the average shard spent reading input.-eqsReadRatioAvg :: Lens' ExplainQueryStage (Maybe Double)-eqsReadRatioAvg- = lens _eqsReadRatioAvg- (\ s a -> s{_eqsReadRatioAvg = a})- . mapping _Coerce--instance FromJSON ExplainQueryStage where- parseJSON- = withObject "ExplainQueryStage"- (\ o ->- ExplainQueryStage' <$>- (o .:? "status") <*> (o .:? "waitRatioMax") <*>- (o .:? "recordsWritten")- <*> (o .:? "steps" .!= mempty)- <*> (o .:? "writeRatioAvg")- <*> (o .:? "recordsRead")- <*> (o .:? "computeRatioAvg")- <*> (o .:? "name")- <*> (o .:? "readRatioMax")- <*> (o .:? "waitRatioAvg")- <*> (o .:? "id")- <*> (o .:? "computeRatioMax")- <*> (o .:? "writeRatioMax")- <*> (o .:? "readRatioAvg"))--instance ToJSON ExplainQueryStage where- toJSON ExplainQueryStage'{..}- = object- (catMaybes- [("status" .=) <$> _eqsStatus,- ("waitRatioMax" .=) <$> _eqsWaitRatioMax,- ("recordsWritten" .=) <$> _eqsRecordsWritten,- ("steps" .=) <$> _eqsSteps,- ("writeRatioAvg" .=) <$> _eqsWriteRatioAvg,- ("recordsRead" .=) <$> _eqsRecordsRead,- ("computeRatioAvg" .=) <$> _eqsComputeRatioAvg,- ("name" .=) <$> _eqsName,- ("readRatioMax" .=) <$> _eqsReadRatioMax,- ("waitRatioAvg" .=) <$> _eqsWaitRatioAvg,- ("id" .=) <$> _eqsId,- ("computeRatioMax" .=) <$> _eqsComputeRatioMax,- ("writeRatioMax" .=) <$> _eqsWriteRatioMax,- ("readRatioAvg" .=) <$> _eqsReadRatioAvg])------- /See:/ 'jobConfigurationLoad' smart constructor.-data JobConfigurationLoad = JobConfigurationLoad'- { _jclSkipLeadingRows :: !(Maybe (Textual Int32))- , _jclProjectionFields :: !(Maybe [Text])- , _jclDestinationTable :: !(Maybe TableReference)- , _jclWriteDisPosition :: !(Maybe Text)- , _jclAllowJaggedRows :: !(Maybe Bool)- , _jclSchemaInline :: !(Maybe Text)- , _jclIgnoreUnknownValues :: !(Maybe Bool)- , _jclSchemaUpdateOptions :: !(Maybe [Text])- , _jclCreateDisPosition :: !(Maybe Text)- , _jclSchemaInlineFormat :: !(Maybe Text)- , _jclAllowQuotedNewlines :: !(Maybe Bool)- , _jclSourceFormat :: !(Maybe Text)- , _jclSchema :: !(Maybe TableSchema)- , _jclQuote :: !(Maybe Text)- , _jclMaxBadRecords :: !(Maybe (Textual Int32))- , _jclAutodetect :: !(Maybe Bool)- , _jclSourceURIs :: !(Maybe [Text])- , _jclEncoding :: !(Maybe Text)- , _jclFieldDelimiter :: !(Maybe Text)- , _jclNullMarker :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobConfigurationLoad' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jclSkipLeadingRows'------ * 'jclProjectionFields'------ * 'jclDestinationTable'------ * 'jclWriteDisPosition'------ * 'jclAllowJaggedRows'------ * 'jclSchemaInline'------ * 'jclIgnoreUnknownValues'------ * 'jclSchemaUpdateOptions'------ * 'jclCreateDisPosition'------ * 'jclSchemaInlineFormat'------ * 'jclAllowQuotedNewlines'------ * 'jclSourceFormat'------ * 'jclSchema'------ * 'jclQuote'------ * 'jclMaxBadRecords'------ * 'jclAutodetect'------ * 'jclSourceURIs'------ * 'jclEncoding'------ * 'jclFieldDelimiter'------ * 'jclNullMarker'-jobConfigurationLoad- :: JobConfigurationLoad-jobConfigurationLoad =- JobConfigurationLoad'- { _jclSkipLeadingRows = Nothing- , _jclProjectionFields = Nothing- , _jclDestinationTable = Nothing- , _jclWriteDisPosition = Nothing- , _jclAllowJaggedRows = Nothing- , _jclSchemaInline = Nothing- , _jclIgnoreUnknownValues = Nothing- , _jclSchemaUpdateOptions = Nothing- , _jclCreateDisPosition = Nothing- , _jclSchemaInlineFormat = Nothing- , _jclAllowQuotedNewlines = Nothing- , _jclSourceFormat = Nothing- , _jclSchema = Nothing- , _jclQuote = Nothing- , _jclMaxBadRecords = Nothing- , _jclAutodetect = Nothing- , _jclSourceURIs = Nothing- , _jclEncoding = Nothing- , _jclFieldDelimiter = Nothing- , _jclNullMarker = Nothing- }---- | [Optional] The number of rows at the top of a CSV file that BigQuery--- will skip when loading the data. The default value is 0. This property--- is useful if you have header rows in the file that should be skipped.-jclSkipLeadingRows :: Lens' JobConfigurationLoad (Maybe Int32)-jclSkipLeadingRows- = lens _jclSkipLeadingRows- (\ s a -> s{_jclSkipLeadingRows = a})- . mapping _Coerce---- | [Experimental] If sourceFormat is set to \"DATASTORE_BACKUP\", indicates--- which entity properties to load into BigQuery from a Cloud Datastore--- backup. Property names are case sensitive and must be top-level--- properties. If no properties are specified, BigQuery loads all--- properties. If any named property isn\'t found in the Cloud Datastore--- backup, an invalid error is returned in the job result.-jclProjectionFields :: Lens' JobConfigurationLoad [Text]-jclProjectionFields- = lens _jclProjectionFields- (\ s a -> s{_jclProjectionFields = a})- . _Default- . _Coerce---- | [Required] The destination table to load the data into.-jclDestinationTable :: Lens' JobConfigurationLoad (Maybe TableReference)-jclDestinationTable- = lens _jclDestinationTable- (\ s a -> s{_jclDestinationTable = a})---- | [Optional] Specifies the action that occurs if the destination table--- already exists. The following values are supported: WRITE_TRUNCATE: If--- the table already exists, BigQuery overwrites the table data.--- WRITE_APPEND: If the table already exists, BigQuery appends the data to--- the table. WRITE_EMPTY: If the table already exists and contains data, a--- \'duplicate\' error is returned in the job result. The default value is--- WRITE_APPEND. Each action is atomic and only occurs if BigQuery is able--- to complete the job successfully. Creation, truncation and append--- actions occur as one atomic update upon job completion.-jclWriteDisPosition :: Lens' JobConfigurationLoad (Maybe Text)-jclWriteDisPosition- = lens _jclWriteDisPosition- (\ s a -> s{_jclWriteDisPosition = a})---- | [Optional] Accept rows that are missing trailing optional columns. The--- missing values are treated as nulls. If false, records with missing--- trailing columns are treated as bad records, and if there are too many--- bad records, an invalid error is returned in the job result. The default--- value is false. Only applicable to CSV, ignored for other formats.-jclAllowJaggedRows :: Lens' JobConfigurationLoad (Maybe Bool)-jclAllowJaggedRows- = lens _jclAllowJaggedRows- (\ s a -> s{_jclAllowJaggedRows = a})---- | [Deprecated] The inline schema. For CSV schemas, specify as--- \"Field1:Type1[,Field2:Type2]*\". For example, \"foo:STRING,--- bar:INTEGER, baz:FLOAT\".-jclSchemaInline :: Lens' JobConfigurationLoad (Maybe Text)-jclSchemaInline- = lens _jclSchemaInline- (\ s a -> s{_jclSchemaInline = a})---- | [Optional] Indicates if BigQuery should allow extra values that are not--- represented in the table schema. If true, the extra values are ignored.--- If false, records with extra columns are treated as bad records, and if--- there are too many bad records, an invalid error is returned in the job--- result. The default value is false. The sourceFormat property determines--- what BigQuery treats as an extra value: CSV: Trailing columns JSON:--- Named values that don\'t match any column names-jclIgnoreUnknownValues :: Lens' JobConfigurationLoad (Maybe Bool)-jclIgnoreUnknownValues- = lens _jclIgnoreUnknownValues- (\ s a -> s{_jclIgnoreUnknownValues = a})---- | [Experimental] Allows the schema of the desitination table to be updated--- as a side effect of the load job. Schema update options are supported in--- two cases: when writeDisposition is WRITE_APPEND; when writeDisposition--- is WRITE_TRUNCATE and the destination table is a partition of a table,--- specified by partition decorators. For normal tables, WRITE_TRUNCATE--- will always overwrite the schema. One or more of the following values--- are specified: ALLOW_FIELD_ADDITION: allow adding a nullable field to--- the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field in--- the original schema to nullable.-jclSchemaUpdateOptions :: Lens' JobConfigurationLoad [Text]-jclSchemaUpdateOptions- = lens _jclSchemaUpdateOptions- (\ s a -> s{_jclSchemaUpdateOptions = a})- . _Default- . _Coerce---- | [Optional] Specifies whether the job is allowed to create new tables.--- The following values are supported: CREATE_IF_NEEDED: If the table does--- not exist, BigQuery creates the table. CREATE_NEVER: The table must--- already exist. If it does not, a \'notFound\' error is returned in the--- job result. The default value is CREATE_IF_NEEDED. Creation, truncation--- and append actions occur as one atomic update upon job completion.-jclCreateDisPosition :: Lens' JobConfigurationLoad (Maybe Text)-jclCreateDisPosition- = lens _jclCreateDisPosition- (\ s a -> s{_jclCreateDisPosition = a})---- | [Deprecated] The format of the schemaInline property.-jclSchemaInlineFormat :: Lens' JobConfigurationLoad (Maybe Text)-jclSchemaInlineFormat- = lens _jclSchemaInlineFormat- (\ s a -> s{_jclSchemaInlineFormat = a})---- | Indicates if BigQuery should allow quoted data sections that contain--- newline characters in a CSV file. The default value is false.-jclAllowQuotedNewlines :: Lens' JobConfigurationLoad (Maybe Bool)-jclAllowQuotedNewlines- = lens _jclAllowQuotedNewlines- (\ s a -> s{_jclAllowQuotedNewlines = a})---- | [Optional] The format of the data files. For CSV files, specify \"CSV\".--- For datastore backups, specify \"DATASTORE_BACKUP\". For--- newline-delimited JSON, specify \"NEWLINE_DELIMITED_JSON\". For Avro,--- specify \"AVRO\". The default value is CSV.-jclSourceFormat :: Lens' JobConfigurationLoad (Maybe Text)-jclSourceFormat- = lens _jclSourceFormat- (\ s a -> s{_jclSourceFormat = a})---- | [Optional] The schema for the destination table. The schema can be--- omitted if the destination table already exists, or if you\'re loading--- data from Google Cloud Datastore.-jclSchema :: Lens' JobConfigurationLoad (Maybe TableSchema)-jclSchema- = lens _jclSchema (\ s a -> s{_jclSchema = a})---- | [Optional] The value that is used to quote data sections in a CSV file.--- BigQuery converts the string to ISO-8859-1 encoding, and then uses the--- first byte of the encoded string to split the data in its raw, binary--- state. The default value is a double-quote (\'\"\'). If your data does--- not contain quoted sections, set the property value to an empty string.--- If your data contains quoted newline characters, you must also set the--- allowQuotedNewlines property to true.-jclQuote :: Lens' JobConfigurationLoad (Maybe Text)-jclQuote = lens _jclQuote (\ s a -> s{_jclQuote = a})---- | [Optional] The maximum number of bad records that BigQuery can ignore--- when running the job. If the number of bad records exceeds this value,--- an invalid error is returned in the job result. The default value is 0,--- which requires that all records are valid.-jclMaxBadRecords :: Lens' JobConfigurationLoad (Maybe Int32)-jclMaxBadRecords- = lens _jclMaxBadRecords- (\ s a -> s{_jclMaxBadRecords = a})- . mapping _Coerce---- | [Experimental] Indicates if we should automatically infer the options--- and schema for CSV and JSON sources.-jclAutodetect :: Lens' JobConfigurationLoad (Maybe Bool)-jclAutodetect- = lens _jclAutodetect- (\ s a -> s{_jclAutodetect = a})---- | [Required] The fully-qualified URIs that point to your data in Google--- Cloud Storage. Each URI can contain one \'*\' wildcard character and it--- must come after the \'bucket\' name.-jclSourceURIs :: Lens' JobConfigurationLoad [Text]-jclSourceURIs- = lens _jclSourceURIs- (\ s a -> s{_jclSourceURIs = a})- . _Default- . _Coerce---- | [Optional] The character encoding of the data. The supported values are--- UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery decodes the--- data after the raw, binary data has been split using the values of the--- quote and fieldDelimiter properties.-jclEncoding :: Lens' JobConfigurationLoad (Maybe Text)-jclEncoding- = lens _jclEncoding (\ s a -> s{_jclEncoding = a})---- | [Optional] The separator for fields in a CSV file. The separator can be--- any ISO-8859-1 single-byte character. To use a character in the range--- 128-255, you must encode the character as UTF8. BigQuery converts the--- string to ISO-8859-1 encoding, and then uses the first byte of the--- encoded string to split the data in its raw, binary state. BigQuery also--- supports the escape sequence \"\\t\" to specify a tab separator. The--- default value is a comma (\',\').-jclFieldDelimiter :: Lens' JobConfigurationLoad (Maybe Text)-jclFieldDelimiter- = lens _jclFieldDelimiter- (\ s a -> s{_jclFieldDelimiter = a})---- | [Optional] Specifies a string that represents a null value in a CSV--- file. For example, if you specify \"\\N\", BigQuery interprets \"\\N\"--- as a null value when loading a CSV file. The default value is the empty--- string. If you set this property to a custom value, BigQuery still--- interprets the empty string as a null value for all data types except--- for STRING and BYTE. For STRING and BYTE columns, BigQuery interprets--- the empty string as an empty value.-jclNullMarker :: Lens' JobConfigurationLoad (Maybe Text)-jclNullMarker- = lens _jclNullMarker- (\ s a -> s{_jclNullMarker = a})--instance FromJSON JobConfigurationLoad where- parseJSON- = withObject "JobConfigurationLoad"- (\ o ->- JobConfigurationLoad' <$>- (o .:? "skipLeadingRows") <*>- (o .:? "projectionFields" .!= mempty)- <*> (o .:? "destinationTable")- <*> (o .:? "writeDisposition")- <*> (o .:? "allowJaggedRows")- <*> (o .:? "schemaInline")- <*> (o .:? "ignoreUnknownValues")- <*> (o .:? "schemaUpdateOptions" .!= mempty)- <*> (o .:? "createDisposition")- <*> (o .:? "schemaInlineFormat")- <*> (o .:? "allowQuotedNewlines")- <*> (o .:? "sourceFormat")- <*> (o .:? "schema")- <*> (o .:? "quote")- <*> (o .:? "maxBadRecords")- <*> (o .:? "autodetect")- <*> (o .:? "sourceUris" .!= mempty)- <*> (o .:? "encoding")- <*> (o .:? "fieldDelimiter")- <*> (o .:? "nullMarker"))--instance ToJSON JobConfigurationLoad where- toJSON JobConfigurationLoad'{..}- = object- (catMaybes- [("skipLeadingRows" .=) <$> _jclSkipLeadingRows,- ("projectionFields" .=) <$> _jclProjectionFields,- ("destinationTable" .=) <$> _jclDestinationTable,- ("writeDisposition" .=) <$> _jclWriteDisPosition,- ("allowJaggedRows" .=) <$> _jclAllowJaggedRows,- ("schemaInline" .=) <$> _jclSchemaInline,- ("ignoreUnknownValues" .=) <$>- _jclIgnoreUnknownValues,- ("schemaUpdateOptions" .=) <$>- _jclSchemaUpdateOptions,- ("createDisposition" .=) <$> _jclCreateDisPosition,- ("schemaInlineFormat" .=) <$> _jclSchemaInlineFormat,- ("allowQuotedNewlines" .=) <$>- _jclAllowQuotedNewlines,- ("sourceFormat" .=) <$> _jclSourceFormat,- ("schema" .=) <$> _jclSchema,- ("quote" .=) <$> _jclQuote,- ("maxBadRecords" .=) <$> _jclMaxBadRecords,- ("autodetect" .=) <$> _jclAutodetect,- ("sourceUris" .=) <$> _jclSourceURIs,- ("encoding" .=) <$> _jclEncoding,- ("fieldDelimiter" .=) <$> _jclFieldDelimiter,- ("nullMarker" .=) <$> _jclNullMarker])------- /See:/ 'dataSetReference' smart constructor.-data DataSetReference = DataSetReference'- { _dsrDataSetId :: !(Maybe Text)- , _dsrProjectId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DataSetReference' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dsrDataSetId'------ * 'dsrProjectId'-dataSetReference- :: DataSetReference-dataSetReference =- DataSetReference'- { _dsrDataSetId = Nothing- , _dsrProjectId = Nothing- }---- | [Required] A unique ID for this dataset, without the project name. The--- ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores--- (_). The maximum length is 1,024 characters.-dsrDataSetId :: Lens' DataSetReference (Maybe Text)-dsrDataSetId- = lens _dsrDataSetId (\ s a -> s{_dsrDataSetId = a})---- | [Optional] The ID of the project containing this dataset.-dsrProjectId :: Lens' DataSetReference (Maybe Text)-dsrProjectId- = lens _dsrProjectId (\ s a -> s{_dsrProjectId = a})--instance FromJSON DataSetReference where- parseJSON- = withObject "DataSetReference"- (\ o ->- DataSetReference' <$>- (o .:? "datasetId") <*> (o .:? "projectId"))--instance ToJSON DataSetReference where- toJSON DataSetReference'{..}- = object- (catMaybes- [("datasetId" .=) <$> _dsrDataSetId,- ("projectId" .=) <$> _dsrProjectId])------- /See:/ 'tableDataInsertAllRequest' smart constructor.-data TableDataInsertAllRequest = TableDataInsertAllRequest'- { _tdiarKind :: !Text- , _tdiarIgnoreUnknownValues :: !(Maybe Bool)- , _tdiarRows :: !(Maybe [TableDataInsertAllRequestRowsItem])- , _tdiarTemplateSuffix :: !(Maybe Text)- , _tdiarSkipInvalidRows :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableDataInsertAllRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tdiarKind'------ * 'tdiarIgnoreUnknownValues'------ * 'tdiarRows'------ * 'tdiarTemplateSuffix'------ * 'tdiarSkipInvalidRows'-tableDataInsertAllRequest- :: TableDataInsertAllRequest-tableDataInsertAllRequest =- TableDataInsertAllRequest'- { _tdiarKind = "bigquery#tableDataInsertAllRequest"- , _tdiarIgnoreUnknownValues = Nothing- , _tdiarRows = Nothing- , _tdiarTemplateSuffix = Nothing- , _tdiarSkipInvalidRows = Nothing- }---- | The resource type of the response.-tdiarKind :: Lens' TableDataInsertAllRequest Text-tdiarKind- = lens _tdiarKind (\ s a -> s{_tdiarKind = a})---- | [Optional] Accept rows that contain values that do not match the schema.--- The unknown values are ignored. Default is false, which treats unknown--- values as errors.-tdiarIgnoreUnknownValues :: Lens' TableDataInsertAllRequest (Maybe Bool)-tdiarIgnoreUnknownValues- = lens _tdiarIgnoreUnknownValues- (\ s a -> s{_tdiarIgnoreUnknownValues = a})---- | The rows to insert.-tdiarRows :: Lens' TableDataInsertAllRequest [TableDataInsertAllRequestRowsItem]-tdiarRows- = lens _tdiarRows (\ s a -> s{_tdiarRows = a}) .- _Default- . _Coerce---- | [Experimental] If specified, treats the destination table as a base--- template, and inserts the rows into an instance table named--- \"{destination}{templateSuffix}\". BigQuery will manage creation of the--- instance table, using the schema of the base template table. See--- https:\/\/cloud.google.com\/bigquery\/streaming-data-into-bigquery#template-tables--- for considerations when working with templates tables.-tdiarTemplateSuffix :: Lens' TableDataInsertAllRequest (Maybe Text)-tdiarTemplateSuffix- = lens _tdiarTemplateSuffix- (\ s a -> s{_tdiarTemplateSuffix = a})---- | [Optional] Insert all valid rows of a request, even if invalid rows--- exist. The default value is false, which causes the entire request to--- fail if any invalid rows exist.-tdiarSkipInvalidRows :: Lens' TableDataInsertAllRequest (Maybe Bool)-tdiarSkipInvalidRows- = lens _tdiarSkipInvalidRows- (\ s a -> s{_tdiarSkipInvalidRows = a})--instance FromJSON TableDataInsertAllRequest where- parseJSON- = withObject "TableDataInsertAllRequest"- (\ o ->- TableDataInsertAllRequest' <$>- (o .:? "kind" .!=- "bigquery#tableDataInsertAllRequest")- <*> (o .:? "ignoreUnknownValues")- <*> (o .:? "rows" .!= mempty)- <*> (o .:? "templateSuffix")- <*> (o .:? "skipInvalidRows"))--instance ToJSON TableDataInsertAllRequest where- toJSON TableDataInsertAllRequest'{..}- = object- (catMaybes- [Just ("kind" .= _tdiarKind),- ("ignoreUnknownValues" .=) <$>- _tdiarIgnoreUnknownValues,- ("rows" .=) <$> _tdiarRows,- ("templateSuffix" .=) <$> _tdiarTemplateSuffix,- ("skipInvalidRows" .=) <$> _tdiarSkipInvalidRows])------- /See:/ 'projectListProjectsItem' smart constructor.-data ProjectListProjectsItem = ProjectListProjectsItem'- { _plpiFriendlyName :: !(Maybe Text)- , _plpiKind :: !Text- , _plpiProjectReference :: !(Maybe ProjectReference)- , _plpiId :: !(Maybe Text)- , _plpiNumericId :: !(Maybe (Textual Word64))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ProjectListProjectsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'plpiFriendlyName'------ * 'plpiKind'------ * 'plpiProjectReference'------ * 'plpiId'------ * 'plpiNumericId'-projectListProjectsItem- :: ProjectListProjectsItem-projectListProjectsItem =- ProjectListProjectsItem'- { _plpiFriendlyName = Nothing- , _plpiKind = "bigquery#project"- , _plpiProjectReference = Nothing- , _plpiId = Nothing- , _plpiNumericId = Nothing- }---- | A descriptive name for this project.-plpiFriendlyName :: Lens' ProjectListProjectsItem (Maybe Text)-plpiFriendlyName- = lens _plpiFriendlyName- (\ s a -> s{_plpiFriendlyName = a})---- | The resource type.-plpiKind :: Lens' ProjectListProjectsItem Text-plpiKind = lens _plpiKind (\ s a -> s{_plpiKind = a})---- | A unique reference to this project.-plpiProjectReference :: Lens' ProjectListProjectsItem (Maybe ProjectReference)-plpiProjectReference- = lens _plpiProjectReference- (\ s a -> s{_plpiProjectReference = a})---- | An opaque ID of this project.-plpiId :: Lens' ProjectListProjectsItem (Maybe Text)-plpiId = lens _plpiId (\ s a -> s{_plpiId = a})---- | The numeric ID of this project.-plpiNumericId :: Lens' ProjectListProjectsItem (Maybe Word64)-plpiNumericId- = lens _plpiNumericId- (\ s a -> s{_plpiNumericId = a})- . mapping _Coerce--instance FromJSON ProjectListProjectsItem where- parseJSON- = withObject "ProjectListProjectsItem"- (\ o ->- ProjectListProjectsItem' <$>- (o .:? "friendlyName") <*>- (o .:? "kind" .!= "bigquery#project")- <*> (o .:? "projectReference")- <*> (o .:? "id")- <*> (o .:? "numericId"))--instance ToJSON ProjectListProjectsItem where- toJSON ProjectListProjectsItem'{..}- = object- (catMaybes- [("friendlyName" .=) <$> _plpiFriendlyName,- Just ("kind" .= _plpiKind),- ("projectReference" .=) <$> _plpiProjectReference,- ("id" .=) <$> _plpiId,- ("numericId" .=) <$> _plpiNumericId])------- /See:/ 'bigtableColumn' smart constructor.-data BigtableColumn = BigtableColumn'- { _bcQualifierEncoded :: !(Maybe Bytes)- , _bcFieldName :: !(Maybe Text)- , _bcQualifierString :: !(Maybe Text)- , _bcOnlyReadLatest :: !(Maybe Bool)- , _bcType :: !(Maybe Text)- , _bcEncoding :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'BigtableColumn' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'bcQualifierEncoded'------ * 'bcFieldName'------ * 'bcQualifierString'------ * 'bcOnlyReadLatest'------ * 'bcType'------ * 'bcEncoding'-bigtableColumn- :: BigtableColumn-bigtableColumn =- BigtableColumn'- { _bcQualifierEncoded = Nothing- , _bcFieldName = Nothing- , _bcQualifierString = Nothing- , _bcOnlyReadLatest = Nothing- , _bcType = Nothing- , _bcEncoding = Nothing- }---- | [Required] Qualifier of the column. Columns in the parent column family--- that has this exact qualifier are exposed as . field. If the qualifier--- is valid UTF-8 string, it can be specified in the qualifier_string--- field. Otherwise, a base-64 encoded value must be set to--- qualifier_encoded. The column field name is the same as the column--- qualifier. However, if the qualifier is not a valid BigQuery field--- identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid identifier--- must be provided as field_name.-bcQualifierEncoded :: Lens' BigtableColumn (Maybe ByteString)-bcQualifierEncoded- = lens _bcQualifierEncoded- (\ s a -> s{_bcQualifierEncoded = a})- . mapping _Bytes---- | [Optional] If the qualifier is not a valid BigQuery field identifier--- i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid identifier must be--- provided as the column field name and is used as field name in queries.-bcFieldName :: Lens' BigtableColumn (Maybe Text)-bcFieldName- = lens _bcFieldName (\ s a -> s{_bcFieldName = a})--bcQualifierString :: Lens' BigtableColumn (Maybe Text)-bcQualifierString- = lens _bcQualifierString- (\ s a -> s{_bcQualifierString = a})---- | [Optional] If this is set, only the latest version of value in this--- column are exposed. \'onlyReadLatest\' can also be set at the column--- family level. However, the setting at this level takes precedence if--- \'onlyReadLatest\' is set at both levels.-bcOnlyReadLatest :: Lens' BigtableColumn (Maybe Bool)-bcOnlyReadLatest- = lens _bcOnlyReadLatest- (\ s a -> s{_bcOnlyReadLatest = a})---- | [Optional] The type to convert the value in cells of this column. The--- values are expected to be encoded using HBase Bytes.toBytes function--- when using the BINARY encoding value. Following BigQuery types are--- allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default--- type is BYTES. \'type\' can also be set at the column family level.--- However, the setting at this level takes precedence if \'type\' is set--- at both levels.-bcType :: Lens' BigtableColumn (Maybe Text)-bcType = lens _bcType (\ s a -> s{_bcType = a})---- | [Optional] The encoding of the values when the type is not STRING.--- Acceptable encoding values are: TEXT - indicates values are alphanumeric--- text strings. BINARY - indicates values are encoded using HBase--- Bytes.toBytes family of functions. \'encoding\' can also be set at the--- column family level. However, the setting at this level takes precedence--- if \'encoding\' is set at both levels.-bcEncoding :: Lens' BigtableColumn (Maybe Text)-bcEncoding- = lens _bcEncoding (\ s a -> s{_bcEncoding = a})--instance FromJSON BigtableColumn where- parseJSON- = withObject "BigtableColumn"- (\ o ->- BigtableColumn' <$>- (o .:? "qualifierEncoded") <*> (o .:? "fieldName")- <*> (o .:? "qualifierString")- <*> (o .:? "onlyReadLatest")- <*> (o .:? "type")- <*> (o .:? "encoding"))--instance ToJSON BigtableColumn where- toJSON BigtableColumn'{..}- = object- (catMaybes- [("qualifierEncoded" .=) <$> _bcQualifierEncoded,- ("fieldName" .=) <$> _bcFieldName,- ("qualifierString" .=) <$> _bcQualifierString,- ("onlyReadLatest" .=) <$> _bcOnlyReadLatest,- ("type" .=) <$> _bcType,- ("encoding" .=) <$> _bcEncoding])------- /See:/ 'streamingbuffer' smart constructor.-data Streamingbuffer = Streamingbuffer'- { _sEstimatedBytes :: !(Maybe (Textual Word64))- , _sOldestEntryTime :: !(Maybe (Textual Word64))- , _sEstimatedRows :: !(Maybe (Textual Word64))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Streamingbuffer' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sEstimatedBytes'------ * 'sOldestEntryTime'------ * 'sEstimatedRows'-streamingbuffer- :: Streamingbuffer-streamingbuffer =- Streamingbuffer'- { _sEstimatedBytes = Nothing- , _sOldestEntryTime = Nothing- , _sEstimatedRows = Nothing- }---- | [Output-only] A lower-bound estimate of the number of bytes currently in--- the streaming buffer.-sEstimatedBytes :: Lens' Streamingbuffer (Maybe Word64)-sEstimatedBytes- = lens _sEstimatedBytes- (\ s a -> s{_sEstimatedBytes = a})- . mapping _Coerce---- | [Output-only] Contains the timestamp of the oldest entry in the--- streaming buffer, in milliseconds since the epoch, if the streaming--- buffer is available.-sOldestEntryTime :: Lens' Streamingbuffer (Maybe Word64)-sOldestEntryTime- = lens _sOldestEntryTime- (\ s a -> s{_sOldestEntryTime = a})- . mapping _Coerce---- | [Output-only] A lower-bound estimate of the number of rows currently in--- the streaming buffer.-sEstimatedRows :: Lens' Streamingbuffer (Maybe Word64)-sEstimatedRows- = lens _sEstimatedRows- (\ s a -> s{_sEstimatedRows = a})- . mapping _Coerce--instance FromJSON Streamingbuffer where- parseJSON- = withObject "Streamingbuffer"- (\ o ->- Streamingbuffer' <$>- (o .:? "estimatedBytes") <*>- (o .:? "oldestEntryTime")- <*> (o .:? "estimatedRows"))--instance ToJSON Streamingbuffer where- toJSON Streamingbuffer'{..}- = object- (catMaybes- [("estimatedBytes" .=) <$> _sEstimatedBytes,- ("oldestEntryTime" .=) <$> _sOldestEntryTime,- ("estimatedRows" .=) <$> _sEstimatedRows])------- /See:/ 'tableRow' smart constructor.-newtype TableRow = TableRow'- { _trF :: Maybe [TableCell]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableRow' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'trF'-tableRow- :: TableRow-tableRow =- TableRow'- { _trF = Nothing- }---- | Represents a single row in the result set, consisting of one or more--- fields.-trF :: Lens' TableRow [TableCell]-trF- = lens _trF (\ s a -> s{_trF = a}) . _Default .- _Coerce--instance FromJSON TableRow where- parseJSON- = withObject "TableRow"- (\ o -> TableRow' <$> (o .:? "f" .!= mempty))--instance ToJSON TableRow where- toJSON TableRow'{..}- = object (catMaybes [("f" .=) <$> _trF])------- /See:/ 'jobListJobsItem' smart constructor.-data JobListJobsItem = JobListJobsItem'- { _jljiJobReference :: !(Maybe JobReference)- , _jljiStatus :: !(Maybe JobStatus)- , _jljiState :: !(Maybe Text)- , _jljiUserEmail :: !(Maybe Text)- , _jljiKind :: !Text- , _jljiErrorResult :: !(Maybe ErrorProto)- , _jljiId :: !(Maybe Text)- , _jljiStatistics :: !(Maybe JobStatistics)- , _jljiConfiguration :: !(Maybe JobConfiguration)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobListJobsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jljiJobReference'------ * 'jljiStatus'------ * 'jljiState'------ * 'jljiUserEmail'------ * 'jljiKind'------ * 'jljiErrorResult'------ * 'jljiId'------ * 'jljiStatistics'------ * 'jljiConfiguration'-jobListJobsItem- :: JobListJobsItem-jobListJobsItem =- JobListJobsItem'- { _jljiJobReference = Nothing- , _jljiStatus = Nothing- , _jljiState = Nothing- , _jljiUserEmail = Nothing- , _jljiKind = "bigquery#job"- , _jljiErrorResult = Nothing- , _jljiId = Nothing- , _jljiStatistics = Nothing- , _jljiConfiguration = Nothing- }---- | Job reference uniquely identifying the job.-jljiJobReference :: Lens' JobListJobsItem (Maybe JobReference)-jljiJobReference- = lens _jljiJobReference- (\ s a -> s{_jljiJobReference = a})---- | [Full-projection-only] Describes the state of the job.-jljiStatus :: Lens' JobListJobsItem (Maybe JobStatus)-jljiStatus- = lens _jljiStatus (\ s a -> s{_jljiStatus = a})---- | Running state of the job. When the state is DONE, errorResult can be--- checked to determine whether the job succeeded or failed.-jljiState :: Lens' JobListJobsItem (Maybe Text)-jljiState- = lens _jljiState (\ s a -> s{_jljiState = a})---- | [Full-projection-only] Email address of the user who ran the job.-jljiUserEmail :: Lens' JobListJobsItem (Maybe Text)-jljiUserEmail- = lens _jljiUserEmail- (\ s a -> s{_jljiUserEmail = a})---- | The resource type.-jljiKind :: Lens' JobListJobsItem Text-jljiKind = lens _jljiKind (\ s a -> s{_jljiKind = a})---- | A result object that will be present only if the job has failed.-jljiErrorResult :: Lens' JobListJobsItem (Maybe ErrorProto)-jljiErrorResult- = lens _jljiErrorResult- (\ s a -> s{_jljiErrorResult = a})---- | Unique opaque ID of the job.-jljiId :: Lens' JobListJobsItem (Maybe Text)-jljiId = lens _jljiId (\ s a -> s{_jljiId = a})---- | [Output-only] Information about the job, including starting time and--- ending time of the job.-jljiStatistics :: Lens' JobListJobsItem (Maybe JobStatistics)-jljiStatistics- = lens _jljiStatistics- (\ s a -> s{_jljiStatistics = a})---- | [Full-projection-only] Specifies the job configuration.-jljiConfiguration :: Lens' JobListJobsItem (Maybe JobConfiguration)-jljiConfiguration- = lens _jljiConfiguration- (\ s a -> s{_jljiConfiguration = a})--instance FromJSON JobListJobsItem where- parseJSON- = withObject "JobListJobsItem"- (\ o ->- JobListJobsItem' <$>- (o .:? "jobReference") <*> (o .:? "status") <*>- (o .:? "state")- <*> (o .:? "user_email")- <*> (o .:? "kind" .!= "bigquery#job")- <*> (o .:? "errorResult")- <*> (o .:? "id")- <*> (o .:? "statistics")- <*> (o .:? "configuration"))--instance ToJSON JobListJobsItem where- toJSON JobListJobsItem'{..}- = object- (catMaybes- [("jobReference" .=) <$> _jljiJobReference,- ("status" .=) <$> _jljiStatus,- ("state" .=) <$> _jljiState,- ("user_email" .=) <$> _jljiUserEmail,- Just ("kind" .= _jljiKind),- ("errorResult" .=) <$> _jljiErrorResult,- ("id" .=) <$> _jljiId,- ("statistics" .=) <$> _jljiStatistics,- ("configuration" .=) <$> _jljiConfiguration])------- /See:/ 'timePartitioning' smart constructor.-data TimePartitioning = TimePartitioning'- { _tpExpirationMs :: !(Maybe (Textual Int64))- , _tpType :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TimePartitioning' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tpExpirationMs'------ * 'tpType'-timePartitioning- :: TimePartitioning-timePartitioning =- TimePartitioning'- { _tpExpirationMs = Nothing- , _tpType = Nothing- }---- | [Optional] Number of milliseconds for which to keep the storage for a--- partition.-tpExpirationMs :: Lens' TimePartitioning (Maybe Int64)-tpExpirationMs- = lens _tpExpirationMs- (\ s a -> s{_tpExpirationMs = a})- . mapping _Coerce---- | [Required] The only type supported is DAY, which will generate one--- partition per day based on data loading time.-tpType :: Lens' TimePartitioning (Maybe Text)-tpType = lens _tpType (\ s a -> s{_tpType = a})--instance FromJSON TimePartitioning where- parseJSON- = withObject "TimePartitioning"- (\ o ->- TimePartitioning' <$>- (o .:? "expirationMs") <*> (o .:? "type"))--instance ToJSON TimePartitioning where- toJSON TimePartitioning'{..}- = object- (catMaybes- [("expirationMs" .=) <$> _tpExpirationMs,- ("type" .=) <$> _tpType])---- | [Optional] The struct field values, in order of the struct type\'s--- declaration.------ /See:/ 'queryParameterValueStructValues' smart constructor.-newtype QueryParameterValueStructValues = QueryParameterValueStructValues'- { _qpvsvAddtional :: HashMap Text QueryParameterValue- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'QueryParameterValueStructValues' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'qpvsvAddtional'-queryParameterValueStructValues- :: HashMap Text QueryParameterValue -- ^ 'qpvsvAddtional'- -> QueryParameterValueStructValues-queryParameterValueStructValues pQpvsvAddtional_ =- QueryParameterValueStructValues'- { _qpvsvAddtional = _Coerce # pQpvsvAddtional_- }--qpvsvAddtional :: Lens' QueryParameterValueStructValues (HashMap Text QueryParameterValue)-qpvsvAddtional- = lens _qpvsvAddtional- (\ s a -> s{_qpvsvAddtional = a})- . _Coerce--instance FromJSON QueryParameterValueStructValues- where- parseJSON- = withObject "QueryParameterValueStructValues"- (\ o ->- QueryParameterValueStructValues' <$>- (parseJSONObject o))--instance ToJSON QueryParameterValueStructValues where- toJSON = toJSON . _qpvsvAddtional---- | [Experimental] The labels associated with this dataset. You can use--- these to organize and group your datasets. You can set this property--- when inserting or updating a dataset. See Labeling Datasets for more--- information.------ /See:/ 'dataSetLabels' smart constructor.-newtype DataSetLabels = DataSetLabels'- { _dslAddtional :: HashMap Text Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DataSetLabels' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dslAddtional'-dataSetLabels- :: HashMap Text Text -- ^ 'dslAddtional'- -> DataSetLabels-dataSetLabels pDslAddtional_ =- DataSetLabels'- { _dslAddtional = _Coerce # pDslAddtional_- }--dslAddtional :: Lens' DataSetLabels (HashMap Text Text)-dslAddtional- = lens _dslAddtional (\ s a -> s{_dslAddtional = a})- . _Coerce--instance FromJSON DataSetLabels where- parseJSON- = withObject "DataSetLabels"- (\ o -> DataSetLabels' <$> (parseJSONObject o))--instance ToJSON DataSetLabels where- toJSON = toJSON . _dslAddtional------- /See:/ 'jobConfiguration' smart constructor.-data JobConfiguration = JobConfiguration'- { _jcCopy :: !(Maybe JobConfigurationTableCopy)- , _jcLoad :: !(Maybe JobConfigurationLoad)- , _jcQuery :: !(Maybe JobConfigurationQuery)- , _jcExtract :: !(Maybe JobConfigurationExtract)- , _jcLabels :: !(Maybe JobConfigurationLabels)- , _jcDryRun :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobConfiguration' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jcCopy'------ * 'jcLoad'------ * 'jcQuery'------ * 'jcExtract'------ * 'jcLabels'------ * 'jcDryRun'-jobConfiguration- :: JobConfiguration-jobConfiguration =- JobConfiguration'- { _jcCopy = Nothing- , _jcLoad = Nothing- , _jcQuery = Nothing- , _jcExtract = Nothing- , _jcLabels = Nothing- , _jcDryRun = Nothing- }---- | [Pick one] Copies a table.-jcCopy :: Lens' JobConfiguration (Maybe JobConfigurationTableCopy)-jcCopy = lens _jcCopy (\ s a -> s{_jcCopy = a})---- | [Pick one] Configures a load job.-jcLoad :: Lens' JobConfiguration (Maybe JobConfigurationLoad)-jcLoad = lens _jcLoad (\ s a -> s{_jcLoad = a})---- | [Pick one] Configures a query job.-jcQuery :: Lens' JobConfiguration (Maybe JobConfigurationQuery)-jcQuery = lens _jcQuery (\ s a -> s{_jcQuery = a})---- | [Pick one] Configures an extract job.-jcExtract :: Lens' JobConfiguration (Maybe JobConfigurationExtract)-jcExtract- = lens _jcExtract (\ s a -> s{_jcExtract = a})---- | [Experimental] The labels associated with this job. You can use these to--- organize and group your jobs. Label keys and values can be no longer--- than 63 characters, can only contain letters, numeric characters,--- underscores and dashes. International characters are allowed. Label--- values are optional. Label keys must start with a letter and must be--- unique within a dataset. Both keys and values are additionally--- constrained to be \<= 128 bytes in size.-jcLabels :: Lens' JobConfiguration (Maybe JobConfigurationLabels)-jcLabels = lens _jcLabels (\ s a -> s{_jcLabels = a})---- | [Optional] If set, don\'t actually run this job. A valid query will--- return a mostly empty response with some processing statistics, while an--- invalid query will return the same error it would if it wasn\'t a dry--- run. Behavior of non-query jobs is undefined.-jcDryRun :: Lens' JobConfiguration (Maybe Bool)-jcDryRun = lens _jcDryRun (\ s a -> s{_jcDryRun = a})--instance FromJSON JobConfiguration where- parseJSON- = withObject "JobConfiguration"- (\ o ->- JobConfiguration' <$>- (o .:? "copy") <*> (o .:? "load") <*> (o .:? "query")- <*> (o .:? "extract")- <*> (o .:? "labels")- <*> (o .:? "dryRun"))--instance ToJSON JobConfiguration where- toJSON JobConfiguration'{..}- = object- (catMaybes- [("copy" .=) <$> _jcCopy, ("load" .=) <$> _jcLoad,- ("query" .=) <$> _jcQuery,- ("extract" .=) <$> _jcExtract,- ("labels" .=) <$> _jcLabels,- ("dryRun" .=) <$> _jcDryRun])------- /See:/ 'job' smart constructor.-data Job = Job'- { _jJobReference :: !(Maybe JobReference)- , _jStatus :: !(Maybe JobStatus)- , _jEtag :: !(Maybe Text)- , _jUserEmail :: !(Maybe Text)- , _jKind :: !Text- , _jSelfLink :: !(Maybe Text)- , _jId :: !(Maybe Text)- , _jStatistics :: !(Maybe JobStatistics)- , _jConfiguration :: !(Maybe JobConfiguration)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Job' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jJobReference'------ * 'jStatus'------ * 'jEtag'------ * 'jUserEmail'------ * 'jKind'------ * 'jSelfLink'------ * 'jId'------ * 'jStatistics'------ * 'jConfiguration'-job- :: Job-job =- Job'- { _jJobReference = Nothing- , _jStatus = Nothing- , _jEtag = Nothing- , _jUserEmail = Nothing- , _jKind = "bigquery#job"- , _jSelfLink = Nothing- , _jId = Nothing- , _jStatistics = Nothing- , _jConfiguration = Nothing- }---- | [Optional] Reference describing the unique-per-user name of the job.-jJobReference :: Lens' Job (Maybe JobReference)-jJobReference- = lens _jJobReference- (\ s a -> s{_jJobReference = a})---- | [Output-only] The status of this job. Examine this value when polling an--- asynchronous job to see if the job is complete.-jStatus :: Lens' Job (Maybe JobStatus)-jStatus = lens _jStatus (\ s a -> s{_jStatus = a})---- | [Output-only] A hash of this resource.-jEtag :: Lens' Job (Maybe Text)-jEtag = lens _jEtag (\ s a -> s{_jEtag = a})---- | [Output-only] Email address of the user who ran the job.-jUserEmail :: Lens' Job (Maybe Text)-jUserEmail- = lens _jUserEmail (\ s a -> s{_jUserEmail = a})---- | [Output-only] The type of the resource.-jKind :: Lens' Job Text-jKind = lens _jKind (\ s a -> s{_jKind = a})---- | [Output-only] A URL that can be used to access this resource again.-jSelfLink :: Lens' Job (Maybe Text)-jSelfLink- = lens _jSelfLink (\ s a -> s{_jSelfLink = a})---- | [Output-only] Opaque ID field of the job-jId :: Lens' Job (Maybe Text)-jId = lens _jId (\ s a -> s{_jId = a})---- | [Output-only] Information about the job, including starting time and--- ending time of the job.-jStatistics :: Lens' Job (Maybe JobStatistics)-jStatistics- = lens _jStatistics (\ s a -> s{_jStatistics = a})---- | [Required] Describes the job configuration.-jConfiguration :: Lens' Job (Maybe JobConfiguration)-jConfiguration- = lens _jConfiguration- (\ s a -> s{_jConfiguration = a})--instance FromJSON Job where- parseJSON- = withObject "Job"- (\ o ->- Job' <$>- (o .:? "jobReference") <*> (o .:? "status") <*>- (o .:? "etag")- <*> (o .:? "user_email")- <*> (o .:? "kind" .!= "bigquery#job")- <*> (o .:? "selfLink")- <*> (o .:? "id")- <*> (o .:? "statistics")- <*> (o .:? "configuration"))--instance ToJSON Job where- toJSON Job'{..}- = object- (catMaybes- [("jobReference" .=) <$> _jJobReference,- ("status" .=) <$> _jStatus, ("etag" .=) <$> _jEtag,- ("user_email" .=) <$> _jUserEmail,- Just ("kind" .= _jKind),- ("selfLink" .=) <$> _jSelfLink, ("id" .=) <$> _jId,- ("statistics" .=) <$> _jStatistics,- ("configuration" .=) <$> _jConfiguration])------- /See:/ 'tableDataInsertAllResponseInsertErrorsItem' smart constructor.-data TableDataInsertAllResponseInsertErrorsItem = TableDataInsertAllResponseInsertErrorsItem'- { _tdiarieiErrors :: !(Maybe [ErrorProto])- , _tdiarieiIndex :: !(Maybe (Textual Word32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableDataInsertAllResponseInsertErrorsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tdiarieiErrors'------ * 'tdiarieiIndex'-tableDataInsertAllResponseInsertErrorsItem- :: TableDataInsertAllResponseInsertErrorsItem-tableDataInsertAllResponseInsertErrorsItem =- TableDataInsertAllResponseInsertErrorsItem'- { _tdiarieiErrors = Nothing- , _tdiarieiIndex = Nothing- }---- | Error information for the row indicated by the index property.-tdiarieiErrors :: Lens' TableDataInsertAllResponseInsertErrorsItem [ErrorProto]-tdiarieiErrors- = lens _tdiarieiErrors- (\ s a -> s{_tdiarieiErrors = a})- . _Default- . _Coerce---- | The index of the row that error applies to.-tdiarieiIndex :: Lens' TableDataInsertAllResponseInsertErrorsItem (Maybe Word32)-tdiarieiIndex- = lens _tdiarieiIndex- (\ s a -> s{_tdiarieiIndex = a})- . mapping _Coerce--instance FromJSON- TableDataInsertAllResponseInsertErrorsItem where- parseJSON- = withObject- "TableDataInsertAllResponseInsertErrorsItem"- (\ o ->- TableDataInsertAllResponseInsertErrorsItem' <$>- (o .:? "errors" .!= mempty) <*> (o .:? "index"))--instance ToJSON- TableDataInsertAllResponseInsertErrorsItem where- toJSON- TableDataInsertAllResponseInsertErrorsItem'{..}- = object- (catMaybes- [("errors" .=) <$> _tdiarieiErrors,- ("index" .=) <$> _tdiarieiIndex])------- /See:/ 'jobConfigurationExtract' smart constructor.-data JobConfigurationExtract = JobConfigurationExtract'- { _jceDestinationFormat :: !(Maybe Text)- , _jceSourceTable :: !(Maybe TableReference)- , _jcePrintHeader :: !Bool- , _jceCompression :: !(Maybe Text)- , _jceDestinationURIs :: !(Maybe [Text])- , _jceDestinationURI :: !(Maybe Text)- , _jceFieldDelimiter :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobConfigurationExtract' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jceDestinationFormat'------ * 'jceSourceTable'------ * 'jcePrintHeader'------ * 'jceCompression'------ * 'jceDestinationURIs'------ * 'jceDestinationURI'------ * 'jceFieldDelimiter'-jobConfigurationExtract- :: JobConfigurationExtract-jobConfigurationExtract =- JobConfigurationExtract'- { _jceDestinationFormat = Nothing- , _jceSourceTable = Nothing- , _jcePrintHeader = True- , _jceCompression = Nothing- , _jceDestinationURIs = Nothing- , _jceDestinationURI = Nothing- , _jceFieldDelimiter = Nothing- }---- | [Optional] The exported file format. Possible values include CSV,--- NEWLINE_DELIMITED_JSON and AVRO. The default value is CSV. Tables with--- nested or repeated fields cannot be exported as CSV.-jceDestinationFormat :: Lens' JobConfigurationExtract (Maybe Text)-jceDestinationFormat- = lens _jceDestinationFormat- (\ s a -> s{_jceDestinationFormat = a})---- | [Required] A reference to the table being exported.-jceSourceTable :: Lens' JobConfigurationExtract (Maybe TableReference)-jceSourceTable- = lens _jceSourceTable- (\ s a -> s{_jceSourceTable = a})---- | [Optional] Whether to print out a header row in the results. Default is--- true.-jcePrintHeader :: Lens' JobConfigurationExtract Bool-jcePrintHeader- = lens _jcePrintHeader- (\ s a -> s{_jcePrintHeader = a})---- | [Optional] The compression type to use for exported files. Possible--- values include GZIP and NONE. The default value is NONE.-jceCompression :: Lens' JobConfigurationExtract (Maybe Text)-jceCompression- = lens _jceCompression- (\ s a -> s{_jceCompression = a})---- | [Pick one] A list of fully-qualified Google Cloud Storage URIs where the--- extracted table should be written.-jceDestinationURIs :: Lens' JobConfigurationExtract [Text]-jceDestinationURIs- = lens _jceDestinationURIs- (\ s a -> s{_jceDestinationURIs = a})- . _Default- . _Coerce---- | [Pick one] DEPRECATED: Use destinationUris instead, passing only one URI--- as necessary. The fully-qualified Google Cloud Storage URI where the--- extracted table should be written.-jceDestinationURI :: Lens' JobConfigurationExtract (Maybe Text)-jceDestinationURI- = lens _jceDestinationURI- (\ s a -> s{_jceDestinationURI = a})---- | [Optional] Delimiter to use between fields in the exported data. Default--- is \',\'-jceFieldDelimiter :: Lens' JobConfigurationExtract (Maybe Text)-jceFieldDelimiter- = lens _jceFieldDelimiter- (\ s a -> s{_jceFieldDelimiter = a})--instance FromJSON JobConfigurationExtract where- parseJSON- = withObject "JobConfigurationExtract"- (\ o ->- JobConfigurationExtract' <$>- (o .:? "destinationFormat") <*> (o .:? "sourceTable")- <*> (o .:? "printHeader" .!= True)- <*> (o .:? "compression")- <*> (o .:? "destinationUris" .!= mempty)- <*> (o .:? "destinationUri")- <*> (o .:? "fieldDelimiter"))--instance ToJSON JobConfigurationExtract where- toJSON JobConfigurationExtract'{..}- = object- (catMaybes- [("destinationFormat" .=) <$> _jceDestinationFormat,- ("sourceTable" .=) <$> _jceSourceTable,- Just ("printHeader" .= _jcePrintHeader),- ("compression" .=) <$> _jceCompression,- ("destinationUris" .=) <$> _jceDestinationURIs,- ("destinationUri" .=) <$> _jceDestinationURI,- ("fieldDelimiter" .=) <$> _jceFieldDelimiter])------- /See:/ 'jobCancelResponse' smart constructor.-data JobCancelResponse = JobCancelResponse'- { _jcrKind :: !Text- , _jcrJob :: !(Maybe Job)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobCancelResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jcrKind'------ * 'jcrJob'-jobCancelResponse- :: JobCancelResponse-jobCancelResponse =- JobCancelResponse'- { _jcrKind = "bigquery#jobCancelResponse"- , _jcrJob = Nothing- }---- | The resource type of the response.-jcrKind :: Lens' JobCancelResponse Text-jcrKind = lens _jcrKind (\ s a -> s{_jcrKind = a})---- | The final state of the job.-jcrJob :: Lens' JobCancelResponse (Maybe Job)-jcrJob = lens _jcrJob (\ s a -> s{_jcrJob = a})--instance FromJSON JobCancelResponse where- parseJSON- = withObject "JobCancelResponse"- (\ o ->- JobCancelResponse' <$>- (o .:? "kind" .!= "bigquery#jobCancelResponse") <*>- (o .:? "job"))--instance ToJSON JobCancelResponse where- toJSON JobCancelResponse'{..}- = object- (catMaybes- [Just ("kind" .= _jcrKind), ("job" .=) <$> _jcrJob])---- | Represents a single JSON object.------ /See:/ 'jsonObject' smart constructor.-newtype JSONObject = JSONObject'- { _joAddtional :: HashMap Text JSONValue- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JSONObject' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'joAddtional'-jsonObject- :: HashMap Text JSONValue -- ^ 'joAddtional'- -> JSONObject-jsonObject pJoAddtional_ =- JSONObject'- { _joAddtional = _Coerce # pJoAddtional_- }--joAddtional :: Lens' JSONObject (HashMap Text JSONValue)-joAddtional- = lens _joAddtional (\ s a -> s{_joAddtional = a}) .- _Coerce--instance FromJSON JSONObject where- parseJSON- = withObject "JSONObject"- (\ o -> JSONObject' <$> (parseJSONObject o))--instance ToJSON JSONObject where- toJSON = toJSON . _joAddtional------- /See:/ 'jobConfigurationQuery' smart constructor.-data JobConfigurationQuery = JobConfigurationQuery'- { _jcqDestinationTable :: !(Maybe TableReference)- , _jcqWriteDisPosition :: !(Maybe Text)- , _jcqPriority :: !(Maybe Text)- , _jcqUseQueryCache :: !Bool- , _jcqPreserveNulls :: !(Maybe Bool)- , _jcqTableDefinitions :: !(Maybe JobConfigurationQueryTableDefinitions)- , _jcqQueryParameters :: !(Maybe [QueryParameter])- , _jcqSchemaUpdateOptions :: !(Maybe [Text])- , _jcqMaximumBytesBilled :: !(Maybe (Textual Int64))- , _jcqCreateDisPosition :: !(Maybe Text)- , _jcqUserDefinedFunctionResources :: !(Maybe [UserDefinedFunctionResource])- , _jcqAllowLargeResults :: !(Maybe Bool)- , _jcqMaximumBillingTier :: !(Textual Int32)- , _jcqQuery :: !(Maybe Text)- , _jcqFlattenResults :: !Bool- , _jcqParameterMode :: !(Maybe Text)- , _jcqUseLegacySQL :: !(Maybe Bool)- , _jcqDefaultDataSet :: !(Maybe DataSetReference)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobConfigurationQuery' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jcqDestinationTable'------ * 'jcqWriteDisPosition'------ * 'jcqPriority'------ * 'jcqUseQueryCache'------ * 'jcqPreserveNulls'------ * 'jcqTableDefinitions'------ * 'jcqQueryParameters'------ * 'jcqSchemaUpdateOptions'------ * 'jcqMaximumBytesBilled'------ * 'jcqCreateDisPosition'------ * 'jcqUserDefinedFunctionResources'------ * 'jcqAllowLargeResults'------ * 'jcqMaximumBillingTier'------ * 'jcqQuery'------ * 'jcqFlattenResults'------ * 'jcqParameterMode'------ * 'jcqUseLegacySQL'------ * 'jcqDefaultDataSet'-jobConfigurationQuery- :: JobConfigurationQuery-jobConfigurationQuery =- JobConfigurationQuery'- { _jcqDestinationTable = Nothing- , _jcqWriteDisPosition = Nothing- , _jcqPriority = Nothing- , _jcqUseQueryCache = True- , _jcqPreserveNulls = Nothing- , _jcqTableDefinitions = Nothing- , _jcqQueryParameters = Nothing- , _jcqSchemaUpdateOptions = Nothing- , _jcqMaximumBytesBilled = Nothing- , _jcqCreateDisPosition = Nothing- , _jcqUserDefinedFunctionResources = Nothing- , _jcqAllowLargeResults = Nothing- , _jcqMaximumBillingTier = 1- , _jcqQuery = Nothing- , _jcqFlattenResults = True- , _jcqParameterMode = Nothing- , _jcqUseLegacySQL = Nothing- , _jcqDefaultDataSet = Nothing- }---- | [Optional] Describes the table where the query results should be stored.--- If not present, a new table will be created to store the results.-jcqDestinationTable :: Lens' JobConfigurationQuery (Maybe TableReference)-jcqDestinationTable- = lens _jcqDestinationTable- (\ s a -> s{_jcqDestinationTable = a})---- | [Optional] Specifies the action that occurs if the destination table--- already exists. The following values are supported: WRITE_TRUNCATE: If--- the table already exists, BigQuery overwrites the table data.--- WRITE_APPEND: If the table already exists, BigQuery appends the data to--- the table. WRITE_EMPTY: If the table already exists and contains data, a--- \'duplicate\' error is returned in the job result. The default value is--- WRITE_EMPTY. Each action is atomic and only occurs if BigQuery is able--- to complete the job successfully. Creation, truncation and append--- actions occur as one atomic update upon job completion.-jcqWriteDisPosition :: Lens' JobConfigurationQuery (Maybe Text)-jcqWriteDisPosition- = lens _jcqWriteDisPosition- (\ s a -> s{_jcqWriteDisPosition = a})---- | [Optional] Specifies a priority for the query. Possible values include--- INTERACTIVE and BATCH. The default value is INTERACTIVE.-jcqPriority :: Lens' JobConfigurationQuery (Maybe Text)-jcqPriority- = lens _jcqPriority (\ s a -> s{_jcqPriority = a})---- | [Optional] Whether to look for the result in the query cache. The query--- cache is a best-effort cache that will be flushed whenever tables in the--- query are modified. Moreover, the query cache is only available when a--- query does not have a destination table specified. The default value is--- true.-jcqUseQueryCache :: Lens' JobConfigurationQuery Bool-jcqUseQueryCache- = lens _jcqUseQueryCache- (\ s a -> s{_jcqUseQueryCache = a})---- | [Deprecated] This property is deprecated.-jcqPreserveNulls :: Lens' JobConfigurationQuery (Maybe Bool)-jcqPreserveNulls- = lens _jcqPreserveNulls- (\ s a -> s{_jcqPreserveNulls = a})---- | [Optional] If querying an external data source outside of BigQuery,--- describes the data format, location and other properties of the data--- source. By defining these properties, the data source can then be--- queried as if it were a standard BigQuery table.-jcqTableDefinitions :: Lens' JobConfigurationQuery (Maybe JobConfigurationQueryTableDefinitions)-jcqTableDefinitions- = lens _jcqTableDefinitions- (\ s a -> s{_jcqTableDefinitions = a})---- | Query parameters for standard SQL queries.-jcqQueryParameters :: Lens' JobConfigurationQuery [QueryParameter]-jcqQueryParameters- = lens _jcqQueryParameters- (\ s a -> s{_jcqQueryParameters = a})- . _Default- . _Coerce---- | [Experimental] Allows the schema of the destination table to be updated--- as a side effect of the query job. Schema update options are supported--- in two cases: when writeDisposition is WRITE_APPEND; when--- writeDisposition is WRITE_TRUNCATE and the destination table is a--- partition of a table, specified by partition decorators. For normal--- tables, WRITE_TRUNCATE will always overwrite the schema. One or more of--- the following values are specified: ALLOW_FIELD_ADDITION: allow adding a--- nullable field to the schema. ALLOW_FIELD_RELAXATION: allow relaxing a--- required field in the original schema to nullable.-jcqSchemaUpdateOptions :: Lens' JobConfigurationQuery [Text]-jcqSchemaUpdateOptions- = lens _jcqSchemaUpdateOptions- (\ s a -> s{_jcqSchemaUpdateOptions = a})- . _Default- . _Coerce---- | [Optional] Limits the bytes billed for this job. Queries that will have--- bytes billed beyond this limit will fail (without incurring a charge).--- If unspecified, this will be set to your project default.-jcqMaximumBytesBilled :: Lens' JobConfigurationQuery (Maybe Int64)-jcqMaximumBytesBilled- = lens _jcqMaximumBytesBilled- (\ s a -> s{_jcqMaximumBytesBilled = a})- . mapping _Coerce---- | [Optional] Specifies whether the job is allowed to create new tables.--- The following values are supported: CREATE_IF_NEEDED: If the table does--- not exist, BigQuery creates the table. CREATE_NEVER: The table must--- already exist. If it does not, a \'notFound\' error is returned in the--- job result. The default value is CREATE_IF_NEEDED. Creation, truncation--- and append actions occur as one atomic update upon job completion.-jcqCreateDisPosition :: Lens' JobConfigurationQuery (Maybe Text)-jcqCreateDisPosition- = lens _jcqCreateDisPosition- (\ s a -> s{_jcqCreateDisPosition = a})---- | [Experimental] Describes user-defined function resources used in the--- query.-jcqUserDefinedFunctionResources :: Lens' JobConfigurationQuery [UserDefinedFunctionResource]-jcqUserDefinedFunctionResources- = lens _jcqUserDefinedFunctionResources- (\ s a -> s{_jcqUserDefinedFunctionResources = a})- . _Default- . _Coerce---- | If true, allows the query to produce arbitrarily large result tables at--- a slight cost in performance. Requires destinationTable to be set.-jcqAllowLargeResults :: Lens' JobConfigurationQuery (Maybe Bool)-jcqAllowLargeResults- = lens _jcqAllowLargeResults- (\ s a -> s{_jcqAllowLargeResults = a})---- | [Optional] Limits the billing tier for this job. Queries that have--- resource usage beyond this tier will fail (without incurring a charge).--- If unspecified, this will be set to your project default.-jcqMaximumBillingTier :: Lens' JobConfigurationQuery Int32-jcqMaximumBillingTier- = lens _jcqMaximumBillingTier- (\ s a -> s{_jcqMaximumBillingTier = a})- . _Coerce---- | [Required] BigQuery SQL query to execute.-jcqQuery :: Lens' JobConfigurationQuery (Maybe Text)-jcqQuery = lens _jcqQuery (\ s a -> s{_jcqQuery = a})---- | [Optional] Flattens all nested and repeated fields in the query results.--- The default value is true. allowLargeResults must be true if this is set--- to false.-jcqFlattenResults :: Lens' JobConfigurationQuery Bool-jcqFlattenResults- = lens _jcqFlattenResults- (\ s a -> s{_jcqFlattenResults = a})---- | [Experimental] Standard SQL only. Set to POSITIONAL to use positional--- (?) query parameters or to NAMED to use named (\'myparam) query--- parameters in this query.-jcqParameterMode :: Lens' JobConfigurationQuery (Maybe Text)-jcqParameterMode- = lens _jcqParameterMode- (\ s a -> s{_jcqParameterMode = a})---- | Specifies whether to use BigQuery\'s legacy SQL dialect for this query.--- The default value is true. If set to false, the query will use--- BigQuery\'s standard SQL:--- https:\/\/cloud.google.com\/bigquery\/sql-reference\/ When useLegacySql--- is set to false, the values of allowLargeResults and flattenResults are--- ignored; query will be run as if allowLargeResults is true and--- flattenResults is false.-jcqUseLegacySQL :: Lens' JobConfigurationQuery (Maybe Bool)-jcqUseLegacySQL- = lens _jcqUseLegacySQL- (\ s a -> s{_jcqUseLegacySQL = a})---- | [Optional] Specifies the default dataset to use for unqualified table--- names in the query.-jcqDefaultDataSet :: Lens' JobConfigurationQuery (Maybe DataSetReference)-jcqDefaultDataSet- = lens _jcqDefaultDataSet- (\ s a -> s{_jcqDefaultDataSet = a})--instance FromJSON JobConfigurationQuery where- parseJSON- = withObject "JobConfigurationQuery"- (\ o ->- JobConfigurationQuery' <$>- (o .:? "destinationTable") <*>- (o .:? "writeDisposition")- <*> (o .:? "priority")- <*> (o .:? "useQueryCache" .!= True)- <*> (o .:? "preserveNulls")- <*> (o .:? "tableDefinitions")- <*> (o .:? "queryParameters" .!= mempty)- <*> (o .:? "schemaUpdateOptions" .!= mempty)- <*> (o .:? "maximumBytesBilled")- <*> (o .:? "createDisposition")- <*> (o .:? "userDefinedFunctionResources" .!= mempty)- <*> (o .:? "allowLargeResults")- <*> (o .:? "maximumBillingTier" .!= 1)- <*> (o .:? "query")- <*> (o .:? "flattenResults" .!= True)- <*> (o .:? "parameterMode")- <*> (o .:? "useLegacySql")- <*> (o .:? "defaultDataset"))--instance ToJSON JobConfigurationQuery where- toJSON JobConfigurationQuery'{..}- = object- (catMaybes- [("destinationTable" .=) <$> _jcqDestinationTable,- ("writeDisposition" .=) <$> _jcqWriteDisPosition,- ("priority" .=) <$> _jcqPriority,- Just ("useQueryCache" .= _jcqUseQueryCache),- ("preserveNulls" .=) <$> _jcqPreserveNulls,- ("tableDefinitions" .=) <$> _jcqTableDefinitions,- ("queryParameters" .=) <$> _jcqQueryParameters,- ("schemaUpdateOptions" .=) <$>- _jcqSchemaUpdateOptions,- ("maximumBytesBilled" .=) <$> _jcqMaximumBytesBilled,- ("createDisposition" .=) <$> _jcqCreateDisPosition,- ("userDefinedFunctionResources" .=) <$>- _jcqUserDefinedFunctionResources,- ("allowLargeResults" .=) <$> _jcqAllowLargeResults,- Just- ("maximumBillingTier" .= _jcqMaximumBillingTier),- ("query" .=) <$> _jcqQuery,- Just ("flattenResults" .= _jcqFlattenResults),- ("parameterMode" .=) <$> _jcqParameterMode,- ("useLegacySql" .=) <$> _jcqUseLegacySQL,- ("defaultDataset" .=) <$> _jcqDefaultDataSet])------- /See:/ 'googleSheetsOptions' smart constructor.-newtype GoogleSheetsOptions = GoogleSheetsOptions'- { _gsoSkipLeadingRows :: Maybe (Textual Int64)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleSheetsOptions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gsoSkipLeadingRows'-googleSheetsOptions- :: GoogleSheetsOptions-googleSheetsOptions =- GoogleSheetsOptions'- { _gsoSkipLeadingRows = Nothing- }---- | [Optional] The number of rows at the top of a sheet that BigQuery will--- skip when reading the data. The default value is 0. This property is--- useful if you have header rows that should be skipped. When autodetect--- is on, behavior is the following: * skipLeadingRows unspecified ---- Autodetect tries to detect headers in the first row. If they are not--- detected, the row is read as data. Otherwise data is read starting from--- the second row. * skipLeadingRows is 0 - Instructs autodetect that there--- are no headers and data should be read starting from the first row. *--- skipLeadingRows = N > 0 - Autodetect skips N-1 rows and tries to detect--- headers in row N. If headers are not detected, row N is just skipped.--- Otherwise row N is used to extract column names for the detected schema.-gsoSkipLeadingRows :: Lens' GoogleSheetsOptions (Maybe Int64)-gsoSkipLeadingRows- = lens _gsoSkipLeadingRows- (\ s a -> s{_gsoSkipLeadingRows = a})- . mapping _Coerce--instance FromJSON GoogleSheetsOptions where- parseJSON- = withObject "GoogleSheetsOptions"- (\ o ->- GoogleSheetsOptions' <$> (o .:? "skipLeadingRows"))--instance ToJSON GoogleSheetsOptions where- toJSON GoogleSheetsOptions'{..}- = object- (catMaybes- [("skipLeadingRows" .=) <$> _gsoSkipLeadingRows])------- /See:/ 'tableDataInsertAllRequestRowsItem' smart constructor.-data TableDataInsertAllRequestRowsItem = TableDataInsertAllRequestRowsItem'- { _tdiarriJSON :: !(Maybe JSONObject)- , _tdiarriInsertId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableDataInsertAllRequestRowsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tdiarriJSON'------ * 'tdiarriInsertId'-tableDataInsertAllRequestRowsItem- :: TableDataInsertAllRequestRowsItem-tableDataInsertAllRequestRowsItem =- TableDataInsertAllRequestRowsItem'- { _tdiarriJSON = Nothing- , _tdiarriInsertId = Nothing- }---- | [Required] A JSON object that contains a row of data. The object\'s--- properties and values must match the destination table\'s schema.-tdiarriJSON :: Lens' TableDataInsertAllRequestRowsItem (Maybe JSONObject)-tdiarriJSON- = lens _tdiarriJSON (\ s a -> s{_tdiarriJSON = a})---- | [Optional] A unique ID for each row. BigQuery uses this property to--- detect duplicate insertion requests on a best-effort basis.-tdiarriInsertId :: Lens' TableDataInsertAllRequestRowsItem (Maybe Text)-tdiarriInsertId- = lens _tdiarriInsertId- (\ s a -> s{_tdiarriInsertId = a})--instance FromJSON TableDataInsertAllRequestRowsItem- where- parseJSON- = withObject "TableDataInsertAllRequestRowsItem"- (\ o ->- TableDataInsertAllRequestRowsItem' <$>- (o .:? "json") <*> (o .:? "insertId"))--instance ToJSON TableDataInsertAllRequestRowsItem- where- toJSON TableDataInsertAllRequestRowsItem'{..}- = object- (catMaybes- [("json" .=) <$> _tdiarriJSON,- ("insertId" .=) <$> _tdiarriInsertId])------- /See:/ 'jobList' smart constructor.-data JobList = JobList'- { _jlEtag :: !(Maybe Text)- , _jlNextPageToken :: !(Maybe Text)- , _jlKind :: !Text- , _jlJobs :: !(Maybe [JobListJobsItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobList' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jlEtag'------ * 'jlNextPageToken'------ * 'jlKind'------ * 'jlJobs'-jobList- :: JobList-jobList =- JobList'- { _jlEtag = Nothing- , _jlNextPageToken = Nothing- , _jlKind = "bigquery#jobList"- , _jlJobs = Nothing- }---- | A hash of this page of results.-jlEtag :: Lens' JobList (Maybe Text)-jlEtag = lens _jlEtag (\ s a -> s{_jlEtag = a})---- | A token to request the next page of results.-jlNextPageToken :: Lens' JobList (Maybe Text)-jlNextPageToken- = lens _jlNextPageToken- (\ s a -> s{_jlNextPageToken = a})---- | The resource type of the response.-jlKind :: Lens' JobList Text-jlKind = lens _jlKind (\ s a -> s{_jlKind = a})---- | List of jobs that were requested.-jlJobs :: Lens' JobList [JobListJobsItem]-jlJobs- = lens _jlJobs (\ s a -> s{_jlJobs = a}) . _Default .- _Coerce--instance FromJSON JobList where- parseJSON- = withObject "JobList"- (\ o ->- JobList' <$>- (o .:? "etag") <*> (o .:? "nextPageToken") <*>- (o .:? "kind" .!= "bigquery#jobList")- <*> (o .:? "jobs" .!= mempty))--instance ToJSON JobList where- toJSON JobList'{..}- = object- (catMaybes- [("etag" .=) <$> _jlEtag,- ("nextPageToken" .=) <$> _jlNextPageToken,- Just ("kind" .= _jlKind), ("jobs" .=) <$> _jlJobs])---- | [Optional] If querying an external data source outside of BigQuery,--- describes the data format, location and other properties of the data--- source. By defining these properties, the data source can then be--- queried as if it were a standard BigQuery table.------ /See:/ 'jobConfigurationQueryTableDefinitions' smart constructor.-newtype JobConfigurationQueryTableDefinitions = JobConfigurationQueryTableDefinitions'- { _jcqtdAddtional :: HashMap Text ExternalDataConfiguration- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobConfigurationQueryTableDefinitions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jcqtdAddtional'-jobConfigurationQueryTableDefinitions- :: HashMap Text ExternalDataConfiguration -- ^ 'jcqtdAddtional'- -> JobConfigurationQueryTableDefinitions-jobConfigurationQueryTableDefinitions pJcqtdAddtional_ =- JobConfigurationQueryTableDefinitions'- { _jcqtdAddtional = _Coerce # pJcqtdAddtional_- }--jcqtdAddtional :: Lens' JobConfigurationQueryTableDefinitions (HashMap Text ExternalDataConfiguration)-jcqtdAddtional- = lens _jcqtdAddtional- (\ s a -> s{_jcqtdAddtional = a})- . _Coerce--instance FromJSON- JobConfigurationQueryTableDefinitions where- parseJSON- = withObject "JobConfigurationQueryTableDefinitions"- (\ o ->- JobConfigurationQueryTableDefinitions' <$>- (parseJSONObject o))--instance ToJSON JobConfigurationQueryTableDefinitions- where- toJSON = toJSON . _jcqtdAddtional------- /See:/ 'tableCell' smart constructor.-newtype TableCell = TableCell'- { _tcV :: Maybe JSONValue- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableCell' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tcV'-tableCell- :: TableCell-tableCell =- TableCell'- { _tcV = Nothing- }--tcV :: Lens' TableCell (Maybe JSONValue)-tcV = lens _tcV (\ s a -> s{_tcV = a})--instance FromJSON TableCell where- parseJSON- = withObject "TableCell"- (\ o -> TableCell' <$> (o .:? "v"))--instance ToJSON TableCell where- toJSON TableCell'{..}- = object (catMaybes [("v" .=) <$> _tcV])------- /See:/ 'queryParameterValue' smart constructor.-data QueryParameterValue = QueryParameterValue'- { _qpvStructValues :: !(Maybe QueryParameterValueStructValues)- , _qpvValue :: !(Maybe Text)- , _qpvArrayValues :: !(Maybe [QueryParameterValue])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'QueryParameterValue' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'qpvStructValues'------ * 'qpvValue'------ * 'qpvArrayValues'-queryParameterValue- :: QueryParameterValue-queryParameterValue =- QueryParameterValue'- { _qpvStructValues = Nothing- , _qpvValue = Nothing- , _qpvArrayValues = Nothing- }---- | [Optional] The struct field values, in order of the struct type\'s--- declaration.-qpvStructValues :: Lens' QueryParameterValue (Maybe QueryParameterValueStructValues)-qpvStructValues- = lens _qpvStructValues- (\ s a -> s{_qpvStructValues = a})---- | [Optional] The value of this value, if a simple scalar type.-qpvValue :: Lens' QueryParameterValue (Maybe Text)-qpvValue = lens _qpvValue (\ s a -> s{_qpvValue = a})---- | [Optional] The array values, if this is an array type.-qpvArrayValues :: Lens' QueryParameterValue [QueryParameterValue]-qpvArrayValues- = lens _qpvArrayValues- (\ s a -> s{_qpvArrayValues = a})- . _Default- . _Coerce--instance FromJSON QueryParameterValue where- parseJSON- = withObject "QueryParameterValue"- (\ o ->- QueryParameterValue' <$>- (o .:? "structValues") <*> (o .:? "value") <*>- (o .:? "arrayValues" .!= mempty))--instance ToJSON QueryParameterValue where- toJSON QueryParameterValue'{..}- = object- (catMaybes- [("structValues" .=) <$> _qpvStructValues,- ("value" .=) <$> _qpvValue,- ("arrayValues" .=) <$> _qpvArrayValues])------- /See:/ 'viewDefinition' smart constructor.-data ViewDefinition = ViewDefinition'- { _vdUserDefinedFunctionResources :: !(Maybe [UserDefinedFunctionResource])- , _vdQuery :: !(Maybe Text)- , _vdUseLegacySQL :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ViewDefinition' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vdUserDefinedFunctionResources'------ * 'vdQuery'------ * 'vdUseLegacySQL'-viewDefinition- :: ViewDefinition-viewDefinition =- ViewDefinition'- { _vdUserDefinedFunctionResources = Nothing- , _vdQuery = Nothing- , _vdUseLegacySQL = Nothing- }---- | [Experimental] Describes user-defined function resources used in the--- query.-vdUserDefinedFunctionResources :: Lens' ViewDefinition [UserDefinedFunctionResource]-vdUserDefinedFunctionResources- = lens _vdUserDefinedFunctionResources- (\ s a -> s{_vdUserDefinedFunctionResources = a})- . _Default- . _Coerce---- | [Required] A query that BigQuery executes when the view is referenced.-vdQuery :: Lens' ViewDefinition (Maybe Text)-vdQuery = lens _vdQuery (\ s a -> s{_vdQuery = a})---- | Specifies whether to use BigQuery\'s legacy SQL for this view. The--- default value is true. If set to false, the view will use BigQuery\'s--- standard SQL: https:\/\/cloud.google.com\/bigquery\/sql-reference\/--- Queries and views that reference this view must use the same flag value.-vdUseLegacySQL :: Lens' ViewDefinition (Maybe Bool)-vdUseLegacySQL- = lens _vdUseLegacySQL- (\ s a -> s{_vdUseLegacySQL = a})--instance FromJSON ViewDefinition where- parseJSON- = withObject "ViewDefinition"- (\ o ->- ViewDefinition' <$>- (o .:? "userDefinedFunctionResources" .!= mempty) <*>- (o .:? "query")- <*> (o .:? "useLegacySql"))--instance ToJSON ViewDefinition where- toJSON ViewDefinition'{..}- = object- (catMaybes- [("userDefinedFunctionResources" .=) <$>- _vdUserDefinedFunctionResources,- ("query" .=) <$> _vdQuery,- ("useLegacySql" .=) <$> _vdUseLegacySQL])------- /See:/ 'userDefinedFunctionResource' smart constructor.-data UserDefinedFunctionResource = UserDefinedFunctionResource'- { _udfrResourceURI :: !(Maybe Text)- , _udfrInlineCode :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UserDefinedFunctionResource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'udfrResourceURI'------ * 'udfrInlineCode'-userDefinedFunctionResource- :: UserDefinedFunctionResource-userDefinedFunctionResource =- UserDefinedFunctionResource'- { _udfrResourceURI = Nothing- , _udfrInlineCode = Nothing- }---- | [Pick one] A code resource to load from a Google Cloud Storage URI--- (gs:\/\/bucket\/path).-udfrResourceURI :: Lens' UserDefinedFunctionResource (Maybe Text)-udfrResourceURI- = lens _udfrResourceURI- (\ s a -> s{_udfrResourceURI = a})---- | [Pick one] An inline resource that contains code for a user-defined--- function (UDF). Providing a inline code resource is equivalent to--- providing a URI for a file containing the same code.-udfrInlineCode :: Lens' UserDefinedFunctionResource (Maybe Text)-udfrInlineCode- = lens _udfrInlineCode- (\ s a -> s{_udfrInlineCode = a})--instance FromJSON UserDefinedFunctionResource where- parseJSON- = withObject "UserDefinedFunctionResource"- (\ o ->- UserDefinedFunctionResource' <$>- (o .:? "resourceUri") <*> (o .:? "inlineCode"))--instance ToJSON UserDefinedFunctionResource where- toJSON UserDefinedFunctionResource'{..}- = object- (catMaybes- [("resourceUri" .=) <$> _udfrResourceURI,- ("inlineCode" .=) <$> _udfrInlineCode])------- /See:/ 'jobStatistics2' smart constructor.-data JobStatistics2 = JobStatistics2'- { _jSchema :: !(Maybe TableSchema)- , _jTotalBytesProcessed :: !(Maybe (Textual Int64))- , _jBillingTier :: !(Maybe (Textual Int32))- , _jUndeclaredQueryParameters :: !(Maybe [QueryParameter])- , _jReferencedTables :: !(Maybe [TableReference])- , _jStatementType :: !(Maybe Text)- , _jNumDmlAffectedRows :: !(Maybe (Textual Int64))- , _jQueryPlan :: !(Maybe [ExplainQueryStage])- , _jCacheHit :: !(Maybe Bool)- , _jTotalBytesBilled :: !(Maybe (Textual Int64))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobStatistics2' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jSchema'------ * 'jTotalBytesProcessed'------ * 'jBillingTier'------ * 'jUndeclaredQueryParameters'------ * 'jReferencedTables'------ * 'jStatementType'------ * 'jNumDmlAffectedRows'------ * 'jQueryPlan'------ * 'jCacheHit'------ * 'jTotalBytesBilled'-jobStatistics2- :: JobStatistics2-jobStatistics2 =- JobStatistics2'- { _jSchema = Nothing- , _jTotalBytesProcessed = Nothing- , _jBillingTier = Nothing- , _jUndeclaredQueryParameters = Nothing- , _jReferencedTables = Nothing- , _jStatementType = Nothing- , _jNumDmlAffectedRows = Nothing- , _jQueryPlan = Nothing- , _jCacheHit = Nothing- , _jTotalBytesBilled = Nothing- }---- | [Output-only, Experimental] The schema of the results. Present only for--- successful dry run of non-legacy SQL queries.-jSchema :: Lens' JobStatistics2 (Maybe TableSchema)-jSchema = lens _jSchema (\ s a -> s{_jSchema = a})---- | [Output-only] Total bytes processed for the job.-jTotalBytesProcessed :: Lens' JobStatistics2 (Maybe Int64)-jTotalBytesProcessed- = lens _jTotalBytesProcessed- (\ s a -> s{_jTotalBytesProcessed = a})- . mapping _Coerce---- | [Output-only] Billing tier for the job.-jBillingTier :: Lens' JobStatistics2 (Maybe Int32)-jBillingTier- = lens _jBillingTier (\ s a -> s{_jBillingTier = a})- . mapping _Coerce---- | [Output-only, Experimental] Standard SQL only: list of undeclared query--- parameters detected during a dry run validation.-jUndeclaredQueryParameters :: Lens' JobStatistics2 [QueryParameter]-jUndeclaredQueryParameters- = lens _jUndeclaredQueryParameters- (\ s a -> s{_jUndeclaredQueryParameters = a})- . _Default- . _Coerce---- | [Output-only, Experimental] Referenced tables for the job. Queries that--- reference more than 50 tables will not have a complete list.-jReferencedTables :: Lens' JobStatistics2 [TableReference]-jReferencedTables- = lens _jReferencedTables- (\ s a -> s{_jReferencedTables = a})- . _Default- . _Coerce---- | [Output-only, Experimental] The type of query statement, if valid.-jStatementType :: Lens' JobStatistics2 (Maybe Text)-jStatementType- = lens _jStatementType- (\ s a -> s{_jStatementType = a})---- | [Output-only, Experimental] The number of rows affected by a DML--- statement. Present only for DML statements INSERT, UPDATE or DELETE.-jNumDmlAffectedRows :: Lens' JobStatistics2 (Maybe Int64)-jNumDmlAffectedRows- = lens _jNumDmlAffectedRows- (\ s a -> s{_jNumDmlAffectedRows = a})- . mapping _Coerce---- | [Output-only, Experimental] Describes execution plan for the query.-jQueryPlan :: Lens' JobStatistics2 [ExplainQueryStage]-jQueryPlan- = lens _jQueryPlan (\ s a -> s{_jQueryPlan = a}) .- _Default- . _Coerce---- | [Output-only] Whether the query result was fetched from the query cache.-jCacheHit :: Lens' JobStatistics2 (Maybe Bool)-jCacheHit- = lens _jCacheHit (\ s a -> s{_jCacheHit = a})---- | [Output-only] Total bytes billed for the job.-jTotalBytesBilled :: Lens' JobStatistics2 (Maybe Int64)-jTotalBytesBilled- = lens _jTotalBytesBilled- (\ s a -> s{_jTotalBytesBilled = a})- . mapping _Coerce--instance FromJSON JobStatistics2 where- parseJSON- = withObject "JobStatistics2"- (\ o ->- JobStatistics2' <$>- (o .:? "schema") <*> (o .:? "totalBytesProcessed")- <*> (o .:? "billingTier")- <*> (o .:? "undeclaredQueryParameters" .!= mempty)- <*> (o .:? "referencedTables" .!= mempty)- <*> (o .:? "statementType")- <*> (o .:? "numDmlAffectedRows")- <*> (o .:? "queryPlan" .!= mempty)- <*> (o .:? "cacheHit")- <*> (o .:? "totalBytesBilled"))--instance ToJSON JobStatistics2 where- toJSON JobStatistics2'{..}- = object- (catMaybes- [("schema" .=) <$> _jSchema,- ("totalBytesProcessed" .=) <$> _jTotalBytesProcessed,- ("billingTier" .=) <$> _jBillingTier,- ("undeclaredQueryParameters" .=) <$>- _jUndeclaredQueryParameters,- ("referencedTables" .=) <$> _jReferencedTables,- ("statementType" .=) <$> _jStatementType,- ("numDmlAffectedRows" .=) <$> _jNumDmlAffectedRows,- ("queryPlan" .=) <$> _jQueryPlan,- ("cacheHit" .=) <$> _jCacheHit,- ("totalBytesBilled" .=) <$> _jTotalBytesBilled])------- /See:/ 'jobStatus' smart constructor.-data JobStatus = JobStatus'- { _jsState :: !(Maybe Text)- , _jsErrorResult :: !(Maybe ErrorProto)- , _jsErrors :: !(Maybe [ErrorProto])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobStatus' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jsState'------ * 'jsErrorResult'------ * 'jsErrors'-jobStatus- :: JobStatus-jobStatus =- JobStatus'- { _jsState = Nothing- , _jsErrorResult = Nothing- , _jsErrors = Nothing- }---- | [Output-only] Running state of the job.-jsState :: Lens' JobStatus (Maybe Text)-jsState = lens _jsState (\ s a -> s{_jsState = a})---- | [Output-only] Final error result of the job. If present, indicates that--- the job has completed and was unsuccessful.-jsErrorResult :: Lens' JobStatus (Maybe ErrorProto)-jsErrorResult- = lens _jsErrorResult- (\ s a -> s{_jsErrorResult = a})---- | [Output-only] All errors encountered during the running of the job.--- Errors here do not necessarily mean that the job has completed or was--- unsuccessful.-jsErrors :: Lens' JobStatus [ErrorProto]-jsErrors- = lens _jsErrors (\ s a -> s{_jsErrors = a}) .- _Default- . _Coerce--instance FromJSON JobStatus where- parseJSON- = withObject "JobStatus"- (\ o ->- JobStatus' <$>- (o .:? "state") <*> (o .:? "errorResult") <*>- (o .:? "errors" .!= mempty))--instance ToJSON JobStatus where- toJSON JobStatus'{..}- = object- (catMaybes- [("state" .=) <$> _jsState,- ("errorResult" .=) <$> _jsErrorResult,- ("errors" .=) <$> _jsErrors])---- | [Experimental] The labels associated with this table. You can use these--- to organize and group your tables. Label keys and values can be no--- longer than 63 characters, can only contain letters, numeric characters,--- underscores and dashes. International characters are allowed. Label--- values are optional. Label keys must start with a letter and must be--- unique within a dataset. Both keys and values are additionally--- constrained to be \<= 128 bytes in size.------ /See:/ 'tableLabels' smart constructor.-newtype TableLabels = TableLabels'- { _tlAddtional :: HashMap Text Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableLabels' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tlAddtional'-tableLabels- :: HashMap Text Text -- ^ 'tlAddtional'- -> TableLabels-tableLabels pTlAddtional_ =- TableLabels'- { _tlAddtional = _Coerce # pTlAddtional_- }--tlAddtional :: Lens' TableLabels (HashMap Text Text)-tlAddtional- = lens _tlAddtional (\ s a -> s{_tlAddtional = a}) .- _Coerce--instance FromJSON TableLabels where- parseJSON- = withObject "TableLabels"- (\ o -> TableLabels' <$> (parseJSONObject o))--instance ToJSON TableLabels where- toJSON = toJSON . _tlAddtional------- /See:/ 'dataSetAccessItem' smart constructor.-data DataSetAccessItem = DataSetAccessItem'- { _dsaiGroupByEmail :: !(Maybe Text)- , _dsaiDomain :: !(Maybe Text)- , _dsaiSpecialGroup :: !(Maybe Text)- , _dsaiRole :: !(Maybe Text)- , _dsaiView :: !(Maybe TableReference)- , _dsaiUserByEmail :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DataSetAccessItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dsaiGroupByEmail'------ * 'dsaiDomain'------ * 'dsaiSpecialGroup'------ * 'dsaiRole'------ * 'dsaiView'------ * 'dsaiUserByEmail'-dataSetAccessItem- :: DataSetAccessItem-dataSetAccessItem =- DataSetAccessItem'- { _dsaiGroupByEmail = Nothing- , _dsaiDomain = Nothing- , _dsaiSpecialGroup = Nothing- , _dsaiRole = Nothing- , _dsaiView = Nothing- , _dsaiUserByEmail = Nothing- }---- | [Pick one] An email address of a Google Group to grant access to.-dsaiGroupByEmail :: Lens' DataSetAccessItem (Maybe Text)-dsaiGroupByEmail- = lens _dsaiGroupByEmail- (\ s a -> s{_dsaiGroupByEmail = a})---- | [Pick one] A domain to grant access to. Any users signed in with the--- domain specified will be granted the specified access. Example:--- \"example.com\".-dsaiDomain :: Lens' DataSetAccessItem (Maybe Text)-dsaiDomain- = lens _dsaiDomain (\ s a -> s{_dsaiDomain = a})---- | [Pick one] A special group to grant access to. Possible values include:--- projectOwners: Owners of the enclosing project. projectReaders: Readers--- of the enclosing project. projectWriters: Writers of the enclosing--- project. allAuthenticatedUsers: All authenticated BigQuery users.-dsaiSpecialGroup :: Lens' DataSetAccessItem (Maybe Text)-dsaiSpecialGroup- = lens _dsaiSpecialGroup- (\ s a -> s{_dsaiSpecialGroup = a})---- | [Required] Describes the rights granted to the user specified by the--- other member of the access object. The following string values are--- supported: READER, WRITER, OWNER.-dsaiRole :: Lens' DataSetAccessItem (Maybe Text)-dsaiRole = lens _dsaiRole (\ s a -> s{_dsaiRole = a})---- | [Pick one] A view from a different dataset to grant access to. Queries--- executed against that view will have read access to tables in this--- dataset. The role field is not required when this field is set. If that--- view is updated by any user, access to the view needs to be granted--- again via an update operation.-dsaiView :: Lens' DataSetAccessItem (Maybe TableReference)-dsaiView = lens _dsaiView (\ s a -> s{_dsaiView = a})---- | [Pick one] An email address of a user to grant access to. For example:--- fred\'example.com.-dsaiUserByEmail :: Lens' DataSetAccessItem (Maybe Text)-dsaiUserByEmail- = lens _dsaiUserByEmail- (\ s a -> s{_dsaiUserByEmail = a})--instance FromJSON DataSetAccessItem where- parseJSON- = withObject "DataSetAccessItem"- (\ o ->- DataSetAccessItem' <$>- (o .:? "groupByEmail") <*> (o .:? "domain") <*>- (o .:? "specialGroup")- <*> (o .:? "role")- <*> (o .:? "view")- <*> (o .:? "userByEmail"))--instance ToJSON DataSetAccessItem where- toJSON DataSetAccessItem'{..}- = object- (catMaybes- [("groupByEmail" .=) <$> _dsaiGroupByEmail,- ("domain" .=) <$> _dsaiDomain,- ("specialGroup" .=) <$> _dsaiSpecialGroup,- ("role" .=) <$> _dsaiRole, ("view" .=) <$> _dsaiView,- ("userByEmail" .=) <$> _dsaiUserByEmail])------- /See:/ 'tableDataInsertAllResponse' smart constructor.-data TableDataInsertAllResponse = TableDataInsertAllResponse'- { _tKind :: !Text- , _tInsertErrors :: !(Maybe [TableDataInsertAllResponseInsertErrorsItem])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TableDataInsertAllResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tKind'------ * 'tInsertErrors'-tableDataInsertAllResponse- :: TableDataInsertAllResponse-tableDataInsertAllResponse =- TableDataInsertAllResponse'- { _tKind = "bigquery#tableDataInsertAllResponse"- , _tInsertErrors = Nothing- }---- | The resource type of the response.-tKind :: Lens' TableDataInsertAllResponse Text-tKind = lens _tKind (\ s a -> s{_tKind = a})---- | An array of errors for rows that were not inserted.-tInsertErrors :: Lens' TableDataInsertAllResponse [TableDataInsertAllResponseInsertErrorsItem]-tInsertErrors- = lens _tInsertErrors- (\ s a -> s{_tInsertErrors = a})- . _Default- . _Coerce--instance FromJSON TableDataInsertAllResponse where- parseJSON- = withObject "TableDataInsertAllResponse"- (\ o ->- TableDataInsertAllResponse' <$>- (o .:? "kind" .!=- "bigquery#tableDataInsertAllResponse")- <*> (o .:? "insertErrors" .!= mempty))--instance ToJSON TableDataInsertAllResponse where- toJSON TableDataInsertAllResponse'{..}- = object- (catMaybes- [Just ("kind" .= _tKind),- ("insertErrors" .=) <$> _tInsertErrors])------- /See:/ 'queryParameterType' smart constructor.-data QueryParameterType = QueryParameterType'- { _qptStructTypes :: !(Maybe [QueryParameterTypeStructTypesItem])- , _qptType :: !(Maybe Text)- , _qptArrayType :: !(Maybe QueryParameterType)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'QueryParameterType' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'qptStructTypes'------ * 'qptType'------ * 'qptArrayType'-queryParameterType- :: QueryParameterType-queryParameterType =- QueryParameterType'- { _qptStructTypes = Nothing- , _qptType = Nothing- , _qptArrayType = Nothing- }---- | [Optional] The types of the fields of this struct, in order, if this is--- a struct.-qptStructTypes :: Lens' QueryParameterType [QueryParameterTypeStructTypesItem]-qptStructTypes- = lens _qptStructTypes- (\ s a -> s{_qptStructTypes = a})- . _Default- . _Coerce---- | [Required] The top level type of this field.-qptType :: Lens' QueryParameterType (Maybe Text)-qptType = lens _qptType (\ s a -> s{_qptType = a})---- | [Optional] The type of the array\'s elements, if this is an array.-qptArrayType :: Lens' QueryParameterType (Maybe QueryParameterType)-qptArrayType- = lens _qptArrayType (\ s a -> s{_qptArrayType = a})--instance FromJSON QueryParameterType where- parseJSON- = withObject "QueryParameterType"- (\ o ->- QueryParameterType' <$>- (o .:? "structTypes" .!= mempty) <*> (o .:? "type")- <*> (o .:? "arrayType"))--instance ToJSON QueryParameterType where- toJSON QueryParameterType'{..}- = object- (catMaybes- [("structTypes" .=) <$> _qptStructTypes,- ("type" .=) <$> _qptType,- ("arrayType" .=) <$> _qptArrayType])------- /See:/ 'table' smart constructor.-data Table = Table'- { _tabCreationTime :: !(Maybe (Textual Int64))- , _tabEtag :: !(Maybe Text)- , _tabNumBytes :: !(Maybe (Textual Int64))- , _tabExternalDataConfiguration :: !(Maybe ExternalDataConfiguration)- , _tabLocation :: !(Maybe Text)- , _tabTableReference :: !(Maybe TableReference)- , _tabFriendlyName :: !(Maybe Text)- , _tabKind :: !Text- , _tabLastModifiedTime :: !(Maybe (Textual Word64))- , _tabSchema :: !(Maybe TableSchema)- , _tabStreamingBuffer :: !(Maybe Streamingbuffer)- , _tabSelfLink :: !(Maybe Text)- , _tabTimePartitioning :: !(Maybe TimePartitioning)- , _tabNumRows :: !(Maybe (Textual Word64))- , _tabView :: !(Maybe ViewDefinition)- , _tabId :: !(Maybe Text)- , _tabLabels :: !(Maybe TableLabels)- , _tabType :: !(Maybe Text)- , _tabNumLongTermBytes :: !(Maybe (Textual Int64))- , _tabExpirationTime :: !(Maybe (Textual Int64))- , _tabDescription :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Table' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tabCreationTime'------ * 'tabEtag'------ * 'tabNumBytes'------ * 'tabExternalDataConfiguration'------ * 'tabLocation'------ * 'tabTableReference'------ * 'tabFriendlyName'------ * 'tabKind'------ * 'tabLastModifiedTime'------ * 'tabSchema'------ * 'tabStreamingBuffer'------ * 'tabSelfLink'------ * 'tabTimePartitioning'------ * 'tabNumRows'------ * 'tabView'------ * 'tabId'------ * 'tabLabels'------ * 'tabType'------ * 'tabNumLongTermBytes'------ * 'tabExpirationTime'------ * 'tabDescription'-table- :: Table-table =- Table'- { _tabCreationTime = Nothing- , _tabEtag = Nothing- , _tabNumBytes = Nothing- , _tabExternalDataConfiguration = Nothing- , _tabLocation = Nothing- , _tabTableReference = Nothing- , _tabFriendlyName = Nothing- , _tabKind = "bigquery#table"- , _tabLastModifiedTime = Nothing- , _tabSchema = Nothing- , _tabStreamingBuffer = Nothing- , _tabSelfLink = Nothing- , _tabTimePartitioning = Nothing- , _tabNumRows = Nothing- , _tabView = Nothing- , _tabId = Nothing- , _tabLabels = Nothing- , _tabType = Nothing- , _tabNumLongTermBytes = Nothing- , _tabExpirationTime = Nothing- , _tabDescription = Nothing- }---- | [Output-only] The time when this table was created, in milliseconds--- since the epoch.-tabCreationTime :: Lens' Table (Maybe Int64)-tabCreationTime- = lens _tabCreationTime- (\ s a -> s{_tabCreationTime = a})- . mapping _Coerce---- | [Output-only] A hash of this resource.-tabEtag :: Lens' Table (Maybe Text)-tabEtag = lens _tabEtag (\ s a -> s{_tabEtag = a})---- | [Output-only] The size of this table in bytes, excluding any data in the--- streaming buffer.-tabNumBytes :: Lens' Table (Maybe Int64)-tabNumBytes- = lens _tabNumBytes (\ s a -> s{_tabNumBytes = a}) .- mapping _Coerce---- | [Optional] Describes the data format, location, and other properties of--- a table stored outside of BigQuery. By defining these properties, the--- data source can then be queried as if it were a standard BigQuery table.-tabExternalDataConfiguration :: Lens' Table (Maybe ExternalDataConfiguration)-tabExternalDataConfiguration- = lens _tabExternalDataConfiguration- (\ s a -> s{_tabExternalDataConfiguration = a})---- | [Output-only] The geographic location where the table resides. This--- value is inherited from the dataset.-tabLocation :: Lens' Table (Maybe Text)-tabLocation- = lens _tabLocation (\ s a -> s{_tabLocation = a})---- | [Required] Reference describing the ID of this table.-tabTableReference :: Lens' Table (Maybe TableReference)-tabTableReference- = lens _tabTableReference- (\ s a -> s{_tabTableReference = a})---- | [Optional] A descriptive name for this table.-tabFriendlyName :: Lens' Table (Maybe Text)-tabFriendlyName- = lens _tabFriendlyName- (\ s a -> s{_tabFriendlyName = a})---- | [Output-only] The type of the resource.-tabKind :: Lens' Table Text-tabKind = lens _tabKind (\ s a -> s{_tabKind = a})---- | [Output-only] The time when this table was last modified, in--- milliseconds since the epoch.-tabLastModifiedTime :: Lens' Table (Maybe Word64)-tabLastModifiedTime- = lens _tabLastModifiedTime- (\ s a -> s{_tabLastModifiedTime = a})- . mapping _Coerce---- | [Optional] Describes the schema of this table.-tabSchema :: Lens' Table (Maybe TableSchema)-tabSchema- = lens _tabSchema (\ s a -> s{_tabSchema = a})---- | [Output-only] Contains information regarding this table\'s streaming--- buffer, if one is present. This field will be absent if the table is not--- being streamed to or if there is no data in the streaming buffer.-tabStreamingBuffer :: Lens' Table (Maybe Streamingbuffer)-tabStreamingBuffer- = lens _tabStreamingBuffer- (\ s a -> s{_tabStreamingBuffer = a})---- | [Output-only] A URL that can be used to access this resource again.-tabSelfLink :: Lens' Table (Maybe Text)-tabSelfLink- = lens _tabSelfLink (\ s a -> s{_tabSelfLink = a})---- | [Experimental] If specified, configures time-based partitioning for this--- table.-tabTimePartitioning :: Lens' Table (Maybe TimePartitioning)-tabTimePartitioning- = lens _tabTimePartitioning- (\ s a -> s{_tabTimePartitioning = a})---- | [Output-only] The number of rows of data in this table, excluding any--- data in the streaming buffer.-tabNumRows :: Lens' Table (Maybe Word64)-tabNumRows- = lens _tabNumRows (\ s a -> s{_tabNumRows = a}) .- mapping _Coerce---- | [Optional] The view definition.-tabView :: Lens' Table (Maybe ViewDefinition)-tabView = lens _tabView (\ s a -> s{_tabView = a})---- | [Output-only] An opaque ID uniquely identifying the table.-tabId :: Lens' Table (Maybe Text)-tabId = lens _tabId (\ s a -> s{_tabId = a})---- | [Experimental] The labels associated with this table. You can use these--- to organize and group your tables. Label keys and values can be no--- longer than 63 characters, can only contain letters, numeric characters,--- underscores and dashes. International characters are allowed. Label--- values are optional. Label keys must start with a letter and must be--- unique within a dataset. Both keys and values are additionally--- constrained to be \<= 128 bytes in size.-tabLabels :: Lens' Table (Maybe TableLabels)-tabLabels- = lens _tabLabels (\ s a -> s{_tabLabels = a})---- | [Output-only] Describes the table type. The following values are--- supported: TABLE: A normal BigQuery table. VIEW: A virtual table defined--- by a SQL query. EXTERNAL: A table that references data stored in an--- external storage system, such as Google Cloud Storage. The default value--- is TABLE.-tabType :: Lens' Table (Maybe Text)-tabType = lens _tabType (\ s a -> s{_tabType = a})---- | [Output-only] The number of bytes in the table that are considered--- \"long-term storage\".-tabNumLongTermBytes :: Lens' Table (Maybe Int64)-tabNumLongTermBytes- = lens _tabNumLongTermBytes- (\ s a -> s{_tabNumLongTermBytes = a})- . mapping _Coerce---- | [Optional] The time when this table expires, in milliseconds since the--- epoch. If not present, the table will persist indefinitely. Expired--- tables will be deleted and their storage reclaimed.-tabExpirationTime :: Lens' Table (Maybe Int64)-tabExpirationTime- = lens _tabExpirationTime- (\ s a -> s{_tabExpirationTime = a})- . mapping _Coerce---- | [Optional] A user-friendly description of this table.-tabDescription :: Lens' Table (Maybe Text)-tabDescription- = lens _tabDescription- (\ s a -> s{_tabDescription = a})--instance FromJSON Table where- parseJSON- = withObject "Table"- (\ o ->- Table' <$>- (o .:? "creationTime") <*> (o .:? "etag") <*>- (o .:? "numBytes")- <*> (o .:? "externalDataConfiguration")- <*> (o .:? "location")- <*> (o .:? "tableReference")- <*> (o .:? "friendlyName")- <*> (o .:? "kind" .!= "bigquery#table")- <*> (o .:? "lastModifiedTime")- <*> (o .:? "schema")- <*> (o .:? "streamingBuffer")- <*> (o .:? "selfLink")- <*> (o .:? "timePartitioning")- <*> (o .:? "numRows")- <*> (o .:? "view")- <*> (o .:? "id")- <*> (o .:? "labels")- <*> (o .:? "type")- <*> (o .:? "numLongTermBytes")- <*> (o .:? "expirationTime")- <*> (o .:? "description"))--instance ToJSON Table where- toJSON Table'{..}- = object- (catMaybes- [("creationTime" .=) <$> _tabCreationTime,- ("etag" .=) <$> _tabEtag,- ("numBytes" .=) <$> _tabNumBytes,- ("externalDataConfiguration" .=) <$>- _tabExternalDataConfiguration,- ("location" .=) <$> _tabLocation,- ("tableReference" .=) <$> _tabTableReference,- ("friendlyName" .=) <$> _tabFriendlyName,- Just ("kind" .= _tabKind),- ("lastModifiedTime" .=) <$> _tabLastModifiedTime,- ("schema" .=) <$> _tabSchema,- ("streamingBuffer" .=) <$> _tabStreamingBuffer,- ("selfLink" .=) <$> _tabSelfLink,- ("timePartitioning" .=) <$> _tabTimePartitioning,- ("numRows" .=) <$> _tabNumRows,- ("view" .=) <$> _tabView, ("id" .=) <$> _tabId,- ("labels" .=) <$> _tabLabels,- ("type" .=) <$> _tabType,- ("numLongTermBytes" .=) <$> _tabNumLongTermBytes,- ("expirationTime" .=) <$> _tabExpirationTime,- ("description" .=) <$> _tabDescription])------- /See:/ 'errorProto' smart constructor.-data ErrorProto = ErrorProto'- { _epDebugInfo :: !(Maybe Text)- , _epLocation :: !(Maybe Text)- , _epReason :: !(Maybe Text)- , _epMessage :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ErrorProto' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'epDebugInfo'------ * 'epLocation'------ * 'epReason'------ * 'epMessage'-errorProto- :: ErrorProto-errorProto =- ErrorProto'- { _epDebugInfo = Nothing- , _epLocation = Nothing- , _epReason = Nothing- , _epMessage = Nothing- }---- | Debugging information. This property is internal to Google and should--- not be used.-epDebugInfo :: Lens' ErrorProto (Maybe Text)-epDebugInfo- = lens _epDebugInfo (\ s a -> s{_epDebugInfo = a})---- | Specifies where the error occurred, if present.-epLocation :: Lens' ErrorProto (Maybe Text)-epLocation- = lens _epLocation (\ s a -> s{_epLocation = a})---- | A short error code that summarizes the error.-epReason :: Lens' ErrorProto (Maybe Text)-epReason = lens _epReason (\ s a -> s{_epReason = a})---- | A human-readable description of the error.-epMessage :: Lens' ErrorProto (Maybe Text)-epMessage- = lens _epMessage (\ s a -> s{_epMessage = a})--instance FromJSON ErrorProto where- parseJSON- = withObject "ErrorProto"- (\ o ->- ErrorProto' <$>- (o .:? "debugInfo") <*> (o .:? "location") <*>- (o .:? "reason")- <*> (o .:? "message"))--instance ToJSON ErrorProto where- toJSON ErrorProto'{..}- = object- (catMaybes- [("debugInfo" .=) <$> _epDebugInfo,- ("location" .=) <$> _epLocation,- ("reason" .=) <$> _epReason,- ("message" .=) <$> _epMessage])------- /See:/ 'csvOptions' smart constructor.-data CSVOptions = CSVOptions'- { _coSkipLeadingRows :: !(Maybe (Textual Int64))- , _coAllowJaggedRows :: !(Maybe Bool)- , _coAllowQuotedNewlines :: !(Maybe Bool)- , _coQuote :: !Text- , _coEncoding :: !(Maybe Text)- , _coFieldDelimiter :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CSVOptions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'coSkipLeadingRows'------ * 'coAllowJaggedRows'------ * 'coAllowQuotedNewlines'------ * 'coQuote'------ * 'coEncoding'------ * 'coFieldDelimiter'-csvOptions- :: CSVOptions-csvOptions =- CSVOptions'- { _coSkipLeadingRows = Nothing- , _coAllowJaggedRows = Nothing- , _coAllowQuotedNewlines = Nothing- , _coQuote = "\""- , _coEncoding = Nothing- , _coFieldDelimiter = Nothing- }---- | [Optional] The number of rows at the top of a CSV file that BigQuery--- will skip when reading the data. The default value is 0. This property--- is useful if you have header rows in the file that should be skipped.-coSkipLeadingRows :: Lens' CSVOptions (Maybe Int64)-coSkipLeadingRows- = lens _coSkipLeadingRows- (\ s a -> s{_coSkipLeadingRows = a})- . mapping _Coerce---- | [Optional] Indicates if BigQuery should accept rows that are missing--- trailing optional columns. If true, BigQuery treats missing trailing--- columns as null values. If false, records with missing trailing columns--- are treated as bad records, and if there are too many bad records, an--- invalid error is returned in the job result. The default value is false.-coAllowJaggedRows :: Lens' CSVOptions (Maybe Bool)-coAllowJaggedRows- = lens _coAllowJaggedRows- (\ s a -> s{_coAllowJaggedRows = a})---- | [Optional] Indicates if BigQuery should allow quoted data sections that--- contain newline characters in a CSV file. The default value is false.-coAllowQuotedNewlines :: Lens' CSVOptions (Maybe Bool)-coAllowQuotedNewlines- = lens _coAllowQuotedNewlines- (\ s a -> s{_coAllowQuotedNewlines = a})---- | [Optional] The value that is used to quote data sections in a CSV file.--- BigQuery converts the string to ISO-8859-1 encoding, and then uses the--- first byte of the encoded string to split the data in its raw, binary--- state. The default value is a double-quote (\'\"\'). If your data does--- not contain quoted sections, set the property value to an empty string.--- If your data contains quoted newline characters, you must also set the--- allowQuotedNewlines property to true.-coQuote :: Lens' CSVOptions Text-coQuote = lens _coQuote (\ s a -> s{_coQuote = a})---- | [Optional] The character encoding of the data. The supported values are--- UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery decodes the--- data after the raw, binary data has been split using the values of the--- quote and fieldDelimiter properties.-coEncoding :: Lens' CSVOptions (Maybe Text)-coEncoding- = lens _coEncoding (\ s a -> s{_coEncoding = a})---- | [Optional] The separator for fields in a CSV file. BigQuery converts the--- string to ISO-8859-1 encoding, and then uses the first byte of the--- encoded string to split the data in its raw, binary state. BigQuery also--- supports the escape sequence \"\\t\" to specify a tab separator. The--- default value is a comma (\',\').-coFieldDelimiter :: Lens' CSVOptions (Maybe Text)-coFieldDelimiter- = lens _coFieldDelimiter- (\ s a -> s{_coFieldDelimiter = a})--instance FromJSON CSVOptions where- parseJSON- = withObject "CSVOptions"- (\ o ->- CSVOptions' <$>- (o .:? "skipLeadingRows") <*>- (o .:? "allowJaggedRows")- <*> (o .:? "allowQuotedNewlines")- <*> (o .:? "quote" .!= "\"")- <*> (o .:? "encoding")- <*> (o .:? "fieldDelimiter"))--instance ToJSON CSVOptions where- toJSON CSVOptions'{..}- = object- (catMaybes- [("skipLeadingRows" .=) <$> _coSkipLeadingRows,- ("allowJaggedRows" .=) <$> _coAllowJaggedRows,- ("allowQuotedNewlines" .=) <$>- _coAllowQuotedNewlines,- Just ("quote" .= _coQuote),- ("encoding" .=) <$> _coEncoding,- ("fieldDelimiter" .=) <$> _coFieldDelimiter])------- /See:/ 'jobStatistics3' smart constructor.-data JobStatistics3 = JobStatistics3'- { _jsInputFiles :: !(Maybe (Textual Int64))- , _jsOutputRows :: !(Maybe (Textual Int64))- , _jsOutputBytes :: !(Maybe (Textual Int64))- , _jsInputFileBytes :: !(Maybe (Textual Int64))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'JobStatistics3' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'jsInputFiles'------ * 'jsOutputRows'------ * 'jsOutputBytes'------ * 'jsInputFileBytes'-jobStatistics3- :: JobStatistics3-jobStatistics3 =- JobStatistics3'- { _jsInputFiles = Nothing- , _jsOutputRows = Nothing- , _jsOutputBytes = Nothing- , _jsInputFileBytes = Nothing- }---- | [Output-only] Number of source files in a load job.-jsInputFiles :: Lens' JobStatistics3 (Maybe Int64)-jsInputFiles- = lens _jsInputFiles (\ s a -> s{_jsInputFiles = a})- . mapping _Coerce---- | [Output-only] Number of rows imported in a load job. Note that while an--- import job is in the running state, this value may change.-jsOutputRows :: Lens' JobStatistics3 (Maybe Int64)-jsOutputRows- = lens _jsOutputRows (\ s a -> s{_jsOutputRows = a})- . mapping _Coerce---- | [Output-only] Size of the loaded data in bytes. Note that while a load--- job is in the running state, this value may change.-jsOutputBytes :: Lens' JobStatistics3 (Maybe Int64)-jsOutputBytes- = lens _jsOutputBytes- (\ s a -> s{_jsOutputBytes = a})- . mapping _Coerce---- | [Output-only] Number of bytes of source data in a load job.-jsInputFileBytes :: Lens' JobStatistics3 (Maybe Int64)-jsInputFileBytes- = lens _jsInputFileBytes- (\ s a -> s{_jsInputFileBytes = a})- . mapping _Coerce--instance FromJSON JobStatistics3 where- parseJSON- = withObject "JobStatistics3"- (\ o ->- JobStatistics3' <$>- (o .:? "inputFiles") <*> (o .:? "outputRows") <*>- (o .:? "outputBytes")- <*> (o .:? "inputFileBytes"))--instance ToJSON JobStatistics3 where- toJSON JobStatistics3'{..}- = object- (catMaybes- [("inputFiles" .=) <$> _jsInputFiles,- ("outputRows" .=) <$> _jsOutputRows,- ("outputBytes" .=) <$> _jsOutputBytes,- ("inputFileBytes" .=) <$> _jsInputFileBytes])------- /See:/ 'queryResponse' smart constructor.-data QueryResponse = QueryResponse'- { _qJobReference :: !(Maybe JobReference)- , _qKind :: !Text- , _qSchema :: !(Maybe TableSchema)- , _qTotalBytesProcessed :: !(Maybe (Textual Int64))- , _qRows :: !(Maybe [TableRow])- , _qPageToken :: !(Maybe Text)- , _qNumDmlAffectedRows :: !(Maybe (Textual Int64))- , _qTotalRows :: !(Maybe (Textual Word64))- , _qErrors :: !(Maybe [ErrorProto])- , _qJobComplete :: !(Maybe Bool)- , _qCacheHit :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'QueryResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'qJobReference'------ * 'qKind'------ * 'qSchema'------ * 'qTotalBytesProcessed'------ * 'qRows'------ * 'qPageToken'------ * 'qNumDmlAffectedRows'------ * 'qTotalRows'------ * 'qErrors'------ * 'qJobComplete'------ * 'qCacheHit'-queryResponse- :: QueryResponse-queryResponse =- QueryResponse'- { _qJobReference = Nothing- , _qKind = "bigquery#queryResponse"- , _qSchema = Nothing- , _qTotalBytesProcessed = Nothing- , _qRows = Nothing- , _qPageToken = Nothing- , _qNumDmlAffectedRows = Nothing- , _qTotalRows = Nothing- , _qErrors = Nothing- , _qJobComplete = Nothing- , _qCacheHit = Nothing- }---- | Reference to the Job that was created to run the query. This field will--- be present even if the original request timed out, in which case--- GetQueryResults can be used to read the results once the query has--- completed. Since this API only returns the first page of results,--- subsequent pages can be fetched via the same mechanism--- (GetQueryResults).-qJobReference :: Lens' QueryResponse (Maybe JobReference)-qJobReference- = lens _qJobReference- (\ s a -> s{_qJobReference = a})---- | The resource type.-qKind :: Lens' QueryResponse Text-qKind = lens _qKind (\ s a -> s{_qKind = a})---- | The schema of the results. Present only when the query completes--- successfully.-qSchema :: Lens' QueryResponse (Maybe TableSchema)-qSchema = lens _qSchema (\ s a -> s{_qSchema = a})---- | The total number of bytes processed for this query. If this query was a--- dry run, this is the number of bytes that would be processed if the--- query were run.-qTotalBytesProcessed :: Lens' QueryResponse (Maybe Int64)-qTotalBytesProcessed- = lens _qTotalBytesProcessed- (\ s a -> s{_qTotalBytesProcessed = a})- . mapping _Coerce---- | An object with as many results as can be contained within the maximum--- permitted reply size. To get any additional rows, you can call--- GetQueryResults and specify the jobReference returned above.-qRows :: Lens' QueryResponse [TableRow]-qRows- = lens _qRows (\ s a -> s{_qRows = a}) . _Default .- _Coerce---- | A token used for paging results.-qPageToken :: Lens' QueryResponse (Maybe Text)-qPageToken- = lens _qPageToken (\ s a -> s{_qPageToken = a})---- | [Output-only, Experimental] The number of rows affected by a DML--- statement. Present only for DML statements INSERT, UPDATE or DELETE.-qNumDmlAffectedRows :: Lens' QueryResponse (Maybe Int64)-qNumDmlAffectedRows- = lens _qNumDmlAffectedRows- (\ s a -> s{_qNumDmlAffectedRows = a})- . mapping _Coerce---- | The total number of rows in the complete query result set, which can be--- more than the number of rows in this single page of results.-qTotalRows :: Lens' QueryResponse (Maybe Word64)-qTotalRows- = lens _qTotalRows (\ s a -> s{_qTotalRows = a}) .- mapping _Coerce---- | [Output-only] All errors and warnings encountered during the running of--- the job. Errors here do not necessarily mean that the job has completed--- or was unsuccessful.-qErrors :: Lens' QueryResponse [ErrorProto]-qErrors- = lens _qErrors (\ s a -> s{_qErrors = a}) . _Default- . _Coerce---- | Whether the query has completed or not. If rows or totalRows are--- present, this will always be true. If this is false, totalRows will not--- be available.-qJobComplete :: Lens' QueryResponse (Maybe Bool)-qJobComplete- = lens _qJobComplete (\ s a -> s{_qJobComplete = a})---- | Whether the query result was fetched from the query cache.-qCacheHit :: Lens' QueryResponse (Maybe Bool)-qCacheHit- = lens _qCacheHit (\ s a -> s{_qCacheHit = a})--instance FromJSON QueryResponse where- parseJSON- = withObject "QueryResponse"- (\ o ->- QueryResponse' <$>- (o .:? "jobReference") <*>- (o .:? "kind" .!= "bigquery#queryResponse")- <*> (o .:? "schema")- <*> (o .:? "totalBytesProcessed")- <*> (o .:? "rows" .!= mempty)- <*> (o .:? "pageToken")- <*> (o .:? "numDmlAffectedRows")- <*> (o .:? "totalRows")- <*> (o .:? "errors" .!= mempty)- <*> (o .:? "jobComplete")- <*> (o .:? "cacheHit"))--instance ToJSON QueryResponse where- toJSON QueryResponse'{..}- = object- (catMaybes- [("jobReference" .=) <$> _qJobReference,- Just ("kind" .= _qKind), ("schema" .=) <$> _qSchema,- ("totalBytesProcessed" .=) <$> _qTotalBytesProcessed,- ("rows" .=) <$> _qRows,- ("pageToken" .=) <$> _qPageToken,- ("numDmlAffectedRows" .=) <$> _qNumDmlAffectedRows,- ("totalRows" .=) <$> _qTotalRows,- ("errors" .=) <$> _qErrors,- ("jobComplete" .=) <$> _qJobComplete,- ("cacheHit" .=) <$> _qCacheHit])---- | [Experimental] The labels associated with this dataset. You can use--- these to organize and group your datasets.------ /See:/ 'dataSetListDataSetsItemLabels' smart constructor.-newtype DataSetListDataSetsItemLabels = DataSetListDataSetsItemLabels'- { _dsldsilAddtional :: HashMap Text Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DataSetListDataSetsItemLabels' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dsldsilAddtional'-dataSetListDataSetsItemLabels- :: HashMap Text Text -- ^ 'dsldsilAddtional'- -> DataSetListDataSetsItemLabels-dataSetListDataSetsItemLabels pDsldsilAddtional_ =- DataSetListDataSetsItemLabels'- { _dsldsilAddtional = _Coerce # pDsldsilAddtional_- }--dsldsilAddtional :: Lens' DataSetListDataSetsItemLabels (HashMap Text Text)-dsldsilAddtional- = lens _dsldsilAddtional- (\ s a -> s{_dsldsilAddtional = a})- . _Coerce--instance FromJSON DataSetListDataSetsItemLabels where- parseJSON- = withObject "DataSetListDataSetsItemLabels"- (\ o ->- DataSetListDataSetsItemLabels' <$>- (parseJSONObject o))--instance ToJSON DataSetListDataSetsItemLabels where- toJSON = toJSON . _dsldsilAddtional---- | [Experimental] The labels associated with this table. You can use these--- to organize and group your tables.+ , _jrLocation :: !(Maybe Text)+ , _jrProjectId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobReference' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jrJobId'+--+-- * 'jrLocation'+--+-- * 'jrProjectId'+jobReference+ :: JobReference+jobReference =+ JobReference'+ { _jrJobId = Nothing+ , _jrLocation = Nothing+ , _jrProjectId = Nothing+ }++-- | [Required] The ID of the job. The ID must contain only letters (a-z,+-- A-Z), numbers (0-9), underscores (_), or dashes (-). The maximum length+-- is 1,024 characters.+jrJobId :: Lens' JobReference (Maybe Text)+jrJobId = lens _jrJobId (\ s a -> s{_jrJobId = a})++-- | The geographic location of the job. See details at+-- https:\/\/cloud.google.com\/bigquery\/docs\/locations#specifying_your_location.+jrLocation :: Lens' JobReference (Maybe Text)+jrLocation+ = lens _jrLocation (\ s a -> s{_jrLocation = a})++-- | [Required] The ID of the project containing this job.+jrProjectId :: Lens' JobReference (Maybe Text)+jrProjectId+ = lens _jrProjectId (\ s a -> s{_jrProjectId = a})++instance FromJSON JobReference where+ parseJSON+ = withObject "JobReference"+ (\ o ->+ JobReference' <$>+ (o .:? "jobId") <*> (o .:? "location") <*>+ (o .:? "projectId"))++instance ToJSON JobReference where+ toJSON JobReference'{..}+ = object+ (catMaybes+ [("jobId" .=) <$> _jrJobId,+ ("location" .=) <$> _jrLocation,+ ("projectId" .=) <$> _jrProjectId])++--+-- /See:/ 'tableList' smart constructor.+data TableList = TableList'+ { _tlTotalItems :: !(Maybe (Textual Int32))+ , _tlEtag :: !(Maybe Text)+ , _tlNextPageToken :: !(Maybe Text)+ , _tlKind :: !Text+ , _tlTables :: !(Maybe [TableListTablesItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tlTotalItems'+--+-- * 'tlEtag'+--+-- * 'tlNextPageToken'+--+-- * 'tlKind'+--+-- * 'tlTables'+tableList+ :: TableList+tableList =+ TableList'+ { _tlTotalItems = Nothing+ , _tlEtag = Nothing+ , _tlNextPageToken = Nothing+ , _tlKind = "bigquery#tableList"+ , _tlTables = Nothing+ }++-- | The total number of tables in the dataset.+tlTotalItems :: Lens' TableList (Maybe Int32)+tlTotalItems+ = lens _tlTotalItems (\ s a -> s{_tlTotalItems = a})+ . mapping _Coerce++-- | A hash of this page of results.+tlEtag :: Lens' TableList (Maybe Text)+tlEtag = lens _tlEtag (\ s a -> s{_tlEtag = a})++-- | A token to request the next page of results.+tlNextPageToken :: Lens' TableList (Maybe Text)+tlNextPageToken+ = lens _tlNextPageToken+ (\ s a -> s{_tlNextPageToken = a})++-- | The type of list.+tlKind :: Lens' TableList Text+tlKind = lens _tlKind (\ s a -> s{_tlKind = a})++-- | Tables in the requested dataset.+tlTables :: Lens' TableList [TableListTablesItem]+tlTables+ = lens _tlTables (\ s a -> s{_tlTables = a}) .+ _Default+ . _Coerce++instance FromJSON TableList where+ parseJSON+ = withObject "TableList"+ (\ o ->+ TableList' <$>+ (o .:? "totalItems") <*> (o .:? "etag") <*>+ (o .:? "nextPageToken")+ <*> (o .:? "kind" .!= "bigquery#tableList")+ <*> (o .:? "tables" .!= mempty))++instance ToJSON TableList where+ toJSON TableList'{..}+ = object+ (catMaybes+ [("totalItems" .=) <$> _tlTotalItems,+ ("etag" .=) <$> _tlEtag,+ ("nextPageToken" .=) <$> _tlNextPageToken,+ Just ("kind" .= _tlKind),+ ("tables" .=) <$> _tlTables])++--+-- /See:/ 'dataSetListDataSetsItem' smart constructor.+data DataSetListDataSetsItem = DataSetListDataSetsItem'+ { _dsldsiLocation :: !(Maybe Text)+ , _dsldsiFriendlyName :: !(Maybe Text)+ , _dsldsiKind :: !Text+ , _dsldsiDataSetReference :: !(Maybe DataSetReference)+ , _dsldsiId :: !(Maybe Text)+ , _dsldsiLabels :: !(Maybe DataSetListDataSetsItemLabels)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DataSetListDataSetsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dsldsiLocation'+--+-- * 'dsldsiFriendlyName'+--+-- * 'dsldsiKind'+--+-- * 'dsldsiDataSetReference'+--+-- * 'dsldsiId'+--+-- * 'dsldsiLabels'+dataSetListDataSetsItem+ :: DataSetListDataSetsItem+dataSetListDataSetsItem =+ DataSetListDataSetsItem'+ { _dsldsiLocation = Nothing+ , _dsldsiFriendlyName = Nothing+ , _dsldsiKind = "bigquery#dataset"+ , _dsldsiDataSetReference = Nothing+ , _dsldsiId = Nothing+ , _dsldsiLabels = Nothing+ }++-- | The geographic location where the data resides.+dsldsiLocation :: Lens' DataSetListDataSetsItem (Maybe Text)+dsldsiLocation+ = lens _dsldsiLocation+ (\ s a -> s{_dsldsiLocation = a})++-- | A descriptive name for the dataset, if one exists.+dsldsiFriendlyName :: Lens' DataSetListDataSetsItem (Maybe Text)+dsldsiFriendlyName+ = lens _dsldsiFriendlyName+ (\ s a -> s{_dsldsiFriendlyName = a})++-- | The resource type. This property always returns the value+-- \"bigquery#dataset\".+dsldsiKind :: Lens' DataSetListDataSetsItem Text+dsldsiKind+ = lens _dsldsiKind (\ s a -> s{_dsldsiKind = a})++-- | The dataset reference. Use this property to access specific parts of the+-- dataset\'s ID, such as project ID or dataset ID.+dsldsiDataSetReference :: Lens' DataSetListDataSetsItem (Maybe DataSetReference)+dsldsiDataSetReference+ = lens _dsldsiDataSetReference+ (\ s a -> s{_dsldsiDataSetReference = a})++-- | The fully-qualified, unique, opaque ID of the dataset.+dsldsiId :: Lens' DataSetListDataSetsItem (Maybe Text)+dsldsiId = lens _dsldsiId (\ s a -> s{_dsldsiId = a})++-- | The labels associated with this dataset. You can use these to organize+-- and group your datasets.+dsldsiLabels :: Lens' DataSetListDataSetsItem (Maybe DataSetListDataSetsItemLabels)+dsldsiLabels+ = lens _dsldsiLabels (\ s a -> s{_dsldsiLabels = a})++instance FromJSON DataSetListDataSetsItem where+ parseJSON+ = withObject "DataSetListDataSetsItem"+ (\ o ->+ DataSetListDataSetsItem' <$>+ (o .:? "location") <*> (o .:? "friendlyName") <*>+ (o .:? "kind" .!= "bigquery#dataset")+ <*> (o .:? "datasetReference")+ <*> (o .:? "id")+ <*> (o .:? "labels"))++instance ToJSON DataSetListDataSetsItem where+ toJSON DataSetListDataSetsItem'{..}+ = object+ (catMaybes+ [("location" .=) <$> _dsldsiLocation,+ ("friendlyName" .=) <$> _dsldsiFriendlyName,+ Just ("kind" .= _dsldsiKind),+ ("datasetReference" .=) <$> _dsldsiDataSetReference,+ ("id" .=) <$> _dsldsiId,+ ("labels" .=) <$> _dsldsiLabels])++--+-- /See:/ 'tableDataList' smart constructor.+data TableDataList = TableDataList'+ { _tdlEtag :: !(Maybe Text)+ , _tdlKind :: !Text+ , _tdlRows :: !(Maybe [TableRow])+ , _tdlPageToken :: !(Maybe Text)+ , _tdlTotalRows :: !(Maybe (Textual Int64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableDataList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tdlEtag'+--+-- * 'tdlKind'+--+-- * 'tdlRows'+--+-- * 'tdlPageToken'+--+-- * 'tdlTotalRows'+tableDataList+ :: TableDataList+tableDataList =+ TableDataList'+ { _tdlEtag = Nothing+ , _tdlKind = "bigquery#tableDataList"+ , _tdlRows = Nothing+ , _tdlPageToken = Nothing+ , _tdlTotalRows = Nothing+ }++-- | A hash of this page of results.+tdlEtag :: Lens' TableDataList (Maybe Text)+tdlEtag = lens _tdlEtag (\ s a -> s{_tdlEtag = a})++-- | The resource type of the response.+tdlKind :: Lens' TableDataList Text+tdlKind = lens _tdlKind (\ s a -> s{_tdlKind = a})++-- | Rows of results.+tdlRows :: Lens' TableDataList [TableRow]+tdlRows+ = lens _tdlRows (\ s a -> s{_tdlRows = a}) . _Default+ . _Coerce++-- | A token used for paging results. Providing this token instead of the+-- startIndex parameter can help you retrieve stable results when an+-- underlying table is changing.+tdlPageToken :: Lens' TableDataList (Maybe Text)+tdlPageToken+ = lens _tdlPageToken (\ s a -> s{_tdlPageToken = a})++-- | The total number of rows in the complete table.+tdlTotalRows :: Lens' TableDataList (Maybe Int64)+tdlTotalRows+ = lens _tdlTotalRows (\ s a -> s{_tdlTotalRows = a})+ . mapping _Coerce++instance FromJSON TableDataList where+ parseJSON+ = withObject "TableDataList"+ (\ o ->+ TableDataList' <$>+ (o .:? "etag") <*>+ (o .:? "kind" .!= "bigquery#tableDataList")+ <*> (o .:? "rows" .!= mempty)+ <*> (o .:? "pageToken")+ <*> (o .:? "totalRows"))++instance ToJSON TableDataList where+ toJSON TableDataList'{..}+ = object+ (catMaybes+ [("etag" .=) <$> _tdlEtag, Just ("kind" .= _tdlKind),+ ("rows" .=) <$> _tdlRows,+ ("pageToken" .=) <$> _tdlPageToken,+ ("totalRows" .=) <$> _tdlTotalRows])++--+-- /See:/ 'jobConfigurationTableCopy' smart constructor.+data JobConfigurationTableCopy = JobConfigurationTableCopy'+ { _jctcDestinationTable :: !(Maybe TableReference)+ , _jctcWriteDisPosition :: !(Maybe Text)+ , _jctcSourceTables :: !(Maybe [TableReference])+ , _jctcCreateDisPosition :: !(Maybe Text)+ , _jctcSourceTable :: !(Maybe TableReference)+ , _jctcDestinationEncryptionConfiguration :: !(Maybe EncryptionConfiguration)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobConfigurationTableCopy' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jctcDestinationTable'+--+-- * 'jctcWriteDisPosition'+--+-- * 'jctcSourceTables'+--+-- * 'jctcCreateDisPosition'+--+-- * 'jctcSourceTable'+--+-- * 'jctcDestinationEncryptionConfiguration'+jobConfigurationTableCopy+ :: JobConfigurationTableCopy+jobConfigurationTableCopy =+ JobConfigurationTableCopy'+ { _jctcDestinationTable = Nothing+ , _jctcWriteDisPosition = Nothing+ , _jctcSourceTables = Nothing+ , _jctcCreateDisPosition = Nothing+ , _jctcSourceTable = Nothing+ , _jctcDestinationEncryptionConfiguration = Nothing+ }++-- | [Required] The destination table+jctcDestinationTable :: Lens' JobConfigurationTableCopy (Maybe TableReference)+jctcDestinationTable+ = lens _jctcDestinationTable+ (\ s a -> s{_jctcDestinationTable = a})++-- | [Optional] Specifies the action that occurs if the destination table+-- already exists. The following values are supported: WRITE_TRUNCATE: If+-- the table already exists, BigQuery overwrites the table data.+-- WRITE_APPEND: If the table already exists, BigQuery appends the data to+-- the table. WRITE_EMPTY: If the table already exists and contains data, a+-- \'duplicate\' error is returned in the job result. The default value is+-- WRITE_EMPTY. Each action is atomic and only occurs if BigQuery is able+-- to complete the job successfully. Creation, truncation and append+-- actions occur as one atomic update upon job completion.+jctcWriteDisPosition :: Lens' JobConfigurationTableCopy (Maybe Text)+jctcWriteDisPosition+ = lens _jctcWriteDisPosition+ (\ s a -> s{_jctcWriteDisPosition = a})++-- | [Pick one] Source tables to copy.+jctcSourceTables :: Lens' JobConfigurationTableCopy [TableReference]+jctcSourceTables+ = lens _jctcSourceTables+ (\ s a -> s{_jctcSourceTables = a})+ . _Default+ . _Coerce++-- | [Optional] Specifies whether the job is allowed to create new tables.+-- The following values are supported: CREATE_IF_NEEDED: If the table does+-- not exist, BigQuery creates the table. CREATE_NEVER: The table must+-- already exist. If it does not, a \'notFound\' error is returned in the+-- job result. The default value is CREATE_IF_NEEDED. Creation, truncation+-- and append actions occur as one atomic update upon job completion.+jctcCreateDisPosition :: Lens' JobConfigurationTableCopy (Maybe Text)+jctcCreateDisPosition+ = lens _jctcCreateDisPosition+ (\ s a -> s{_jctcCreateDisPosition = a})++-- | [Pick one] Source table to copy.+jctcSourceTable :: Lens' JobConfigurationTableCopy (Maybe TableReference)+jctcSourceTable+ = lens _jctcSourceTable+ (\ s a -> s{_jctcSourceTable = a})++-- | Custom encryption configuration (e.g., Cloud KMS keys).+jctcDestinationEncryptionConfiguration :: Lens' JobConfigurationTableCopy (Maybe EncryptionConfiguration)+jctcDestinationEncryptionConfiguration+ = lens _jctcDestinationEncryptionConfiguration+ (\ s a ->+ s{_jctcDestinationEncryptionConfiguration = a})++instance FromJSON JobConfigurationTableCopy where+ parseJSON+ = withObject "JobConfigurationTableCopy"+ (\ o ->+ JobConfigurationTableCopy' <$>+ (o .:? "destinationTable") <*>+ (o .:? "writeDisposition")+ <*> (o .:? "sourceTables" .!= mempty)+ <*> (o .:? "createDisposition")+ <*> (o .:? "sourceTable")+ <*> (o .:? "destinationEncryptionConfiguration"))++instance ToJSON JobConfigurationTableCopy where+ toJSON JobConfigurationTableCopy'{..}+ = object+ (catMaybes+ [("destinationTable" .=) <$> _jctcDestinationTable,+ ("writeDisposition" .=) <$> _jctcWriteDisPosition,+ ("sourceTables" .=) <$> _jctcSourceTables,+ ("createDisposition" .=) <$> _jctcCreateDisPosition,+ ("sourceTable" .=) <$> _jctcSourceTable,+ ("destinationEncryptionConfiguration" .=) <$>+ _jctcDestinationEncryptionConfiguration])++--+-- /See:/ 'tableListTablesItem' smart constructor.+data TableListTablesItem = TableListTablesItem'+ { _tltiCreationTime :: !(Maybe (Textual Int64))+ , _tltiClustering :: !(Maybe Clustering)+ , _tltiTableReference :: !(Maybe TableReference)+ , _tltiFriendlyName :: !(Maybe Text)+ , _tltiKind :: !Text+ , _tltiTimePartitioning :: !(Maybe TimePartitioning)+ , _tltiView :: !(Maybe TableListTablesItemView)+ , _tltiId :: !(Maybe Text)+ , _tltiLabels :: !(Maybe TableListTablesItemLabels)+ , _tltiType :: !(Maybe Text)+ , _tltiExpirationTime :: !(Maybe (Textual Int64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableListTablesItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tltiCreationTime'+--+-- * 'tltiClustering'+--+-- * 'tltiTableReference'+--+-- * 'tltiFriendlyName'+--+-- * 'tltiKind'+--+-- * 'tltiTimePartitioning'+--+-- * 'tltiView'+--+-- * 'tltiId'+--+-- * 'tltiLabels'+--+-- * 'tltiType'+--+-- * 'tltiExpirationTime'+tableListTablesItem+ :: TableListTablesItem+tableListTablesItem =+ TableListTablesItem'+ { _tltiCreationTime = Nothing+ , _tltiClustering = Nothing+ , _tltiTableReference = Nothing+ , _tltiFriendlyName = Nothing+ , _tltiKind = "bigquery#table"+ , _tltiTimePartitioning = Nothing+ , _tltiView = Nothing+ , _tltiId = Nothing+ , _tltiLabels = Nothing+ , _tltiType = Nothing+ , _tltiExpirationTime = Nothing+ }++-- | The time when this table was created, in milliseconds since the epoch.+tltiCreationTime :: Lens' TableListTablesItem (Maybe Int64)+tltiCreationTime+ = lens _tltiCreationTime+ (\ s a -> s{_tltiCreationTime = a})+ . mapping _Coerce++-- | [Beta] Clustering specification for this table, if configured.+tltiClustering :: Lens' TableListTablesItem (Maybe Clustering)+tltiClustering+ = lens _tltiClustering+ (\ s a -> s{_tltiClustering = a})++-- | A reference uniquely identifying the table.+tltiTableReference :: Lens' TableListTablesItem (Maybe TableReference)+tltiTableReference+ = lens _tltiTableReference+ (\ s a -> s{_tltiTableReference = a})++-- | The user-friendly name for this table.+tltiFriendlyName :: Lens' TableListTablesItem (Maybe Text)+tltiFriendlyName+ = lens _tltiFriendlyName+ (\ s a -> s{_tltiFriendlyName = a})++-- | The resource type.+tltiKind :: Lens' TableListTablesItem Text+tltiKind = lens _tltiKind (\ s a -> s{_tltiKind = a})++-- | The time-based partitioning specification for this table, if configured.+tltiTimePartitioning :: Lens' TableListTablesItem (Maybe TimePartitioning)+tltiTimePartitioning+ = lens _tltiTimePartitioning+ (\ s a -> s{_tltiTimePartitioning = a})++-- | Additional details for a view.+tltiView :: Lens' TableListTablesItem (Maybe TableListTablesItemView)+tltiView = lens _tltiView (\ s a -> s{_tltiView = a})++-- | An opaque ID of the table+tltiId :: Lens' TableListTablesItem (Maybe Text)+tltiId = lens _tltiId (\ s a -> s{_tltiId = a})++-- | The labels associated with this table. You can use these to organize and+-- group your tables.+tltiLabels :: Lens' TableListTablesItem (Maybe TableListTablesItemLabels)+tltiLabels+ = lens _tltiLabels (\ s a -> s{_tltiLabels = a})++-- | The type of table. Possible values are: TABLE, VIEW.+tltiType :: Lens' TableListTablesItem (Maybe Text)+tltiType = lens _tltiType (\ s a -> s{_tltiType = a})++-- | [Optional] The time when this table expires, in milliseconds since the+-- epoch. If not present, the table will persist indefinitely. Expired+-- tables will be deleted and their storage reclaimed.+tltiExpirationTime :: Lens' TableListTablesItem (Maybe Int64)+tltiExpirationTime+ = lens _tltiExpirationTime+ (\ s a -> s{_tltiExpirationTime = a})+ . mapping _Coerce++instance FromJSON TableListTablesItem where+ parseJSON+ = withObject "TableListTablesItem"+ (\ o ->+ TableListTablesItem' <$>+ (o .:? "creationTime") <*> (o .:? "clustering") <*>+ (o .:? "tableReference")+ <*> (o .:? "friendlyName")+ <*> (o .:? "kind" .!= "bigquery#table")+ <*> (o .:? "timePartitioning")+ <*> (o .:? "view")+ <*> (o .:? "id")+ <*> (o .:? "labels")+ <*> (o .:? "type")+ <*> (o .:? "expirationTime"))++instance ToJSON TableListTablesItem where+ toJSON TableListTablesItem'{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _tltiCreationTime,+ ("clustering" .=) <$> _tltiClustering,+ ("tableReference" .=) <$> _tltiTableReference,+ ("friendlyName" .=) <$> _tltiFriendlyName,+ Just ("kind" .= _tltiKind),+ ("timePartitioning" .=) <$> _tltiTimePartitioning,+ ("view" .=) <$> _tltiView, ("id" .=) <$> _tltiId,+ ("labels" .=) <$> _tltiLabels,+ ("type" .=) <$> _tltiType,+ ("expirationTime" .=) <$> _tltiExpirationTime])++--+-- /See:/ 'tableSchema' smart constructor.+newtype TableSchema = TableSchema'+ { _tsFields :: Maybe [TableFieldSchema]+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableSchema' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tsFields'+tableSchema+ :: TableSchema+tableSchema =+ TableSchema'+ { _tsFields = Nothing+ }++-- | Describes the fields in a table.+tsFields :: Lens' TableSchema [TableFieldSchema]+tsFields+ = lens _tsFields (\ s a -> s{_tsFields = a}) .+ _Default+ . _Coerce++instance FromJSON TableSchema where+ parseJSON+ = withObject "TableSchema"+ (\ o -> TableSchema' <$> (o .:? "fields" .!= mempty))++instance ToJSON TableSchema where+ toJSON TableSchema'{..}+ = object (catMaybes [("fields" .=) <$> _tsFields])++--+-- /See:/ 'projectList' smart constructor.+data ProjectList = ProjectList'+ { _plTotalItems :: !(Maybe (Textual Int32))+ , _plEtag :: !(Maybe Text)+ , _plNextPageToken :: !(Maybe Text)+ , _plKind :: !Text+ , _plProjects :: !(Maybe [ProjectListProjectsItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProjectList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'plTotalItems'+--+-- * 'plEtag'+--+-- * 'plNextPageToken'+--+-- * 'plKind'+--+-- * 'plProjects'+projectList+ :: ProjectList+projectList =+ ProjectList'+ { _plTotalItems = Nothing+ , _plEtag = Nothing+ , _plNextPageToken = Nothing+ , _plKind = "bigquery#projectList"+ , _plProjects = Nothing+ }++-- | The total number of projects in the list.+plTotalItems :: Lens' ProjectList (Maybe Int32)+plTotalItems+ = lens _plTotalItems (\ s a -> s{_plTotalItems = a})+ . mapping _Coerce++-- | A hash of the page of results+plEtag :: Lens' ProjectList (Maybe Text)+plEtag = lens _plEtag (\ s a -> s{_plEtag = a})++-- | A token to request the next page of results.+plNextPageToken :: Lens' ProjectList (Maybe Text)+plNextPageToken+ = lens _plNextPageToken+ (\ s a -> s{_plNextPageToken = a})++-- | The type of list.+plKind :: Lens' ProjectList Text+plKind = lens _plKind (\ s a -> s{_plKind = a})++-- | Projects to which you have at least READ access.+plProjects :: Lens' ProjectList [ProjectListProjectsItem]+plProjects+ = lens _plProjects (\ s a -> s{_plProjects = a}) .+ _Default+ . _Coerce++instance FromJSON ProjectList where+ parseJSON+ = withObject "ProjectList"+ (\ o ->+ ProjectList' <$>+ (o .:? "totalItems") <*> (o .:? "etag") <*>+ (o .:? "nextPageToken")+ <*> (o .:? "kind" .!= "bigquery#projectList")+ <*> (o .:? "projects" .!= mempty))++instance ToJSON ProjectList where+ toJSON ProjectList'{..}+ = object+ (catMaybes+ [("totalItems" .=) <$> _plTotalItems,+ ("etag" .=) <$> _plEtag,+ ("nextPageToken" .=) <$> _plNextPageToken,+ Just ("kind" .= _plKind),+ ("projects" .=) <$> _plProjects])++--+-- /See:/ 'explainQueryStep' smart constructor.+data ExplainQueryStep = ExplainQueryStep'+ { _eqsSubsteps :: !(Maybe [Text])+ , _eqsKind :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ExplainQueryStep' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eqsSubsteps'+--+-- * 'eqsKind'+explainQueryStep+ :: ExplainQueryStep+explainQueryStep =+ ExplainQueryStep'+ { _eqsSubsteps = Nothing+ , _eqsKind = Nothing+ }++-- | Human-readable stage descriptions.+eqsSubsteps :: Lens' ExplainQueryStep [Text]+eqsSubsteps+ = lens _eqsSubsteps (\ s a -> s{_eqsSubsteps = a}) .+ _Default+ . _Coerce++-- | Machine-readable operation type.+eqsKind :: Lens' ExplainQueryStep (Maybe Text)+eqsKind = lens _eqsKind (\ s a -> s{_eqsKind = a})++instance FromJSON ExplainQueryStep where+ parseJSON+ = withObject "ExplainQueryStep"+ (\ o ->+ ExplainQueryStep' <$>+ (o .:? "substeps" .!= mempty) <*> (o .:? "kind"))++instance ToJSON ExplainQueryStep where+ toJSON ExplainQueryStep'{..}+ = object+ (catMaybes+ [("substeps" .=) <$> _eqsSubsteps,+ ("kind" .=) <$> _eqsKind])++--+-- /See:/ 'queryTimelineSample' smart constructor.+data QueryTimelineSample = QueryTimelineSample'+ { _qtsPendingUnits :: !(Maybe (Textual Int64))+ , _qtsTotalSlotMs :: !(Maybe (Textual Int64))+ , _qtsActiveUnits :: !(Maybe (Textual Int64))+ , _qtsElapsedMs :: !(Maybe (Textual Int64))+ , _qtsCompletedUnits :: !(Maybe (Textual Int64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'QueryTimelineSample' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'qtsPendingUnits'+--+-- * 'qtsTotalSlotMs'+--+-- * 'qtsActiveUnits'+--+-- * 'qtsElapsedMs'+--+-- * 'qtsCompletedUnits'+queryTimelineSample+ :: QueryTimelineSample+queryTimelineSample =+ QueryTimelineSample'+ { _qtsPendingUnits = Nothing+ , _qtsTotalSlotMs = Nothing+ , _qtsActiveUnits = Nothing+ , _qtsElapsedMs = Nothing+ , _qtsCompletedUnits = Nothing+ }++-- | Total parallel units of work remaining for the active stages.+qtsPendingUnits :: Lens' QueryTimelineSample (Maybe Int64)+qtsPendingUnits+ = lens _qtsPendingUnits+ (\ s a -> s{_qtsPendingUnits = a})+ . mapping _Coerce++-- | Cumulative slot-ms consumed by the query.+qtsTotalSlotMs :: Lens' QueryTimelineSample (Maybe Int64)+qtsTotalSlotMs+ = lens _qtsTotalSlotMs+ (\ s a -> s{_qtsTotalSlotMs = a})+ . mapping _Coerce++-- | Total number of units currently being processed by workers. This does+-- not correspond directly to slot usage. This is the largest value+-- observed since the last sample.+qtsActiveUnits :: Lens' QueryTimelineSample (Maybe Int64)+qtsActiveUnits+ = lens _qtsActiveUnits+ (\ s a -> s{_qtsActiveUnits = a})+ . mapping _Coerce++-- | Milliseconds elapsed since the start of query execution.+qtsElapsedMs :: Lens' QueryTimelineSample (Maybe Int64)+qtsElapsedMs+ = lens _qtsElapsedMs (\ s a -> s{_qtsElapsedMs = a})+ . mapping _Coerce++-- | Total parallel units of work completed by this query.+qtsCompletedUnits :: Lens' QueryTimelineSample (Maybe Int64)+qtsCompletedUnits+ = lens _qtsCompletedUnits+ (\ s a -> s{_qtsCompletedUnits = a})+ . mapping _Coerce++instance FromJSON QueryTimelineSample where+ parseJSON+ = withObject "QueryTimelineSample"+ (\ o ->+ QueryTimelineSample' <$>+ (o .:? "pendingUnits") <*> (o .:? "totalSlotMs") <*>+ (o .:? "activeUnits")+ <*> (o .:? "elapsedMs")+ <*> (o .:? "completedUnits"))++instance ToJSON QueryTimelineSample where+ toJSON QueryTimelineSample'{..}+ = object+ (catMaybes+ [("pendingUnits" .=) <$> _qtsPendingUnits,+ ("totalSlotMs" .=) <$> _qtsTotalSlotMs,+ ("activeUnits" .=) <$> _qtsActiveUnits,+ ("elapsedMs" .=) <$> _qtsElapsedMs,+ ("completedUnits" .=) <$> _qtsCompletedUnits])++--+-- /See:/ 'queryParameterTypeStructTypesItem' smart constructor.+data QueryParameterTypeStructTypesItem = QueryParameterTypeStructTypesItem'+ { _qptstiName :: !(Maybe Text)+ , _qptstiType :: !(Maybe QueryParameterType)+ , _qptstiDescription :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'QueryParameterTypeStructTypesItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'qptstiName'+--+-- * 'qptstiType'+--+-- * 'qptstiDescription'+queryParameterTypeStructTypesItem+ :: QueryParameterTypeStructTypesItem+queryParameterTypeStructTypesItem =+ QueryParameterTypeStructTypesItem'+ { _qptstiName = Nothing+ , _qptstiType = Nothing+ , _qptstiDescription = Nothing+ }++-- | [Optional] The name of this field.+qptstiName :: Lens' QueryParameterTypeStructTypesItem (Maybe Text)+qptstiName+ = lens _qptstiName (\ s a -> s{_qptstiName = a})++-- | [Required] The type of this field.+qptstiType :: Lens' QueryParameterTypeStructTypesItem (Maybe QueryParameterType)+qptstiType+ = lens _qptstiType (\ s a -> s{_qptstiType = a})++-- | [Optional] Human-oriented description of the field.+qptstiDescription :: Lens' QueryParameterTypeStructTypesItem (Maybe Text)+qptstiDescription+ = lens _qptstiDescription+ (\ s a -> s{_qptstiDescription = a})++instance FromJSON QueryParameterTypeStructTypesItem+ where+ parseJSON+ = withObject "QueryParameterTypeStructTypesItem"+ (\ o ->+ QueryParameterTypeStructTypesItem' <$>+ (o .:? "name") <*> (o .:? "type") <*>+ (o .:? "description"))++instance ToJSON QueryParameterTypeStructTypesItem+ where+ toJSON QueryParameterTypeStructTypesItem'{..}+ = object+ (catMaybes+ [("name" .=) <$> _qptstiName,+ ("type" .=) <$> _qptstiType,+ ("description" .=) <$> _qptstiDescription])++--+-- /See:/ 'bigtableColumnFamily' smart constructor.+data BigtableColumnFamily = BigtableColumnFamily'+ { _bcfFamilyId :: !(Maybe Text)+ , _bcfColumns :: !(Maybe [BigtableColumn])+ , _bcfOnlyReadLatest :: !(Maybe Bool)+ , _bcfType :: !(Maybe Text)+ , _bcfEncoding :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'BigtableColumnFamily' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bcfFamilyId'+--+-- * 'bcfColumns'+--+-- * 'bcfOnlyReadLatest'+--+-- * 'bcfType'+--+-- * 'bcfEncoding'+bigtableColumnFamily+ :: BigtableColumnFamily+bigtableColumnFamily =+ BigtableColumnFamily'+ { _bcfFamilyId = Nothing+ , _bcfColumns = Nothing+ , _bcfOnlyReadLatest = Nothing+ , _bcfType = Nothing+ , _bcfEncoding = Nothing+ }++-- | Identifier of the column family.+bcfFamilyId :: Lens' BigtableColumnFamily (Maybe Text)+bcfFamilyId+ = lens _bcfFamilyId (\ s a -> s{_bcfFamilyId = a})++-- | [Optional] Lists of columns that should be exposed as individual fields+-- as opposed to a list of (column name, value) pairs. All columns whose+-- qualifier matches a qualifier in this list can be accessed as .. Other+-- columns can be accessed as a list through .Column field.+bcfColumns :: Lens' BigtableColumnFamily [BigtableColumn]+bcfColumns+ = lens _bcfColumns (\ s a -> s{_bcfColumns = a}) .+ _Default+ . _Coerce++-- | [Optional] If this is set only the latest version of value are exposed+-- for all columns in this column family. This can be overridden for a+-- specific column by listing that column in \'columns\' and specifying a+-- different setting for that column.+bcfOnlyReadLatest :: Lens' BigtableColumnFamily (Maybe Bool)+bcfOnlyReadLatest+ = lens _bcfOnlyReadLatest+ (\ s a -> s{_bcfOnlyReadLatest = a})++-- | [Optional] The type to convert the value in cells of this column family.+-- The values are expected to be encoded using HBase Bytes.toBytes function+-- when using the BINARY encoding value. Following BigQuery types are+-- allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default+-- type is BYTES. This can be overridden for a specific column by listing+-- that column in \'columns\' and specifying a type for it.+bcfType :: Lens' BigtableColumnFamily (Maybe Text)+bcfType = lens _bcfType (\ s a -> s{_bcfType = a})++-- | [Optional] The encoding of the values when the type is not STRING.+-- Acceptable encoding values are: TEXT - indicates values are alphanumeric+-- text strings. BINARY - indicates values are encoded using HBase+-- Bytes.toBytes family of functions. This can be overridden for a specific+-- column by listing that column in \'columns\' and specifying an encoding+-- for it.+bcfEncoding :: Lens' BigtableColumnFamily (Maybe Text)+bcfEncoding+ = lens _bcfEncoding (\ s a -> s{_bcfEncoding = a})++instance FromJSON BigtableColumnFamily where+ parseJSON+ = withObject "BigtableColumnFamily"+ (\ o ->+ BigtableColumnFamily' <$>+ (o .:? "familyId") <*> (o .:? "columns" .!= mempty)+ <*> (o .:? "onlyReadLatest")+ <*> (o .:? "type")+ <*> (o .:? "encoding"))++instance ToJSON BigtableColumnFamily where+ toJSON BigtableColumnFamily'{..}+ = object+ (catMaybes+ [("familyId" .=) <$> _bcfFamilyId,+ ("columns" .=) <$> _bcfColumns,+ ("onlyReadLatest" .=) <$> _bcfOnlyReadLatest,+ ("type" .=) <$> _bcfType,+ ("encoding" .=) <$> _bcfEncoding])++--+-- /See:/ 'jobStatistics' smart constructor.+data JobStatistics = JobStatistics'+ { _jsCreationTime :: !(Maybe (Textual Int64))+ , _jsStartTime :: !(Maybe (Textual Int64))+ , _jsCompletionRatio :: !(Maybe (Textual Double))+ , _jsTotalSlotMs :: !(Maybe (Textual Int64))+ , _jsLoad :: !(Maybe JobStatistics3)+ , _jsTotalBytesProcessed :: !(Maybe (Textual Int64))+ , _jsQuotaDeferments :: !(Maybe [Text])+ , _jsEndTime :: !(Maybe (Textual Int64))+ , _jsQuery :: !(Maybe JobStatistics2)+ , _jsExtract :: !(Maybe JobStatistics4)+ , _jsReservationUsage :: !(Maybe [JobStatisticsReservationUsageItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobStatistics' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jsCreationTime'+--+-- * 'jsStartTime'+--+-- * 'jsCompletionRatio'+--+-- * 'jsTotalSlotMs'+--+-- * 'jsLoad'+--+-- * 'jsTotalBytesProcessed'+--+-- * 'jsQuotaDeferments'+--+-- * 'jsEndTime'+--+-- * 'jsQuery'+--+-- * 'jsExtract'+--+-- * 'jsReservationUsage'+jobStatistics+ :: JobStatistics+jobStatistics =+ JobStatistics'+ { _jsCreationTime = Nothing+ , _jsStartTime = Nothing+ , _jsCompletionRatio = Nothing+ , _jsTotalSlotMs = Nothing+ , _jsLoad = Nothing+ , _jsTotalBytesProcessed = Nothing+ , _jsQuotaDeferments = Nothing+ , _jsEndTime = Nothing+ , _jsQuery = Nothing+ , _jsExtract = Nothing+ , _jsReservationUsage = Nothing+ }++-- | [Output-only] Creation time of this job, in milliseconds since the+-- epoch. This field will be present on all jobs.+jsCreationTime :: Lens' JobStatistics (Maybe Int64)+jsCreationTime+ = lens _jsCreationTime+ (\ s a -> s{_jsCreationTime = a})+ . mapping _Coerce++-- | [Output-only] Start time of this job, in milliseconds since the epoch.+-- This field will be present when the job transitions from the PENDING+-- state to either RUNNING or DONE.+jsStartTime :: Lens' JobStatistics (Maybe Int64)+jsStartTime+ = lens _jsStartTime (\ s a -> s{_jsStartTime = a}) .+ mapping _Coerce++-- | [TrustedTester] [Output-only] Job progress (0.0 -> 1.0) for LOAD and+-- EXTRACT jobs.+jsCompletionRatio :: Lens' JobStatistics (Maybe Double)+jsCompletionRatio+ = lens _jsCompletionRatio+ (\ s a -> s{_jsCompletionRatio = a})+ . mapping _Coerce++-- | [Output-only] Slot-milliseconds for the job.+jsTotalSlotMs :: Lens' JobStatistics (Maybe Int64)+jsTotalSlotMs+ = lens _jsTotalSlotMs+ (\ s a -> s{_jsTotalSlotMs = a})+ . mapping _Coerce++-- | [Output-only] Statistics for a load job.+jsLoad :: Lens' JobStatistics (Maybe JobStatistics3)+jsLoad = lens _jsLoad (\ s a -> s{_jsLoad = a})++-- | [Output-only] [Deprecated] Use the bytes processed in the query+-- statistics instead.+jsTotalBytesProcessed :: Lens' JobStatistics (Maybe Int64)+jsTotalBytesProcessed+ = lens _jsTotalBytesProcessed+ (\ s a -> s{_jsTotalBytesProcessed = a})+ . mapping _Coerce++-- | [Output-only] Quotas which delayed this job\'s start time.+jsQuotaDeferments :: Lens' JobStatistics [Text]+jsQuotaDeferments+ = lens _jsQuotaDeferments+ (\ s a -> s{_jsQuotaDeferments = a})+ . _Default+ . _Coerce++-- | [Output-only] End time of this job, in milliseconds since the epoch.+-- This field will be present whenever a job is in the DONE state.+jsEndTime :: Lens' JobStatistics (Maybe Int64)+jsEndTime+ = lens _jsEndTime (\ s a -> s{_jsEndTime = a}) .+ mapping _Coerce++-- | [Output-only] Statistics for a query job.+jsQuery :: Lens' JobStatistics (Maybe JobStatistics2)+jsQuery = lens _jsQuery (\ s a -> s{_jsQuery = a})++-- | [Output-only] Statistics for an extract job.+jsExtract :: Lens' JobStatistics (Maybe JobStatistics4)+jsExtract+ = lens _jsExtract (\ s a -> s{_jsExtract = a})++-- | [Output-only] Job resource usage breakdown by reservation.+jsReservationUsage :: Lens' JobStatistics [JobStatisticsReservationUsageItem]+jsReservationUsage+ = lens _jsReservationUsage+ (\ s a -> s{_jsReservationUsage = a})+ . _Default+ . _Coerce++instance FromJSON JobStatistics where+ parseJSON+ = withObject "JobStatistics"+ (\ o ->+ JobStatistics' <$>+ (o .:? "creationTime") <*> (o .:? "startTime") <*>+ (o .:? "completionRatio")+ <*> (o .:? "totalSlotMs")+ <*> (o .:? "load")+ <*> (o .:? "totalBytesProcessed")+ <*> (o .:? "quotaDeferments" .!= mempty)+ <*> (o .:? "endTime")+ <*> (o .:? "query")+ <*> (o .:? "extract")+ <*> (o .:? "reservationUsage" .!= mempty))++instance ToJSON JobStatistics where+ toJSON JobStatistics'{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _jsCreationTime,+ ("startTime" .=) <$> _jsStartTime,+ ("completionRatio" .=) <$> _jsCompletionRatio,+ ("totalSlotMs" .=) <$> _jsTotalSlotMs,+ ("load" .=) <$> _jsLoad,+ ("totalBytesProcessed" .=) <$>+ _jsTotalBytesProcessed,+ ("quotaDeferments" .=) <$> _jsQuotaDeferments,+ ("endTime" .=) <$> _jsEndTime,+ ("query" .=) <$> _jsQuery,+ ("extract" .=) <$> _jsExtract,+ ("reservationUsage" .=) <$> _jsReservationUsage])++-- | The labels associated with this job. You can use these to organize and+-- group your jobs. Label keys and values can be no longer than 63+-- characters, can only contain lowercase letters, numeric characters,+-- underscores and dashes. International characters are allowed. Label+-- values are optional. Label keys must start with a letter and each label+-- in the list must have a different key.+--+-- /See:/ 'jobConfigurationLabels' smart constructor.+newtype JobConfigurationLabels = JobConfigurationLabels'+ { _jclAddtional :: HashMap Text Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobConfigurationLabels' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jclAddtional'+jobConfigurationLabels+ :: HashMap Text Text -- ^ 'jclAddtional'+ -> JobConfigurationLabels+jobConfigurationLabels pJclAddtional_ =+ JobConfigurationLabels'+ { _jclAddtional = _Coerce # pJclAddtional_+ }++jclAddtional :: Lens' JobConfigurationLabels (HashMap Text Text)+jclAddtional+ = lens _jclAddtional (\ s a -> s{_jclAddtional = a})+ . _Coerce++instance FromJSON JobConfigurationLabels where+ parseJSON+ = withObject "JobConfigurationLabels"+ (\ o ->+ JobConfigurationLabels' <$> (parseJSONObject o))++instance ToJSON JobConfigurationLabels where+ toJSON = toJSON . _jclAddtional++--+-- /See:/ 'dataSet' smart constructor.+data DataSet = DataSet'+ { _dsCreationTime :: !(Maybe (Textual Int64))+ , _dsDefaultPartitionExpirationMs :: !(Maybe (Textual Int64))+ , _dsAccess :: !(Maybe [DataSetAccessItem])+ , _dsEtag :: !(Maybe Text)+ , _dsLocation :: !(Maybe Text)+ , _dsFriendlyName :: !(Maybe Text)+ , _dsKind :: !Text+ , _dsLastModifiedTime :: !(Maybe (Textual Int64))+ , _dsDataSetReference :: !(Maybe DataSetReference)+ , _dsSelfLink :: !(Maybe Text)+ , _dsId :: !(Maybe Text)+ , _dsLabels :: !(Maybe DataSetLabels)+ , _dsDefaultTableExpirationMs :: !(Maybe (Textual Int64))+ , _dsDescription :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DataSet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dsCreationTime'+--+-- * 'dsDefaultPartitionExpirationMs'+--+-- * 'dsAccess'+--+-- * 'dsEtag'+--+-- * 'dsLocation'+--+-- * 'dsFriendlyName'+--+-- * 'dsKind'+--+-- * 'dsLastModifiedTime'+--+-- * 'dsDataSetReference'+--+-- * 'dsSelfLink'+--+-- * 'dsId'+--+-- * 'dsLabels'+--+-- * 'dsDefaultTableExpirationMs'+--+-- * 'dsDescription'+dataSet+ :: DataSet+dataSet =+ DataSet'+ { _dsCreationTime = Nothing+ , _dsDefaultPartitionExpirationMs = Nothing+ , _dsAccess = Nothing+ , _dsEtag = Nothing+ , _dsLocation = Nothing+ , _dsFriendlyName = Nothing+ , _dsKind = "bigquery#dataset"+ , _dsLastModifiedTime = Nothing+ , _dsDataSetReference = Nothing+ , _dsSelfLink = Nothing+ , _dsId = Nothing+ , _dsLabels = Nothing+ , _dsDefaultTableExpirationMs = Nothing+ , _dsDescription = Nothing+ }++-- | [Output-only] The time when this dataset was created, in milliseconds+-- since the epoch.+dsCreationTime :: Lens' DataSet (Maybe Int64)+dsCreationTime+ = lens _dsCreationTime+ (\ s a -> s{_dsCreationTime = a})+ . mapping _Coerce++-- | [Optional] The default partition expiration for all partitioned tables+-- in the dataset, in milliseconds. Once this property is set, all+-- newly-created partitioned tables in the dataset will have an+-- expirationMs property in the timePartitioning settings set to this+-- value, and changing the value will only affect new tables, not existing+-- ones. The storage in a partition will have an expiration time of its+-- partition time plus this value. Setting this property overrides the use+-- of defaultTableExpirationMs for partitioned tables: only one of+-- defaultTableExpirationMs and defaultPartitionExpirationMs will be used+-- for any new partitioned table. If you provide an explicit+-- timePartitioning.expirationMs when creating or updating a partitioned+-- table, that value takes precedence over the default partition expiration+-- time indicated by this property.+dsDefaultPartitionExpirationMs :: Lens' DataSet (Maybe Int64)+dsDefaultPartitionExpirationMs+ = lens _dsDefaultPartitionExpirationMs+ (\ s a -> s{_dsDefaultPartitionExpirationMs = a})+ . mapping _Coerce++-- | [Optional] An array of objects that define dataset access for one or+-- more entities. You can set this property when inserting or updating a+-- dataset in order to control who is allowed to access the data. If+-- unspecified at dataset creation time, BigQuery adds default dataset+-- access for the following entities: access.specialGroup: projectReaders;+-- access.role: READER; access.specialGroup: projectWriters; access.role:+-- WRITER; access.specialGroup: projectOwners; access.role: OWNER;+-- access.userByEmail: [dataset creator email]; access.role: OWNER;+dsAccess :: Lens' DataSet [DataSetAccessItem]+dsAccess+ = lens _dsAccess (\ s a -> s{_dsAccess = a}) .+ _Default+ . _Coerce++-- | [Output-only] A hash of the resource.+dsEtag :: Lens' DataSet (Maybe Text)+dsEtag = lens _dsEtag (\ s a -> s{_dsEtag = a})++-- | The geographic location where the dataset should reside. The default+-- value is US. See details at+-- https:\/\/cloud.google.com\/bigquery\/docs\/locations.+dsLocation :: Lens' DataSet (Maybe Text)+dsLocation+ = lens _dsLocation (\ s a -> s{_dsLocation = a})++-- | [Optional] A descriptive name for the dataset.+dsFriendlyName :: Lens' DataSet (Maybe Text)+dsFriendlyName+ = lens _dsFriendlyName+ (\ s a -> s{_dsFriendlyName = a})++-- | [Output-only] The resource type.+dsKind :: Lens' DataSet Text+dsKind = lens _dsKind (\ s a -> s{_dsKind = a})++-- | [Output-only] The date when this dataset or any of its tables was last+-- modified, in milliseconds since the epoch.+dsLastModifiedTime :: Lens' DataSet (Maybe Int64)+dsLastModifiedTime+ = lens _dsLastModifiedTime+ (\ s a -> s{_dsLastModifiedTime = a})+ . mapping _Coerce++-- | [Required] A reference that identifies the dataset.+dsDataSetReference :: Lens' DataSet (Maybe DataSetReference)+dsDataSetReference+ = lens _dsDataSetReference+ (\ s a -> s{_dsDataSetReference = a})++-- | [Output-only] A URL that can be used to access the resource again. You+-- can use this URL in Get or Update requests to the resource.+dsSelfLink :: Lens' DataSet (Maybe Text)+dsSelfLink+ = lens _dsSelfLink (\ s a -> s{_dsSelfLink = a})++-- | [Output-only] The fully-qualified unique name of the dataset in the+-- format projectId:datasetId. The dataset name without the project name is+-- given in the datasetId field. When creating a new dataset, leave this+-- field blank, and instead specify the datasetId field.+dsId :: Lens' DataSet (Maybe Text)+dsId = lens _dsId (\ s a -> s{_dsId = a})++-- | The labels associated with this dataset. You can use these to organize+-- and group your datasets. You can set this property when inserting or+-- updating a dataset. See Creating and Updating Dataset Labels for more+-- information.+dsLabels :: Lens' DataSet (Maybe DataSetLabels)+dsLabels = lens _dsLabels (\ s a -> s{_dsLabels = a})++-- | [Optional] The default lifetime of all tables in the dataset, in+-- milliseconds. The minimum value is 3600000 milliseconds (one hour). Once+-- this property is set, all newly-created tables in the dataset will have+-- an expirationTime property set to the creation time plus the value in+-- this property, and changing the value will only affect new tables, not+-- existing ones. When the expirationTime for a given table is reached,+-- that table will be deleted automatically. If a table\'s expirationTime+-- is modified or removed before the table expires, or if you provide an+-- explicit expirationTime when creating a table, that value takes+-- precedence over the default expiration time indicated by this property.+dsDefaultTableExpirationMs :: Lens' DataSet (Maybe Int64)+dsDefaultTableExpirationMs+ = lens _dsDefaultTableExpirationMs+ (\ s a -> s{_dsDefaultTableExpirationMs = a})+ . mapping _Coerce++-- | [Optional] A user-friendly description of the dataset.+dsDescription :: Lens' DataSet (Maybe Text)+dsDescription+ = lens _dsDescription+ (\ s a -> s{_dsDescription = a})++instance FromJSON DataSet where+ parseJSON+ = withObject "DataSet"+ (\ o ->+ DataSet' <$>+ (o .:? "creationTime") <*>+ (o .:? "defaultPartitionExpirationMs")+ <*> (o .:? "access" .!= mempty)+ <*> (o .:? "etag")+ <*> (o .:? "location")+ <*> (o .:? "friendlyName")+ <*> (o .:? "kind" .!= "bigquery#dataset")+ <*> (o .:? "lastModifiedTime")+ <*> (o .:? "datasetReference")+ <*> (o .:? "selfLink")+ <*> (o .:? "id")+ <*> (o .:? "labels")+ <*> (o .:? "defaultTableExpirationMs")+ <*> (o .:? "description"))++instance ToJSON DataSet where+ toJSON DataSet'{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _dsCreationTime,+ ("defaultPartitionExpirationMs" .=) <$>+ _dsDefaultPartitionExpirationMs,+ ("access" .=) <$> _dsAccess, ("etag" .=) <$> _dsEtag,+ ("location" .=) <$> _dsLocation,+ ("friendlyName" .=) <$> _dsFriendlyName,+ Just ("kind" .= _dsKind),+ ("lastModifiedTime" .=) <$> _dsLastModifiedTime,+ ("datasetReference" .=) <$> _dsDataSetReference,+ ("selfLink" .=) <$> _dsSelfLink, ("id" .=) <$> _dsId,+ ("labels" .=) <$> _dsLabels,+ ("defaultTableExpirationMs" .=) <$>+ _dsDefaultTableExpirationMs,+ ("description" .=) <$> _dsDescription])++-- | [TrustedTester] [Required] Defines the ranges for range partitioning.+--+-- /See:/ 'rangePartitioningRange' smart constructor.+data RangePartitioningRange = RangePartitioningRange'+ { _rprStart :: !(Maybe (Textual Int64))+ , _rprInterval :: !(Maybe (Textual Int64))+ , _rprEnd :: !(Maybe (Textual Int64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RangePartitioningRange' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rprStart'+--+-- * 'rprInterval'+--+-- * 'rprEnd'+rangePartitioningRange+ :: RangePartitioningRange+rangePartitioningRange =+ RangePartitioningRange'+ { _rprStart = Nothing+ , _rprInterval = Nothing+ , _rprEnd = Nothing+ }++-- | [TrustedTester] [Required] The start of range partitioning, inclusive.+rprStart :: Lens' RangePartitioningRange (Maybe Int64)+rprStart+ = lens _rprStart (\ s a -> s{_rprStart = a}) .+ mapping _Coerce++-- | [TrustedTester] [Required] The width of each interval.+rprInterval :: Lens' RangePartitioningRange (Maybe Int64)+rprInterval+ = lens _rprInterval (\ s a -> s{_rprInterval = a}) .+ mapping _Coerce++-- | [TrustedTester] [Required] The end of range partitioning, exclusive.+rprEnd :: Lens' RangePartitioningRange (Maybe Int64)+rprEnd+ = lens _rprEnd (\ s a -> s{_rprEnd = a}) .+ mapping _Coerce++instance FromJSON RangePartitioningRange where+ parseJSON+ = withObject "RangePartitioningRange"+ (\ o ->+ RangePartitioningRange' <$>+ (o .:? "start") <*> (o .:? "interval") <*>+ (o .:? "end"))++instance ToJSON RangePartitioningRange where+ toJSON RangePartitioningRange'{..}+ = object+ (catMaybes+ [("start" .=) <$> _rprStart,+ ("interval" .=) <$> _rprInterval,+ ("end" .=) <$> _rprEnd])++--+-- /See:/ 'jobStatisticsReservationUsageItem' smart constructor.+data JobStatisticsReservationUsageItem = JobStatisticsReservationUsageItem'+ { _jsruiName :: !(Maybe Text)+ , _jsruiSlotMs :: !(Maybe (Textual Int64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobStatisticsReservationUsageItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jsruiName'+--+-- * 'jsruiSlotMs'+jobStatisticsReservationUsageItem+ :: JobStatisticsReservationUsageItem+jobStatisticsReservationUsageItem =+ JobStatisticsReservationUsageItem'+ { _jsruiName = Nothing+ , _jsruiSlotMs = Nothing+ }++-- | [Output-only] Reservation name or \"unreserved\" for on-demand resources+-- usage.+jsruiName :: Lens' JobStatisticsReservationUsageItem (Maybe Text)+jsruiName+ = lens _jsruiName (\ s a -> s{_jsruiName = a})++-- | [Output-only] Slot-milliseconds the job spent in the given reservation.+jsruiSlotMs :: Lens' JobStatisticsReservationUsageItem (Maybe Int64)+jsruiSlotMs+ = lens _jsruiSlotMs (\ s a -> s{_jsruiSlotMs = a}) .+ mapping _Coerce++instance FromJSON JobStatisticsReservationUsageItem+ where+ parseJSON+ = withObject "JobStatisticsReservationUsageItem"+ (\ o ->+ JobStatisticsReservationUsageItem' <$>+ (o .:? "name") <*> (o .:? "slotMs"))++instance ToJSON JobStatisticsReservationUsageItem+ where+ toJSON JobStatisticsReservationUsageItem'{..}+ = object+ (catMaybes+ [("name" .=) <$> _jsruiName,+ ("slotMs" .=) <$> _jsruiSlotMs])++--+-- /See:/ 'bigtableOptions' smart constructor.+data BigtableOptions = BigtableOptions'+ { _boReadRowkeyAsString :: !(Maybe Bool)+ , _boIgnoreUnspecifiedColumnFamilies :: !(Maybe Bool)+ , _boColumnFamilies :: !(Maybe [BigtableColumnFamily])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'BigtableOptions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'boReadRowkeyAsString'+--+-- * 'boIgnoreUnspecifiedColumnFamilies'+--+-- * 'boColumnFamilies'+bigtableOptions+ :: BigtableOptions+bigtableOptions =+ BigtableOptions'+ { _boReadRowkeyAsString = Nothing+ , _boIgnoreUnspecifiedColumnFamilies = Nothing+ , _boColumnFamilies = Nothing+ }++-- | [Optional] If field is true, then the rowkey column families will be+-- read and converted to string. Otherwise they are read with BYTES type+-- values and users need to manually cast them with CAST if necessary. The+-- default value is false.+boReadRowkeyAsString :: Lens' BigtableOptions (Maybe Bool)+boReadRowkeyAsString+ = lens _boReadRowkeyAsString+ (\ s a -> s{_boReadRowkeyAsString = a})++-- | [Optional] If field is true, then the column families that are not+-- specified in columnFamilies list are not exposed in the table schema.+-- Otherwise, they are read with BYTES type values. The default value is+-- false.+boIgnoreUnspecifiedColumnFamilies :: Lens' BigtableOptions (Maybe Bool)+boIgnoreUnspecifiedColumnFamilies+ = lens _boIgnoreUnspecifiedColumnFamilies+ (\ s a -> s{_boIgnoreUnspecifiedColumnFamilies = a})++-- | [Optional] List of column families to expose in the table schema along+-- with their types. This list restricts the column families that can be+-- referenced in queries and specifies their value types. You can use this+-- list to do type conversions - see the \'type\' field for more details.+-- If you leave this list empty, all column families are present in the+-- table schema and their values are read as BYTES. During a query only the+-- column families referenced in that query are read from Bigtable.+boColumnFamilies :: Lens' BigtableOptions [BigtableColumnFamily]+boColumnFamilies+ = lens _boColumnFamilies+ (\ s a -> s{_boColumnFamilies = a})+ . _Default+ . _Coerce++instance FromJSON BigtableOptions where+ parseJSON+ = withObject "BigtableOptions"+ (\ o ->+ BigtableOptions' <$>+ (o .:? "readRowkeyAsString") <*>+ (o .:? "ignoreUnspecifiedColumnFamilies")+ <*> (o .:? "columnFamilies" .!= mempty))++instance ToJSON BigtableOptions where+ toJSON BigtableOptions'{..}+ = object+ (catMaybes+ [("readRowkeyAsString" .=) <$> _boReadRowkeyAsString,+ ("ignoreUnspecifiedColumnFamilies" .=) <$>+ _boIgnoreUnspecifiedColumnFamilies,+ ("columnFamilies" .=) <$> _boColumnFamilies])++--+-- /See:/ 'clustering' smart constructor.+newtype Clustering = Clustering'+ { _cFields :: Maybe [Text]+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Clustering' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cFields'+clustering+ :: Clustering+clustering =+ Clustering'+ { _cFields = Nothing+ }++-- | [Repeated] One or more fields on which data should be clustered. Only+-- top-level, non-repeated, simple-type fields are supported. When you+-- cluster a table using multiple columns, the order of columns you specify+-- is important. The order of the specified columns determines the sort+-- order of the data.+cFields :: Lens' Clustering [Text]+cFields+ = lens _cFields (\ s a -> s{_cFields = a}) . _Default+ . _Coerce++instance FromJSON Clustering where+ parseJSON+ = withObject "Clustering"+ (\ o -> Clustering' <$> (o .:? "fields" .!= mempty))++instance ToJSON Clustering where+ toJSON Clustering'{..}+ = object (catMaybes [("fields" .=) <$> _cFields])++--+-- /See:/ 'externalDataConfiguration' smart constructor.+data ExternalDataConfiguration = ExternalDataConfiguration'+ { _edcBigtableOptions :: !(Maybe BigtableOptions)+ , _edcIgnoreUnknownValues :: !(Maybe Bool)+ , _edcCompression :: !(Maybe Text)+ , _edcSourceFormat :: !(Maybe Text)+ , _edcSchema :: !(Maybe TableSchema)+ , _edcMaxBadRecords :: !(Maybe (Textual Int32))+ , _edcGoogleSheetsOptions :: !(Maybe GoogleSheetsOptions)+ , _edcAutodetect :: !(Maybe Bool)+ , _edcSourceURIs :: !(Maybe [Text])+ , _edcCSVOptions :: !(Maybe CSVOptions)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ExternalDataConfiguration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'edcBigtableOptions'+--+-- * 'edcIgnoreUnknownValues'+--+-- * 'edcCompression'+--+-- * 'edcSourceFormat'+--+-- * 'edcSchema'+--+-- * 'edcMaxBadRecords'+--+-- * 'edcGoogleSheetsOptions'+--+-- * 'edcAutodetect'+--+-- * 'edcSourceURIs'+--+-- * 'edcCSVOptions'+externalDataConfiguration+ :: ExternalDataConfiguration+externalDataConfiguration =+ ExternalDataConfiguration'+ { _edcBigtableOptions = Nothing+ , _edcIgnoreUnknownValues = Nothing+ , _edcCompression = Nothing+ , _edcSourceFormat = Nothing+ , _edcSchema = Nothing+ , _edcMaxBadRecords = Nothing+ , _edcGoogleSheetsOptions = Nothing+ , _edcAutodetect = Nothing+ , _edcSourceURIs = Nothing+ , _edcCSVOptions = Nothing+ }++-- | [Optional] Additional options if sourceFormat is set to BIGTABLE.+edcBigtableOptions :: Lens' ExternalDataConfiguration (Maybe BigtableOptions)+edcBigtableOptions+ = lens _edcBigtableOptions+ (\ s a -> s{_edcBigtableOptions = a})++-- | [Optional] Indicates if BigQuery should allow extra values that are not+-- represented in the table schema. If true, the extra values are ignored.+-- If false, records with extra columns are treated as bad records, and if+-- there are too many bad records, an invalid error is returned in the job+-- result. The default value is false. The sourceFormat property determines+-- what BigQuery treats as an extra value: CSV: Trailing columns JSON:+-- Named values that don\'t match any column names Google Cloud Bigtable:+-- This setting is ignored. Google Cloud Datastore backups: This setting is+-- ignored. Avro: This setting is ignored.+edcIgnoreUnknownValues :: Lens' ExternalDataConfiguration (Maybe Bool)+edcIgnoreUnknownValues+ = lens _edcIgnoreUnknownValues+ (\ s a -> s{_edcIgnoreUnknownValues = a})++-- | [Optional] The compression type of the data source. Possible values+-- include GZIP and NONE. The default value is NONE. This setting is+-- ignored for Google Cloud Bigtable, Google Cloud Datastore backups and+-- Avro formats.+edcCompression :: Lens' ExternalDataConfiguration (Maybe Text)+edcCompression+ = lens _edcCompression+ (\ s a -> s{_edcCompression = a})++-- | [Required] The data format. For CSV files, specify \"CSV\". For Google+-- sheets, specify \"GOOGLE_SHEETS\". For newline-delimited JSON, specify+-- \"NEWLINE_DELIMITED_JSON\". For Avro files, specify \"AVRO\". For Google+-- Cloud Datastore backups, specify \"DATASTORE_BACKUP\". [Beta] For Google+-- Cloud Bigtable, specify \"BIGTABLE\".+edcSourceFormat :: Lens' ExternalDataConfiguration (Maybe Text)+edcSourceFormat+ = lens _edcSourceFormat+ (\ s a -> s{_edcSourceFormat = a})++-- | [Optional] The schema for the data. Schema is required for CSV and JSON+-- formats. Schema is disallowed for Google Cloud Bigtable, Cloud Datastore+-- backups, and Avro formats.+edcSchema :: Lens' ExternalDataConfiguration (Maybe TableSchema)+edcSchema+ = lens _edcSchema (\ s a -> s{_edcSchema = a})++-- | [Optional] The maximum number of bad records that BigQuery can ignore+-- when reading data. If the number of bad records exceeds this value, an+-- invalid error is returned in the job result. This is only valid for CSV,+-- JSON, and Google Sheets. The default value is 0, which requires that all+-- records are valid. This setting is ignored for Google Cloud Bigtable,+-- Google Cloud Datastore backups and Avro formats.+edcMaxBadRecords :: Lens' ExternalDataConfiguration (Maybe Int32)+edcMaxBadRecords+ = lens _edcMaxBadRecords+ (\ s a -> s{_edcMaxBadRecords = a})+ . mapping _Coerce++-- | [Optional] Additional options if sourceFormat is set to GOOGLE_SHEETS.+edcGoogleSheetsOptions :: Lens' ExternalDataConfiguration (Maybe GoogleSheetsOptions)+edcGoogleSheetsOptions+ = lens _edcGoogleSheetsOptions+ (\ s a -> s{_edcGoogleSheetsOptions = a})++-- | Try to detect schema and format options automatically. Any option+-- specified explicitly will be honored.+edcAutodetect :: Lens' ExternalDataConfiguration (Maybe Bool)+edcAutodetect+ = lens _edcAutodetect+ (\ s a -> s{_edcAutodetect = a})++-- | [Required] The fully-qualified URIs that point to your data in Google+-- Cloud. For Google Cloud Storage URIs: Each URI can contain one \'*\'+-- wildcard character and it must come after the \'bucket\' name. Size+-- limits related to load jobs apply to external data sources. For Google+-- Cloud Bigtable URIs: Exactly one URI can be specified and it has be a+-- fully specified and valid HTTPS URL for a Google Cloud Bigtable table.+-- For Google Cloud Datastore backups, exactly one URI can be specified.+-- Also, the \'*\' wildcard character is not allowed.+edcSourceURIs :: Lens' ExternalDataConfiguration [Text]+edcSourceURIs+ = lens _edcSourceURIs+ (\ s a -> s{_edcSourceURIs = a})+ . _Default+ . _Coerce++-- | Additional properties to set if sourceFormat is set to CSV.+edcCSVOptions :: Lens' ExternalDataConfiguration (Maybe CSVOptions)+edcCSVOptions+ = lens _edcCSVOptions+ (\ s a -> s{_edcCSVOptions = a})++instance FromJSON ExternalDataConfiguration where+ parseJSON+ = withObject "ExternalDataConfiguration"+ (\ o ->+ ExternalDataConfiguration' <$>+ (o .:? "bigtableOptions") <*>+ (o .:? "ignoreUnknownValues")+ <*> (o .:? "compression")+ <*> (o .:? "sourceFormat")+ <*> (o .:? "schema")+ <*> (o .:? "maxBadRecords")+ <*> (o .:? "googleSheetsOptions")+ <*> (o .:? "autodetect")+ <*> (o .:? "sourceUris" .!= mempty)+ <*> (o .:? "csvOptions"))++instance ToJSON ExternalDataConfiguration where+ toJSON ExternalDataConfiguration'{..}+ = object+ (catMaybes+ [("bigtableOptions" .=) <$> _edcBigtableOptions,+ ("ignoreUnknownValues" .=) <$>+ _edcIgnoreUnknownValues,+ ("compression" .=) <$> _edcCompression,+ ("sourceFormat" .=) <$> _edcSourceFormat,+ ("schema" .=) <$> _edcSchema,+ ("maxBadRecords" .=) <$> _edcMaxBadRecords,+ ("googleSheetsOptions" .=) <$>+ _edcGoogleSheetsOptions,+ ("autodetect" .=) <$> _edcAutodetect,+ ("sourceUris" .=) <$> _edcSourceURIs,+ ("csvOptions" .=) <$> _edcCSVOptions])++--+-- /See:/ 'tableReference' smart constructor.+data TableReference = TableReference'+ { _trDataSetId :: !(Maybe Text)+ , _trProjectId :: !(Maybe Text)+ , _trTableId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableReference' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'trDataSetId'+--+-- * 'trProjectId'+--+-- * 'trTableId'+tableReference+ :: TableReference+tableReference =+ TableReference'+ { _trDataSetId = Nothing+ , _trProjectId = Nothing+ , _trTableId = Nothing+ }++-- | [Required] The ID of the dataset containing this table.+trDataSetId :: Lens' TableReference (Maybe Text)+trDataSetId+ = lens _trDataSetId (\ s a -> s{_trDataSetId = a})++-- | [Required] The ID of the project containing this table.+trProjectId :: Lens' TableReference (Maybe Text)+trProjectId+ = lens _trProjectId (\ s a -> s{_trProjectId = a})++-- | [Required] The ID of the table. The ID must contain only letters (a-z,+-- A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024+-- characters.+trTableId :: Lens' TableReference (Maybe Text)+trTableId+ = lens _trTableId (\ s a -> s{_trTableId = a})++instance FromJSON TableReference where+ parseJSON+ = withObject "TableReference"+ (\ o ->+ TableReference' <$>+ (o .:? "datasetId") <*> (o .:? "projectId") <*>+ (o .:? "tableId"))++instance ToJSON TableReference where+ toJSON TableReference'{..}+ = object+ (catMaybes+ [("datasetId" .=) <$> _trDataSetId,+ ("projectId" .=) <$> _trProjectId,+ ("tableId" .=) <$> _trTableId])++-- | [Output-only, Beta] Model options used for the first training run. These+-- options are immutable for subsequent training runs. Default values are+-- used for any options not specified in the input query.+--+-- /See:/ 'modelDefinitionModelOptions' smart constructor.+data ModelDefinitionModelOptions = ModelDefinitionModelOptions'+ { _mdmoModelType :: !(Maybe Text)+ , _mdmoLabels :: !(Maybe [Text])+ , _mdmoLossType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ModelDefinitionModelOptions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdmoModelType'+--+-- * 'mdmoLabels'+--+-- * 'mdmoLossType'+modelDefinitionModelOptions+ :: ModelDefinitionModelOptions+modelDefinitionModelOptions =+ ModelDefinitionModelOptions'+ { _mdmoModelType = Nothing+ , _mdmoLabels = Nothing+ , _mdmoLossType = Nothing+ }++mdmoModelType :: Lens' ModelDefinitionModelOptions (Maybe Text)+mdmoModelType+ = lens _mdmoModelType+ (\ s a -> s{_mdmoModelType = a})++mdmoLabels :: Lens' ModelDefinitionModelOptions [Text]+mdmoLabels+ = lens _mdmoLabels (\ s a -> s{_mdmoLabels = a}) .+ _Default+ . _Coerce++mdmoLossType :: Lens' ModelDefinitionModelOptions (Maybe Text)+mdmoLossType+ = lens _mdmoLossType (\ s a -> s{_mdmoLossType = a})++instance FromJSON ModelDefinitionModelOptions where+ parseJSON+ = withObject "ModelDefinitionModelOptions"+ (\ o ->+ ModelDefinitionModelOptions' <$>+ (o .:? "modelType") <*> (o .:? "labels" .!= mempty)+ <*> (o .:? "lossType"))++instance ToJSON ModelDefinitionModelOptions where+ toJSON ModelDefinitionModelOptions'{..}+ = object+ (catMaybes+ [("modelType" .=) <$> _mdmoModelType,+ ("labels" .=) <$> _mdmoLabels,+ ("lossType" .=) <$> _mdmoLossType])++--+-- /See:/ 'rangePartitioning' smart constructor.+data RangePartitioning = RangePartitioning'+ { _rpField :: !(Maybe Text)+ , _rpRange :: !(Maybe RangePartitioningRange)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RangePartitioning' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rpField'+--+-- * 'rpRange'+rangePartitioning+ :: RangePartitioning+rangePartitioning =+ RangePartitioning'+ { _rpField = Nothing+ , _rpRange = Nothing+ }++-- | [TrustedTester] [Required] The table is partitioned by this field. The+-- field must be a top-level NULLABLE\/REQUIRED field. The only supported+-- type is INTEGER\/INT64.+rpField :: Lens' RangePartitioning (Maybe Text)+rpField = lens _rpField (\ s a -> s{_rpField = a})++-- | [TrustedTester] [Required] Defines the ranges for range partitioning.+rpRange :: Lens' RangePartitioning (Maybe RangePartitioningRange)+rpRange = lens _rpRange (\ s a -> s{_rpRange = a})++instance FromJSON RangePartitioning where+ parseJSON+ = withObject "RangePartitioning"+ (\ o ->+ RangePartitioning' <$>+ (o .:? "field") <*> (o .:? "range"))++instance ToJSON RangePartitioning where+ toJSON RangePartitioning'{..}+ = object+ (catMaybes+ [("field" .=) <$> _rpField,+ ("range" .=) <$> _rpRange])++--+-- /See:/ 'tableFieldSchema' smart constructor.+data TableFieldSchema = TableFieldSchema'+ { _tfsMode :: !(Maybe Text)+ , _tfsName :: !(Maybe Text)+ , _tfsType :: !(Maybe Text)+ , _tfsDescription :: !(Maybe Text)+ , _tfsFields :: !(Maybe [TableFieldSchema])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableFieldSchema' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tfsMode'+--+-- * 'tfsName'+--+-- * 'tfsType'+--+-- * 'tfsDescription'+--+-- * 'tfsFields'+tableFieldSchema+ :: TableFieldSchema+tableFieldSchema =+ TableFieldSchema'+ { _tfsMode = Nothing+ , _tfsName = Nothing+ , _tfsType = Nothing+ , _tfsDescription = Nothing+ , _tfsFields = Nothing+ }++-- | [Optional] The field mode. Possible values include NULLABLE, REQUIRED+-- and REPEATED. The default value is NULLABLE.+tfsMode :: Lens' TableFieldSchema (Maybe Text)+tfsMode = lens _tfsMode (\ s a -> s{_tfsMode = a})++-- | [Required] The field name. The name must contain only letters (a-z,+-- A-Z), numbers (0-9), or underscores (_), and must start with a letter or+-- underscore. The maximum length is 128 characters.+tfsName :: Lens' TableFieldSchema (Maybe Text)+tfsName = lens _tfsName (\ s a -> s{_tfsName = a})++-- | [Required] The field data type. Possible values include STRING, BYTES,+-- INTEGER, INT64 (same as INTEGER), FLOAT, FLOAT64 (same as FLOAT),+-- BOOLEAN, BOOL (same as BOOLEAN), TIMESTAMP, DATE, TIME, DATETIME, RECORD+-- (where RECORD indicates that the field contains a nested schema) or+-- STRUCT (same as RECORD).+tfsType :: Lens' TableFieldSchema (Maybe Text)+tfsType = lens _tfsType (\ s a -> s{_tfsType = a})++-- | [Optional] The field description. The maximum length is 1,024+-- characters.+tfsDescription :: Lens' TableFieldSchema (Maybe Text)+tfsDescription+ = lens _tfsDescription+ (\ s a -> s{_tfsDescription = a})++-- | [Optional] Describes the nested schema fields if the type property is+-- set to RECORD.+tfsFields :: Lens' TableFieldSchema [TableFieldSchema]+tfsFields+ = lens _tfsFields (\ s a -> s{_tfsFields = a}) .+ _Default+ . _Coerce++instance FromJSON TableFieldSchema where+ parseJSON+ = withObject "TableFieldSchema"+ (\ o ->+ TableFieldSchema' <$>+ (o .:? "mode") <*> (o .:? "name") <*> (o .:? "type")+ <*> (o .:? "description")+ <*> (o .:? "fields" .!= mempty))++instance ToJSON TableFieldSchema where+ toJSON TableFieldSchema'{..}+ = object+ (catMaybes+ [("mode" .=) <$> _tfsMode, ("name" .=) <$> _tfsName,+ ("type" .=) <$> _tfsType,+ ("description" .=) <$> _tfsDescription,+ ("fields" .=) <$> _tfsFields])++--+-- /See:/ 'getQueryResultsResponse' smart constructor.+data GetQueryResultsResponse = GetQueryResultsResponse'+ { _gqrrJobReference :: !(Maybe JobReference)+ , _gqrrEtag :: !(Maybe Text)+ , _gqrrKind :: !Text+ , _gqrrSchema :: !(Maybe TableSchema)+ , _gqrrTotalBytesProcessed :: !(Maybe (Textual Int64))+ , _gqrrRows :: !(Maybe [TableRow])+ , _gqrrPageToken :: !(Maybe Text)+ , _gqrrNumDmlAffectedRows :: !(Maybe (Textual Int64))+ , _gqrrTotalRows :: !(Maybe (Textual Word64))+ , _gqrrErrors :: !(Maybe [ErrorProto])+ , _gqrrJobComplete :: !(Maybe Bool)+ , _gqrrCacheHit :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetQueryResultsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gqrrJobReference'+--+-- * 'gqrrEtag'+--+-- * 'gqrrKind'+--+-- * 'gqrrSchema'+--+-- * 'gqrrTotalBytesProcessed'+--+-- * 'gqrrRows'+--+-- * 'gqrrPageToken'+--+-- * 'gqrrNumDmlAffectedRows'+--+-- * 'gqrrTotalRows'+--+-- * 'gqrrErrors'+--+-- * 'gqrrJobComplete'+--+-- * 'gqrrCacheHit'+getQueryResultsResponse+ :: GetQueryResultsResponse+getQueryResultsResponse =+ GetQueryResultsResponse'+ { _gqrrJobReference = Nothing+ , _gqrrEtag = Nothing+ , _gqrrKind = "bigquery#getQueryResultsResponse"+ , _gqrrSchema = Nothing+ , _gqrrTotalBytesProcessed = Nothing+ , _gqrrRows = Nothing+ , _gqrrPageToken = Nothing+ , _gqrrNumDmlAffectedRows = Nothing+ , _gqrrTotalRows = Nothing+ , _gqrrErrors = Nothing+ , _gqrrJobComplete = Nothing+ , _gqrrCacheHit = Nothing+ }++-- | Reference to the BigQuery Job that was created to run the query. This+-- field will be present even if the original request timed out, in which+-- case GetQueryResults can be used to read the results once the query has+-- completed. Since this API only returns the first page of results,+-- subsequent pages can be fetched via the same mechanism+-- (GetQueryResults).+gqrrJobReference :: Lens' GetQueryResultsResponse (Maybe JobReference)+gqrrJobReference+ = lens _gqrrJobReference+ (\ s a -> s{_gqrrJobReference = a})++-- | A hash of this response.+gqrrEtag :: Lens' GetQueryResultsResponse (Maybe Text)+gqrrEtag = lens _gqrrEtag (\ s a -> s{_gqrrEtag = a})++-- | The resource type of the response.+gqrrKind :: Lens' GetQueryResultsResponse Text+gqrrKind = lens _gqrrKind (\ s a -> s{_gqrrKind = a})++-- | The schema of the results. Present only when the query completes+-- successfully.+gqrrSchema :: Lens' GetQueryResultsResponse (Maybe TableSchema)+gqrrSchema+ = lens _gqrrSchema (\ s a -> s{_gqrrSchema = a})++-- | The total number of bytes processed for this query.+gqrrTotalBytesProcessed :: Lens' GetQueryResultsResponse (Maybe Int64)+gqrrTotalBytesProcessed+ = lens _gqrrTotalBytesProcessed+ (\ s a -> s{_gqrrTotalBytesProcessed = a})+ . mapping _Coerce++-- | An object with as many results as can be contained within the maximum+-- permitted reply size. To get any additional rows, you can call+-- GetQueryResults and specify the jobReference returned above. Present+-- only when the query completes successfully.+gqrrRows :: Lens' GetQueryResultsResponse [TableRow]+gqrrRows+ = lens _gqrrRows (\ s a -> s{_gqrrRows = a}) .+ _Default+ . _Coerce++-- | A token used for paging results.+gqrrPageToken :: Lens' GetQueryResultsResponse (Maybe Text)+gqrrPageToken+ = lens _gqrrPageToken+ (\ s a -> s{_gqrrPageToken = a})++-- | [Output-only] The number of rows affected by a DML statement. Present+-- only for DML statements INSERT, UPDATE or DELETE.+gqrrNumDmlAffectedRows :: Lens' GetQueryResultsResponse (Maybe Int64)+gqrrNumDmlAffectedRows+ = lens _gqrrNumDmlAffectedRows+ (\ s a -> s{_gqrrNumDmlAffectedRows = a})+ . mapping _Coerce++-- | The total number of rows in the complete query result set, which can be+-- more than the number of rows in this single page of results. Present+-- only when the query completes successfully.+gqrrTotalRows :: Lens' GetQueryResultsResponse (Maybe Word64)+gqrrTotalRows+ = lens _gqrrTotalRows+ (\ s a -> s{_gqrrTotalRows = a})+ . mapping _Coerce++-- | [Output-only] The first errors or warnings encountered during the+-- running of the job. The final message includes the number of errors that+-- caused the process to stop. Errors here do not necessarily mean that the+-- job has completed or was unsuccessful.+gqrrErrors :: Lens' GetQueryResultsResponse [ErrorProto]+gqrrErrors+ = lens _gqrrErrors (\ s a -> s{_gqrrErrors = a}) .+ _Default+ . _Coerce++-- | Whether the query has completed or not. If rows or totalRows are+-- present, this will always be true. If this is false, totalRows will not+-- be available.+gqrrJobComplete :: Lens' GetQueryResultsResponse (Maybe Bool)+gqrrJobComplete+ = lens _gqrrJobComplete+ (\ s a -> s{_gqrrJobComplete = a})++-- | Whether the query result was fetched from the query cache.+gqrrCacheHit :: Lens' GetQueryResultsResponse (Maybe Bool)+gqrrCacheHit+ = lens _gqrrCacheHit (\ s a -> s{_gqrrCacheHit = a})++instance FromJSON GetQueryResultsResponse where+ parseJSON+ = withObject "GetQueryResultsResponse"+ (\ o ->+ GetQueryResultsResponse' <$>+ (o .:? "jobReference") <*> (o .:? "etag") <*>+ (o .:? "kind" .!= "bigquery#getQueryResultsResponse")+ <*> (o .:? "schema")+ <*> (o .:? "totalBytesProcessed")+ <*> (o .:? "rows" .!= mempty)+ <*> (o .:? "pageToken")+ <*> (o .:? "numDmlAffectedRows")+ <*> (o .:? "totalRows")+ <*> (o .:? "errors" .!= mempty)+ <*> (o .:? "jobComplete")+ <*> (o .:? "cacheHit"))++instance ToJSON GetQueryResultsResponse where+ toJSON GetQueryResultsResponse'{..}+ = object+ (catMaybes+ [("jobReference" .=) <$> _gqrrJobReference,+ ("etag" .=) <$> _gqrrEtag,+ Just ("kind" .= _gqrrKind),+ ("schema" .=) <$> _gqrrSchema,+ ("totalBytesProcessed" .=) <$>+ _gqrrTotalBytesProcessed,+ ("rows" .=) <$> _gqrrRows,+ ("pageToken" .=) <$> _gqrrPageToken,+ ("numDmlAffectedRows" .=) <$>+ _gqrrNumDmlAffectedRows,+ ("totalRows" .=) <$> _gqrrTotalRows,+ ("errors" .=) <$> _gqrrErrors,+ ("jobComplete" .=) <$> _gqrrJobComplete,+ ("cacheHit" .=) <$> _gqrrCacheHit])++--+-- /See:/ 'dataSetList' smart constructor.+data DataSetList = DataSetList'+ { _dslEtag :: !(Maybe Text)+ , _dslNextPageToken :: !(Maybe Text)+ , _dslKind :: !Text+ , _dslDataSets :: !(Maybe [DataSetListDataSetsItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DataSetList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dslEtag'+--+-- * 'dslNextPageToken'+--+-- * 'dslKind'+--+-- * 'dslDataSets'+dataSetList+ :: DataSetList+dataSetList =+ DataSetList'+ { _dslEtag = Nothing+ , _dslNextPageToken = Nothing+ , _dslKind = "bigquery#datasetList"+ , _dslDataSets = Nothing+ }++-- | A hash value of the results page. You can use this property to determine+-- if the page has changed since the last request.+dslEtag :: Lens' DataSetList (Maybe Text)+dslEtag = lens _dslEtag (\ s a -> s{_dslEtag = a})++-- | A token that can be used to request the next results page. This property+-- is omitted on the final results page.+dslNextPageToken :: Lens' DataSetList (Maybe Text)+dslNextPageToken+ = lens _dslNextPageToken+ (\ s a -> s{_dslNextPageToken = a})++-- | The list type. This property always returns the value+-- \"bigquery#datasetList\".+dslKind :: Lens' DataSetList Text+dslKind = lens _dslKind (\ s a -> s{_dslKind = a})++-- | An array of the dataset resources in the project. Each resource contains+-- basic information. For full information about a particular dataset+-- resource, use the Datasets: get method. This property is omitted when+-- there are no datasets in the project.+dslDataSets :: Lens' DataSetList [DataSetListDataSetsItem]+dslDataSets+ = lens _dslDataSets (\ s a -> s{_dslDataSets = a}) .+ _Default+ . _Coerce++instance FromJSON DataSetList where+ parseJSON+ = withObject "DataSetList"+ (\ o ->+ DataSetList' <$>+ (o .:? "etag") <*> (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "bigquery#datasetList")+ <*> (o .:? "datasets" .!= mempty))++instance ToJSON DataSetList where+ toJSON DataSetList'{..}+ = object+ (catMaybes+ [("etag" .=) <$> _dslEtag,+ ("nextPageToken" .=) <$> _dslNextPageToken,+ Just ("kind" .= _dslKind),+ ("datasets" .=) <$> _dslDataSets])++--+-- /See:/ 'queryRequest' smart constructor.+data QueryRequest = QueryRequest'+ { _qrLocation :: !(Maybe Text)+ , _qrUseQueryCache :: !Bool+ , _qrPreserveNulls :: !(Maybe Bool)+ , _qrKind :: !Text+ , _qrQueryParameters :: !(Maybe [QueryParameter])+ , _qrQuery :: !(Maybe Text)+ , _qrParameterMode :: !(Maybe Text)+ , _qrTimeoutMs :: !(Maybe (Textual Word32))+ , _qrUseLegacySQL :: !Bool+ , _qrDryRun :: !(Maybe Bool)+ , _qrMaxResults :: !(Maybe (Textual Word32))+ , _qrDefaultDataSet :: !(Maybe DataSetReference)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'QueryRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'qrLocation'+--+-- * 'qrUseQueryCache'+--+-- * 'qrPreserveNulls'+--+-- * 'qrKind'+--+-- * 'qrQueryParameters'+--+-- * 'qrQuery'+--+-- * 'qrParameterMode'+--+-- * 'qrTimeoutMs'+--+-- * 'qrUseLegacySQL'+--+-- * 'qrDryRun'+--+-- * 'qrMaxResults'+--+-- * 'qrDefaultDataSet'+queryRequest+ :: QueryRequest+queryRequest =+ QueryRequest'+ { _qrLocation = Nothing+ , _qrUseQueryCache = True+ , _qrPreserveNulls = Nothing+ , _qrKind = "bigquery#queryRequest"+ , _qrQueryParameters = Nothing+ , _qrQuery = Nothing+ , _qrParameterMode = Nothing+ , _qrTimeoutMs = Nothing+ , _qrUseLegacySQL = True+ , _qrDryRun = Nothing+ , _qrMaxResults = Nothing+ , _qrDefaultDataSet = Nothing+ }++-- | The geographic location where the job should run. See details at+-- https:\/\/cloud.google.com\/bigquery\/docs\/locations#specifying_your_location.+qrLocation :: Lens' QueryRequest (Maybe Text)+qrLocation+ = lens _qrLocation (\ s a -> s{_qrLocation = a})++-- | [Optional] Whether to look for the result in the query cache. The query+-- cache is a best-effort cache that will be flushed whenever tables in the+-- query are modified. The default value is true.+qrUseQueryCache :: Lens' QueryRequest Bool+qrUseQueryCache+ = lens _qrUseQueryCache+ (\ s a -> s{_qrUseQueryCache = a})++-- | [Deprecated] This property is deprecated.+qrPreserveNulls :: Lens' QueryRequest (Maybe Bool)+qrPreserveNulls+ = lens _qrPreserveNulls+ (\ s a -> s{_qrPreserveNulls = a})++-- | The resource type of the request.+qrKind :: Lens' QueryRequest Text+qrKind = lens _qrKind (\ s a -> s{_qrKind = a})++-- | Query parameters for Standard SQL queries.+qrQueryParameters :: Lens' QueryRequest [QueryParameter]+qrQueryParameters+ = lens _qrQueryParameters+ (\ s a -> s{_qrQueryParameters = a})+ . _Default+ . _Coerce++-- | [Required] A query string, following the BigQuery query syntax, of the+-- query to execute. Example: \"SELECT count(f1) FROM+-- [myProjectId:myDatasetId.myTableId]\".+qrQuery :: Lens' QueryRequest (Maybe Text)+qrQuery = lens _qrQuery (\ s a -> s{_qrQuery = a})++-- | Standard SQL only. Set to POSITIONAL to use positional (?) query+-- parameters or to NAMED to use named (\'myparam) query parameters in this+-- query.+qrParameterMode :: Lens' QueryRequest (Maybe Text)+qrParameterMode+ = lens _qrParameterMode+ (\ s a -> s{_qrParameterMode = a})++-- | [Optional] How long to wait for the query to complete, in milliseconds,+-- before the request times out and returns. Note that this is only a+-- timeout for the request, not the query. If the query takes longer to run+-- than the timeout value, the call returns without any results and with+-- the \'jobComplete\' flag set to false. You can call GetQueryResults() to+-- wait for the query to complete and read the results. The default value+-- is 10000 milliseconds (10 seconds).+qrTimeoutMs :: Lens' QueryRequest (Maybe Word32)+qrTimeoutMs+ = lens _qrTimeoutMs (\ s a -> s{_qrTimeoutMs = a}) .+ mapping _Coerce++-- | Specifies whether to use BigQuery\'s legacy SQL dialect for this query.+-- The default value is true. If set to false, the query will use+-- BigQuery\'s standard SQL:+-- https:\/\/cloud.google.com\/bigquery\/sql-reference\/ When useLegacySql+-- is set to false, the value of flattenResults is ignored; query will be+-- run as if flattenResults is false.+qrUseLegacySQL :: Lens' QueryRequest Bool+qrUseLegacySQL+ = lens _qrUseLegacySQL+ (\ s a -> s{_qrUseLegacySQL = a})++-- | [Optional] If set to true, BigQuery doesn\'t run the job. Instead, if+-- the query is valid, BigQuery returns statistics about the job such as+-- how many bytes would be processed. If the query is invalid, an error+-- returns. The default value is false.+qrDryRun :: Lens' QueryRequest (Maybe Bool)+qrDryRun = lens _qrDryRun (\ s a -> s{_qrDryRun = a})++-- | [Optional] The maximum number of rows of data to return per page of+-- results. Setting this flag to a small value such as 1000 and then paging+-- through results might improve reliability when the query result set is+-- large. In addition to this limit, responses are also limited to 10 MB.+-- By default, there is no maximum row count, and only the byte limit+-- applies.+qrMaxResults :: Lens' QueryRequest (Maybe Word32)+qrMaxResults+ = lens _qrMaxResults (\ s a -> s{_qrMaxResults = a})+ . mapping _Coerce++-- | [Optional] Specifies the default datasetId and projectId to assume for+-- any unqualified table names in the query. If not set, all table names in+-- the query string must be qualified in the format \'datasetId.tableId\'.+qrDefaultDataSet :: Lens' QueryRequest (Maybe DataSetReference)+qrDefaultDataSet+ = lens _qrDefaultDataSet+ (\ s a -> s{_qrDefaultDataSet = a})++instance FromJSON QueryRequest where+ parseJSON+ = withObject "QueryRequest"+ (\ o ->+ QueryRequest' <$>+ (o .:? "location") <*>+ (o .:? "useQueryCache" .!= True)+ <*> (o .:? "preserveNulls")+ <*> (o .:? "kind" .!= "bigquery#queryRequest")+ <*> (o .:? "queryParameters" .!= mempty)+ <*> (o .:? "query")+ <*> (o .:? "parameterMode")+ <*> (o .:? "timeoutMs")+ <*> (o .:? "useLegacySql" .!= True)+ <*> (o .:? "dryRun")+ <*> (o .:? "maxResults")+ <*> (o .:? "defaultDataset"))++instance ToJSON QueryRequest where+ toJSON QueryRequest'{..}+ = object+ (catMaybes+ [("location" .=) <$> _qrLocation,+ Just ("useQueryCache" .= _qrUseQueryCache),+ ("preserveNulls" .=) <$> _qrPreserveNulls,+ Just ("kind" .= _qrKind),+ ("queryParameters" .=) <$> _qrQueryParameters,+ ("query" .=) <$> _qrQuery,+ ("parameterMode" .=) <$> _qrParameterMode,+ ("timeoutMs" .=) <$> _qrTimeoutMs,+ Just ("useLegacySql" .= _qrUseLegacySQL),+ ("dryRun" .=) <$> _qrDryRun,+ ("maxResults" .=) <$> _qrMaxResults,+ ("defaultDataset" .=) <$> _qrDefaultDataSet])++--+-- /See:/ 'queryParameter' smart constructor.+data QueryParameter = QueryParameter'+ { _qpParameterValue :: !(Maybe QueryParameterValue)+ , _qpParameterType :: !(Maybe QueryParameterType)+ , _qpName :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'QueryParameter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'qpParameterValue'+--+-- * 'qpParameterType'+--+-- * 'qpName'+queryParameter+ :: QueryParameter+queryParameter =+ QueryParameter'+ { _qpParameterValue = Nothing+ , _qpParameterType = Nothing+ , _qpName = Nothing+ }++-- | [Required] The value of this parameter.+qpParameterValue :: Lens' QueryParameter (Maybe QueryParameterValue)+qpParameterValue+ = lens _qpParameterValue+ (\ s a -> s{_qpParameterValue = a})++-- | [Required] The type of this parameter.+qpParameterType :: Lens' QueryParameter (Maybe QueryParameterType)+qpParameterType+ = lens _qpParameterType+ (\ s a -> s{_qpParameterType = a})++-- | [Optional] If unset, this is a positional parameter. Otherwise, should+-- be unique within a query.+qpName :: Lens' QueryParameter (Maybe Text)+qpName = lens _qpName (\ s a -> s{_qpName = a})++instance FromJSON QueryParameter where+ parseJSON+ = withObject "QueryParameter"+ (\ o ->+ QueryParameter' <$>+ (o .:? "parameterValue") <*> (o .:? "parameterType")+ <*> (o .:? "name"))++instance ToJSON QueryParameter where+ toJSON QueryParameter'{..}+ = object+ (catMaybes+ [("parameterValue" .=) <$> _qpParameterValue,+ ("parameterType" .=) <$> _qpParameterType,+ ("name" .=) <$> _qpName])++--+-- /See:/ 'iterationResult' smart constructor.+data IterationResult = IterationResult'+ { _irDurationMs :: !(Maybe (Textual Int64))+ , _irLearnRate :: !(Maybe (Textual Double))+ , _irEvalLoss :: !(Maybe (Textual Double))+ , _irTrainingLoss :: !(Maybe (Textual Double))+ , _irIndex :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'IterationResult' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'irDurationMs'+--+-- * 'irLearnRate'+--+-- * 'irEvalLoss'+--+-- * 'irTrainingLoss'+--+-- * 'irIndex'+iterationResult+ :: IterationResult+iterationResult =+ IterationResult'+ { _irDurationMs = Nothing+ , _irLearnRate = Nothing+ , _irEvalLoss = Nothing+ , _irTrainingLoss = Nothing+ , _irIndex = Nothing+ }++-- | [Output-only, Beta] Time taken to run the training iteration in+-- milliseconds.+irDurationMs :: Lens' IterationResult (Maybe Int64)+irDurationMs+ = lens _irDurationMs (\ s a -> s{_irDurationMs = a})+ . mapping _Coerce++-- | [Output-only, Beta] Learning rate used for this iteration, it varies for+-- different training iterations if learn_rate_strategy option is not+-- constant.+irLearnRate :: Lens' IterationResult (Maybe Double)+irLearnRate+ = lens _irLearnRate (\ s a -> s{_irLearnRate = a}) .+ mapping _Coerce++-- | [Output-only, Beta] Eval loss computed on the eval data at the end of+-- the iteration. The eval loss is used for early stopping to avoid+-- overfitting. No eval loss if eval_split_method option is specified as+-- no_split or auto_split with input data size less than 500 rows.+irEvalLoss :: Lens' IterationResult (Maybe Double)+irEvalLoss+ = lens _irEvalLoss (\ s a -> s{_irEvalLoss = a}) .+ mapping _Coerce++-- | [Output-only, Beta] Training loss computed on the training data at the+-- end of the iteration. The training loss function is defined by model+-- type.+irTrainingLoss :: Lens' IterationResult (Maybe Double)+irTrainingLoss+ = lens _irTrainingLoss+ (\ s a -> s{_irTrainingLoss = a})+ . mapping _Coerce++-- | [Output-only, Beta] Index of the ML training iteration, starting from+-- zero for each training run.+irIndex :: Lens' IterationResult (Maybe Int32)+irIndex+ = lens _irIndex (\ s a -> s{_irIndex = a}) .+ mapping _Coerce++instance FromJSON IterationResult where+ parseJSON+ = withObject "IterationResult"+ (\ o ->+ IterationResult' <$>+ (o .:? "durationMs") <*> (o .:? "learnRate") <*>+ (o .:? "evalLoss")+ <*> (o .:? "trainingLoss")+ <*> (o .:? "index"))++instance ToJSON IterationResult where+ toJSON IterationResult'{..}+ = object+ (catMaybes+ [("durationMs" .=) <$> _irDurationMs,+ ("learnRate" .=) <$> _irLearnRate,+ ("evalLoss" .=) <$> _irEvalLoss,+ ("trainingLoss" .=) <$> _irTrainingLoss,+ ("index" .=) <$> _irIndex])++--+-- /See:/ 'jobStatistics4' smart constructor.+newtype JobStatistics4 = JobStatistics4'+ { _jsDestinationURIFileCounts :: Maybe [Textual Int64]+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobStatistics4' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jsDestinationURIFileCounts'+jobStatistics4+ :: JobStatistics4+jobStatistics4 =+ JobStatistics4'+ { _jsDestinationURIFileCounts = Nothing+ }++-- | [Output-only] Number of files per destination URI or URI pattern+-- specified in the extract configuration. These values will be in the same+-- order as the URIs specified in the \'destinationUris\' field.+jsDestinationURIFileCounts :: Lens' JobStatistics4 [Int64]+jsDestinationURIFileCounts+ = lens _jsDestinationURIFileCounts+ (\ s a -> s{_jsDestinationURIFileCounts = a})+ . _Default+ . _Coerce++instance FromJSON JobStatistics4 where+ parseJSON+ = withObject "JobStatistics4"+ (\ o ->+ JobStatistics4' <$>+ (o .:? "destinationUriFileCounts" .!= mempty))++instance ToJSON JobStatistics4 where+ toJSON JobStatistics4'{..}+ = object+ (catMaybes+ [("destinationUriFileCounts" .=) <$>+ _jsDestinationURIFileCounts])++--+-- /See:/ 'projectReference' smart constructor.+newtype ProjectReference = ProjectReference'+ { _prProjectId :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProjectReference' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'prProjectId'+projectReference+ :: ProjectReference+projectReference =+ ProjectReference'+ { _prProjectId = Nothing+ }++-- | [Required] ID of the project. Can be either the numeric ID or the+-- assigned ID of the project.+prProjectId :: Lens' ProjectReference (Maybe Text)+prProjectId+ = lens _prProjectId (\ s a -> s{_prProjectId = a})++instance FromJSON ProjectReference where+ parseJSON+ = withObject "ProjectReference"+ (\ o -> ProjectReference' <$> (o .:? "projectId"))++instance ToJSON ProjectReference where+ toJSON ProjectReference'{..}+ = object+ (catMaybes [("projectId" .=) <$> _prProjectId])++--+-- /See:/ 'explainQueryStage' smart constructor.+data ExplainQueryStage = ExplainQueryStage'+ { _eqsReadMsAvg :: !(Maybe (Textual Int64))+ , _eqsStatus :: !(Maybe Text)+ , _eqsShuffleOutputBytesSpilled :: !(Maybe (Textual Int64))+ , _eqsReadMsMax :: !(Maybe (Textual Int64))+ , _eqsCompletedParallelInputs :: !(Maybe (Textual Int64))+ , _eqsWaitRatioMax :: !(Maybe (Textual Double))+ , _eqsParallelInputs :: !(Maybe (Textual Int64))+ , _eqsShuffleOutputBytes :: !(Maybe (Textual Int64))+ , _eqsRecordsWritten :: !(Maybe (Textual Int64))+ , _eqsSteps :: !(Maybe [ExplainQueryStep])+ , _eqsInputStages :: !(Maybe [Textual Int64])+ , _eqsWriteRatioAvg :: !(Maybe (Textual Double))+ , _eqsRecordsRead :: !(Maybe (Textual Int64))+ , _eqsComputeRatioAvg :: !(Maybe (Textual Double))+ , _eqsName :: !(Maybe Text)+ , _eqsComputeMsMax :: !(Maybe (Textual Int64))+ , _eqsReadRatioMax :: !(Maybe (Textual Double))+ , _eqsWriteMsMax :: !(Maybe (Textual Int64))+ , _eqsWaitRatioAvg :: !(Maybe (Textual Double))+ , _eqsWaitMsAvg :: !(Maybe (Textual Int64))+ , _eqsId :: !(Maybe (Textual Int64))+ , _eqsComputeRatioMax :: !(Maybe (Textual Double))+ , _eqsWriteRatioMax :: !(Maybe (Textual Double))+ , _eqsComputeMsAvg :: !(Maybe (Textual Int64))+ , _eqsReadRatioAvg :: !(Maybe (Textual Double))+ , _eqsWriteMsAvg :: !(Maybe (Textual Int64))+ , _eqsStartMs :: !(Maybe (Textual Int64))+ , _eqsEndMs :: !(Maybe (Textual Int64))+ , _eqsWaitMsMax :: !(Maybe (Textual Int64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ExplainQueryStage' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eqsReadMsAvg'+--+-- * 'eqsStatus'+--+-- * 'eqsShuffleOutputBytesSpilled'+--+-- * 'eqsReadMsMax'+--+-- * 'eqsCompletedParallelInputs'+--+-- * 'eqsWaitRatioMax'+--+-- * 'eqsParallelInputs'+--+-- * 'eqsShuffleOutputBytes'+--+-- * 'eqsRecordsWritten'+--+-- * 'eqsSteps'+--+-- * 'eqsInputStages'+--+-- * 'eqsWriteRatioAvg'+--+-- * 'eqsRecordsRead'+--+-- * 'eqsComputeRatioAvg'+--+-- * 'eqsName'+--+-- * 'eqsComputeMsMax'+--+-- * 'eqsReadRatioMax'+--+-- * 'eqsWriteMsMax'+--+-- * 'eqsWaitRatioAvg'+--+-- * 'eqsWaitMsAvg'+--+-- * 'eqsId'+--+-- * 'eqsComputeRatioMax'+--+-- * 'eqsWriteRatioMax'+--+-- * 'eqsComputeMsAvg'+--+-- * 'eqsReadRatioAvg'+--+-- * 'eqsWriteMsAvg'+--+-- * 'eqsStartMs'+--+-- * 'eqsEndMs'+--+-- * 'eqsWaitMsMax'+explainQueryStage+ :: ExplainQueryStage+explainQueryStage =+ ExplainQueryStage'+ { _eqsReadMsAvg = Nothing+ , _eqsStatus = Nothing+ , _eqsShuffleOutputBytesSpilled = Nothing+ , _eqsReadMsMax = Nothing+ , _eqsCompletedParallelInputs = Nothing+ , _eqsWaitRatioMax = Nothing+ , _eqsParallelInputs = Nothing+ , _eqsShuffleOutputBytes = Nothing+ , _eqsRecordsWritten = Nothing+ , _eqsSteps = Nothing+ , _eqsInputStages = Nothing+ , _eqsWriteRatioAvg = Nothing+ , _eqsRecordsRead = Nothing+ , _eqsComputeRatioAvg = Nothing+ , _eqsName = Nothing+ , _eqsComputeMsMax = Nothing+ , _eqsReadRatioMax = Nothing+ , _eqsWriteMsMax = Nothing+ , _eqsWaitRatioAvg = Nothing+ , _eqsWaitMsAvg = Nothing+ , _eqsId = Nothing+ , _eqsComputeRatioMax = Nothing+ , _eqsWriteRatioMax = Nothing+ , _eqsComputeMsAvg = Nothing+ , _eqsReadRatioAvg = Nothing+ , _eqsWriteMsAvg = Nothing+ , _eqsStartMs = Nothing+ , _eqsEndMs = Nothing+ , _eqsWaitMsMax = Nothing+ }++-- | Milliseconds the average shard spent reading input.+eqsReadMsAvg :: Lens' ExplainQueryStage (Maybe Int64)+eqsReadMsAvg+ = lens _eqsReadMsAvg (\ s a -> s{_eqsReadMsAvg = a})+ . mapping _Coerce++-- | Current status for the stage.+eqsStatus :: Lens' ExplainQueryStage (Maybe Text)+eqsStatus+ = lens _eqsStatus (\ s a -> s{_eqsStatus = a})++-- | Total number of bytes written to shuffle and spilled to disk.+eqsShuffleOutputBytesSpilled :: Lens' ExplainQueryStage (Maybe Int64)+eqsShuffleOutputBytesSpilled+ = lens _eqsShuffleOutputBytesSpilled+ (\ s a -> s{_eqsShuffleOutputBytesSpilled = a})+ . mapping _Coerce++-- | Milliseconds the slowest shard spent reading input.+eqsReadMsMax :: Lens' ExplainQueryStage (Maybe Int64)+eqsReadMsMax+ = lens _eqsReadMsMax (\ s a -> s{_eqsReadMsMax = a})+ . mapping _Coerce++-- | Number of parallel input segments completed.+eqsCompletedParallelInputs :: Lens' ExplainQueryStage (Maybe Int64)+eqsCompletedParallelInputs+ = lens _eqsCompletedParallelInputs+ (\ s a -> s{_eqsCompletedParallelInputs = a})+ . mapping _Coerce++-- | Relative amount of time the slowest shard spent waiting to be scheduled.+eqsWaitRatioMax :: Lens' ExplainQueryStage (Maybe Double)+eqsWaitRatioMax+ = lens _eqsWaitRatioMax+ (\ s a -> s{_eqsWaitRatioMax = a})+ . mapping _Coerce++-- | Number of parallel input segments to be processed.+eqsParallelInputs :: Lens' ExplainQueryStage (Maybe Int64)+eqsParallelInputs+ = lens _eqsParallelInputs+ (\ s a -> s{_eqsParallelInputs = a})+ . mapping _Coerce++-- | Total number of bytes written to shuffle.+eqsShuffleOutputBytes :: Lens' ExplainQueryStage (Maybe Int64)+eqsShuffleOutputBytes+ = lens _eqsShuffleOutputBytes+ (\ s a -> s{_eqsShuffleOutputBytes = a})+ . mapping _Coerce++-- | Number of records written by the stage.+eqsRecordsWritten :: Lens' ExplainQueryStage (Maybe Int64)+eqsRecordsWritten+ = lens _eqsRecordsWritten+ (\ s a -> s{_eqsRecordsWritten = a})+ . mapping _Coerce++-- | List of operations within the stage in dependency order (approximately+-- chronological).+eqsSteps :: Lens' ExplainQueryStage [ExplainQueryStep]+eqsSteps+ = lens _eqsSteps (\ s a -> s{_eqsSteps = a}) .+ _Default+ . _Coerce++-- | IDs for stages that are inputs to this stage.+eqsInputStages :: Lens' ExplainQueryStage [Int64]+eqsInputStages+ = lens _eqsInputStages+ (\ s a -> s{_eqsInputStages = a})+ . _Default+ . _Coerce++-- | Relative amount of time the average shard spent on writing output.+eqsWriteRatioAvg :: Lens' ExplainQueryStage (Maybe Double)+eqsWriteRatioAvg+ = lens _eqsWriteRatioAvg+ (\ s a -> s{_eqsWriteRatioAvg = a})+ . mapping _Coerce++-- | Number of records read into the stage.+eqsRecordsRead :: Lens' ExplainQueryStage (Maybe Int64)+eqsRecordsRead+ = lens _eqsRecordsRead+ (\ s a -> s{_eqsRecordsRead = a})+ . mapping _Coerce++-- | Relative amount of time the average shard spent on CPU-bound tasks.+eqsComputeRatioAvg :: Lens' ExplainQueryStage (Maybe Double)+eqsComputeRatioAvg+ = lens _eqsComputeRatioAvg+ (\ s a -> s{_eqsComputeRatioAvg = a})+ . mapping _Coerce++-- | Human-readable name for stage.+eqsName :: Lens' ExplainQueryStage (Maybe Text)+eqsName = lens _eqsName (\ s a -> s{_eqsName = a})++-- | Milliseconds the slowest shard spent on CPU-bound tasks.+eqsComputeMsMax :: Lens' ExplainQueryStage (Maybe Int64)+eqsComputeMsMax+ = lens _eqsComputeMsMax+ (\ s a -> s{_eqsComputeMsMax = a})+ . mapping _Coerce++-- | Relative amount of time the slowest shard spent reading input.+eqsReadRatioMax :: Lens' ExplainQueryStage (Maybe Double)+eqsReadRatioMax+ = lens _eqsReadRatioMax+ (\ s a -> s{_eqsReadRatioMax = a})+ . mapping _Coerce++-- | Milliseconds the slowest shard spent on writing output.+eqsWriteMsMax :: Lens' ExplainQueryStage (Maybe Int64)+eqsWriteMsMax+ = lens _eqsWriteMsMax+ (\ s a -> s{_eqsWriteMsMax = a})+ . mapping _Coerce++-- | Relative amount of time the average shard spent waiting to be scheduled.+eqsWaitRatioAvg :: Lens' ExplainQueryStage (Maybe Double)+eqsWaitRatioAvg+ = lens _eqsWaitRatioAvg+ (\ s a -> s{_eqsWaitRatioAvg = a})+ . mapping _Coerce++-- | Milliseconds the average shard spent waiting to be scheduled.+eqsWaitMsAvg :: Lens' ExplainQueryStage (Maybe Int64)+eqsWaitMsAvg+ = lens _eqsWaitMsAvg (\ s a -> s{_eqsWaitMsAvg = a})+ . mapping _Coerce++-- | Unique ID for stage within plan.+eqsId :: Lens' ExplainQueryStage (Maybe Int64)+eqsId+ = lens _eqsId (\ s a -> s{_eqsId = a}) .+ mapping _Coerce++-- | Relative amount of time the slowest shard spent on CPU-bound tasks.+eqsComputeRatioMax :: Lens' ExplainQueryStage (Maybe Double)+eqsComputeRatioMax+ = lens _eqsComputeRatioMax+ (\ s a -> s{_eqsComputeRatioMax = a})+ . mapping _Coerce++-- | Relative amount of time the slowest shard spent on writing output.+eqsWriteRatioMax :: Lens' ExplainQueryStage (Maybe Double)+eqsWriteRatioMax+ = lens _eqsWriteRatioMax+ (\ s a -> s{_eqsWriteRatioMax = a})+ . mapping _Coerce++-- | Milliseconds the average shard spent on CPU-bound tasks.+eqsComputeMsAvg :: Lens' ExplainQueryStage (Maybe Int64)+eqsComputeMsAvg+ = lens _eqsComputeMsAvg+ (\ s a -> s{_eqsComputeMsAvg = a})+ . mapping _Coerce++-- | Relative amount of time the average shard spent reading input.+eqsReadRatioAvg :: Lens' ExplainQueryStage (Maybe Double)+eqsReadRatioAvg+ = lens _eqsReadRatioAvg+ (\ s a -> s{_eqsReadRatioAvg = a})+ . mapping _Coerce++-- | Milliseconds the average shard spent on writing output.+eqsWriteMsAvg :: Lens' ExplainQueryStage (Maybe Int64)+eqsWriteMsAvg+ = lens _eqsWriteMsAvg+ (\ s a -> s{_eqsWriteMsAvg = a})+ . mapping _Coerce++-- | Stage start time represented as milliseconds since epoch.+eqsStartMs :: Lens' ExplainQueryStage (Maybe Int64)+eqsStartMs+ = lens _eqsStartMs (\ s a -> s{_eqsStartMs = a}) .+ mapping _Coerce++-- | Stage end time represented as milliseconds since epoch.+eqsEndMs :: Lens' ExplainQueryStage (Maybe Int64)+eqsEndMs+ = lens _eqsEndMs (\ s a -> s{_eqsEndMs = a}) .+ mapping _Coerce++-- | Milliseconds the slowest shard spent waiting to be scheduled.+eqsWaitMsMax :: Lens' ExplainQueryStage (Maybe Int64)+eqsWaitMsMax+ = lens _eqsWaitMsMax (\ s a -> s{_eqsWaitMsMax = a})+ . mapping _Coerce++instance FromJSON ExplainQueryStage where+ parseJSON+ = withObject "ExplainQueryStage"+ (\ o ->+ ExplainQueryStage' <$>+ (o .:? "readMsAvg") <*> (o .:? "status") <*>+ (o .:? "shuffleOutputBytesSpilled")+ <*> (o .:? "readMsMax")+ <*> (o .:? "completedParallelInputs")+ <*> (o .:? "waitRatioMax")+ <*> (o .:? "parallelInputs")+ <*> (o .:? "shuffleOutputBytes")+ <*> (o .:? "recordsWritten")+ <*> (o .:? "steps" .!= mempty)+ <*> (o .:? "inputStages" .!= mempty)+ <*> (o .:? "writeRatioAvg")+ <*> (o .:? "recordsRead")+ <*> (o .:? "computeRatioAvg")+ <*> (o .:? "name")+ <*> (o .:? "computeMsMax")+ <*> (o .:? "readRatioMax")+ <*> (o .:? "writeMsMax")+ <*> (o .:? "waitRatioAvg")+ <*> (o .:? "waitMsAvg")+ <*> (o .:? "id")+ <*> (o .:? "computeRatioMax")+ <*> (o .:? "writeRatioMax")+ <*> (o .:? "computeMsAvg")+ <*> (o .:? "readRatioAvg")+ <*> (o .:? "writeMsAvg")+ <*> (o .:? "startMs")+ <*> (o .:? "endMs")+ <*> (o .:? "waitMsMax"))++instance ToJSON ExplainQueryStage where+ toJSON ExplainQueryStage'{..}+ = object+ (catMaybes+ [("readMsAvg" .=) <$> _eqsReadMsAvg,+ ("status" .=) <$> _eqsStatus,+ ("shuffleOutputBytesSpilled" .=) <$>+ _eqsShuffleOutputBytesSpilled,+ ("readMsMax" .=) <$> _eqsReadMsMax,+ ("completedParallelInputs" .=) <$>+ _eqsCompletedParallelInputs,+ ("waitRatioMax" .=) <$> _eqsWaitRatioMax,+ ("parallelInputs" .=) <$> _eqsParallelInputs,+ ("shuffleOutputBytes" .=) <$> _eqsShuffleOutputBytes,+ ("recordsWritten" .=) <$> _eqsRecordsWritten,+ ("steps" .=) <$> _eqsSteps,+ ("inputStages" .=) <$> _eqsInputStages,+ ("writeRatioAvg" .=) <$> _eqsWriteRatioAvg,+ ("recordsRead" .=) <$> _eqsRecordsRead,+ ("computeRatioAvg" .=) <$> _eqsComputeRatioAvg,+ ("name" .=) <$> _eqsName,+ ("computeMsMax" .=) <$> _eqsComputeMsMax,+ ("readRatioMax" .=) <$> _eqsReadRatioMax,+ ("writeMsMax" .=) <$> _eqsWriteMsMax,+ ("waitRatioAvg" .=) <$> _eqsWaitRatioAvg,+ ("waitMsAvg" .=) <$> _eqsWaitMsAvg,+ ("id" .=) <$> _eqsId,+ ("computeRatioMax" .=) <$> _eqsComputeRatioMax,+ ("writeRatioMax" .=) <$> _eqsWriteRatioMax,+ ("computeMsAvg" .=) <$> _eqsComputeMsAvg,+ ("readRatioAvg" .=) <$> _eqsReadRatioAvg,+ ("writeMsAvg" .=) <$> _eqsWriteMsAvg,+ ("startMs" .=) <$> _eqsStartMs,+ ("endMs" .=) <$> _eqsEndMs,+ ("waitMsMax" .=) <$> _eqsWaitMsMax])++-- | [Output-only, Beta] Training options used by this training run. These+-- options are mutable for subsequent training runs. Default values are+-- explicitly stored for options not specified in the input query of the+-- first training run. For subsequent training runs, any option not+-- explicitly specified in the input query will be copied from the previous+-- training run.+--+-- /See:/ 'trainingRunTrainingOptions' smart constructor.+data TrainingRunTrainingOptions = TrainingRunTrainingOptions'+ { _trtoLineSearchInitLearnRate :: !(Maybe (Textual Double))+ , _trtoMinRelProgress :: !(Maybe (Textual Double))+ , _trtoL1Reg :: !(Maybe (Textual Double))+ , _trtoLearnRate :: !(Maybe (Textual Double))+ , _trtoLearnRateStrategy :: !(Maybe Text)+ , _trtoMaxIteration :: !(Maybe (Textual Int64))+ , _trtoEarlyStop :: !(Maybe Bool)+ , _trtoL2Reg :: !(Maybe (Textual Double))+ , _trtoWarmStart :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TrainingRunTrainingOptions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'trtoLineSearchInitLearnRate'+--+-- * 'trtoMinRelProgress'+--+-- * 'trtoL1Reg'+--+-- * 'trtoLearnRate'+--+-- * 'trtoLearnRateStrategy'+--+-- * 'trtoMaxIteration'+--+-- * 'trtoEarlyStop'+--+-- * 'trtoL2Reg'+--+-- * 'trtoWarmStart'+trainingRunTrainingOptions+ :: TrainingRunTrainingOptions+trainingRunTrainingOptions =+ TrainingRunTrainingOptions'+ { _trtoLineSearchInitLearnRate = Nothing+ , _trtoMinRelProgress = Nothing+ , _trtoL1Reg = Nothing+ , _trtoLearnRate = Nothing+ , _trtoLearnRateStrategy = Nothing+ , _trtoMaxIteration = Nothing+ , _trtoEarlyStop = Nothing+ , _trtoL2Reg = Nothing+ , _trtoWarmStart = Nothing+ }++trtoLineSearchInitLearnRate :: Lens' TrainingRunTrainingOptions (Maybe Double)+trtoLineSearchInitLearnRate+ = lens _trtoLineSearchInitLearnRate+ (\ s a -> s{_trtoLineSearchInitLearnRate = a})+ . mapping _Coerce++trtoMinRelProgress :: Lens' TrainingRunTrainingOptions (Maybe Double)+trtoMinRelProgress+ = lens _trtoMinRelProgress+ (\ s a -> s{_trtoMinRelProgress = a})+ . mapping _Coerce++trtoL1Reg :: Lens' TrainingRunTrainingOptions (Maybe Double)+trtoL1Reg+ = lens _trtoL1Reg (\ s a -> s{_trtoL1Reg = a}) .+ mapping _Coerce++trtoLearnRate :: Lens' TrainingRunTrainingOptions (Maybe Double)+trtoLearnRate+ = lens _trtoLearnRate+ (\ s a -> s{_trtoLearnRate = a})+ . mapping _Coerce++trtoLearnRateStrategy :: Lens' TrainingRunTrainingOptions (Maybe Text)+trtoLearnRateStrategy+ = lens _trtoLearnRateStrategy+ (\ s a -> s{_trtoLearnRateStrategy = a})++trtoMaxIteration :: Lens' TrainingRunTrainingOptions (Maybe Int64)+trtoMaxIteration+ = lens _trtoMaxIteration+ (\ s a -> s{_trtoMaxIteration = a})+ . mapping _Coerce++trtoEarlyStop :: Lens' TrainingRunTrainingOptions (Maybe Bool)+trtoEarlyStop+ = lens _trtoEarlyStop+ (\ s a -> s{_trtoEarlyStop = a})++trtoL2Reg :: Lens' TrainingRunTrainingOptions (Maybe Double)+trtoL2Reg+ = lens _trtoL2Reg (\ s a -> s{_trtoL2Reg = a}) .+ mapping _Coerce++trtoWarmStart :: Lens' TrainingRunTrainingOptions (Maybe Bool)+trtoWarmStart+ = lens _trtoWarmStart+ (\ s a -> s{_trtoWarmStart = a})++instance FromJSON TrainingRunTrainingOptions where+ parseJSON+ = withObject "TrainingRunTrainingOptions"+ (\ o ->+ TrainingRunTrainingOptions' <$>+ (o .:? "lineSearchInitLearnRate") <*>+ (o .:? "minRelProgress")+ <*> (o .:? "l1Reg")+ <*> (o .:? "learnRate")+ <*> (o .:? "learnRateStrategy")+ <*> (o .:? "maxIteration")+ <*> (o .:? "earlyStop")+ <*> (o .:? "l2Reg")+ <*> (o .:? "warmStart"))++instance ToJSON TrainingRunTrainingOptions where+ toJSON TrainingRunTrainingOptions'{..}+ = object+ (catMaybes+ [("lineSearchInitLearnRate" .=) <$>+ _trtoLineSearchInitLearnRate,+ ("minRelProgress" .=) <$> _trtoMinRelProgress,+ ("l1Reg" .=) <$> _trtoL1Reg,+ ("learnRate" .=) <$> _trtoLearnRate,+ ("learnRateStrategy" .=) <$> _trtoLearnRateStrategy,+ ("maxIteration" .=) <$> _trtoMaxIteration,+ ("earlyStop" .=) <$> _trtoEarlyStop,+ ("l2Reg" .=) <$> _trtoL2Reg,+ ("warmStart" .=) <$> _trtoWarmStart])++--+-- /See:/ 'bigQueryModelTraining' smart constructor.+data BigQueryModelTraining = BigQueryModelTraining'+ { _bqmtExpectedTotalIterations :: !(Maybe (Textual Int64))+ , _bqmtCurrentIteration :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'BigQueryModelTraining' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bqmtExpectedTotalIterations'+--+-- * 'bqmtCurrentIteration'+bigQueryModelTraining+ :: BigQueryModelTraining+bigQueryModelTraining =+ BigQueryModelTraining'+ { _bqmtExpectedTotalIterations = Nothing+ , _bqmtCurrentIteration = Nothing+ }++-- | [Output-only, Beta] Expected number of iterations for the create model+-- query job specified as num_iterations in the input query. The actual+-- total number of iterations may be less than this number due to early+-- stop.+bqmtExpectedTotalIterations :: Lens' BigQueryModelTraining (Maybe Int64)+bqmtExpectedTotalIterations+ = lens _bqmtExpectedTotalIterations+ (\ s a -> s{_bqmtExpectedTotalIterations = a})+ . mapping _Coerce++-- | [Output-only, Beta] Index of current ML training iteration. Updated+-- during create model query job to show job progress.+bqmtCurrentIteration :: Lens' BigQueryModelTraining (Maybe Int32)+bqmtCurrentIteration+ = lens _bqmtCurrentIteration+ (\ s a -> s{_bqmtCurrentIteration = a})+ . mapping _Coerce++instance FromJSON BigQueryModelTraining where+ parseJSON+ = withObject "BigQueryModelTraining"+ (\ o ->+ BigQueryModelTraining' <$>+ (o .:? "expectedTotalIterations") <*>+ (o .:? "currentIteration"))++instance ToJSON BigQueryModelTraining where+ toJSON BigQueryModelTraining'{..}+ = object+ (catMaybes+ [("expectedTotalIterations" .=) <$>+ _bqmtExpectedTotalIterations,+ ("currentIteration" .=) <$> _bqmtCurrentIteration])++--+-- /See:/ 'jobConfigurationLoad' smart constructor.+data JobConfigurationLoad = JobConfigurationLoad'+ { _jclSkipLeadingRows :: !(Maybe (Textual Int32))+ , _jclProjectionFields :: !(Maybe [Text])+ , _jclDestinationTable :: !(Maybe TableReference)+ , _jclWriteDisPosition :: !(Maybe Text)+ , _jclAllowJaggedRows :: !(Maybe Bool)+ , _jclClustering :: !(Maybe Clustering)+ , _jclRangePartitioning :: !(Maybe RangePartitioning)+ , _jclSchemaInline :: !(Maybe Text)+ , _jclIgnoreUnknownValues :: !(Maybe Bool)+ , _jclSchemaUpdateOptions :: !(Maybe [Text])+ , _jclCreateDisPosition :: !(Maybe Text)+ , _jclSchemaInlineFormat :: !(Maybe Text)+ , _jclAllowQuotedNewlines :: !(Maybe Bool)+ , _jclSourceFormat :: !(Maybe Text)+ , _jclUseAvroLogicalTypes :: !(Maybe Bool)+ , _jclSchema :: !(Maybe TableSchema)+ , _jclTimePartitioning :: !(Maybe TimePartitioning)+ , _jclQuote :: !(Maybe Text)+ , _jclMaxBadRecords :: !(Maybe (Textual Int32))+ , _jclAutodetect :: !(Maybe Bool)+ , _jclSourceURIs :: !(Maybe [Text])+ , _jclEncoding :: !(Maybe Text)+ , _jclDestinationTableProperties :: !(Maybe DestinationTableProperties)+ , _jclDestinationEncryptionConfiguration :: !(Maybe EncryptionConfiguration)+ , _jclFieldDelimiter :: !(Maybe Text)+ , _jclNullMarker :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobConfigurationLoad' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jclSkipLeadingRows'+--+-- * 'jclProjectionFields'+--+-- * 'jclDestinationTable'+--+-- * 'jclWriteDisPosition'+--+-- * 'jclAllowJaggedRows'+--+-- * 'jclClustering'+--+-- * 'jclRangePartitioning'+--+-- * 'jclSchemaInline'+--+-- * 'jclIgnoreUnknownValues'+--+-- * 'jclSchemaUpdateOptions'+--+-- * 'jclCreateDisPosition'+--+-- * 'jclSchemaInlineFormat'+--+-- * 'jclAllowQuotedNewlines'+--+-- * 'jclSourceFormat'+--+-- * 'jclUseAvroLogicalTypes'+--+-- * 'jclSchema'+--+-- * 'jclTimePartitioning'+--+-- * 'jclQuote'+--+-- * 'jclMaxBadRecords'+--+-- * 'jclAutodetect'+--+-- * 'jclSourceURIs'+--+-- * 'jclEncoding'+--+-- * 'jclDestinationTableProperties'+--+-- * 'jclDestinationEncryptionConfiguration'+--+-- * 'jclFieldDelimiter'+--+-- * 'jclNullMarker'+jobConfigurationLoad+ :: JobConfigurationLoad+jobConfigurationLoad =+ JobConfigurationLoad'+ { _jclSkipLeadingRows = Nothing+ , _jclProjectionFields = Nothing+ , _jclDestinationTable = Nothing+ , _jclWriteDisPosition = Nothing+ , _jclAllowJaggedRows = Nothing+ , _jclClustering = Nothing+ , _jclRangePartitioning = Nothing+ , _jclSchemaInline = Nothing+ , _jclIgnoreUnknownValues = Nothing+ , _jclSchemaUpdateOptions = Nothing+ , _jclCreateDisPosition = Nothing+ , _jclSchemaInlineFormat = Nothing+ , _jclAllowQuotedNewlines = Nothing+ , _jclSourceFormat = Nothing+ , _jclUseAvroLogicalTypes = Nothing+ , _jclSchema = Nothing+ , _jclTimePartitioning = Nothing+ , _jclQuote = Nothing+ , _jclMaxBadRecords = Nothing+ , _jclAutodetect = Nothing+ , _jclSourceURIs = Nothing+ , _jclEncoding = Nothing+ , _jclDestinationTableProperties = Nothing+ , _jclDestinationEncryptionConfiguration = Nothing+ , _jclFieldDelimiter = Nothing+ , _jclNullMarker = Nothing+ }++-- | [Optional] The number of rows at the top of a CSV file that BigQuery+-- will skip when loading the data. The default value is 0. This property+-- is useful if you have header rows in the file that should be skipped.+jclSkipLeadingRows :: Lens' JobConfigurationLoad (Maybe Int32)+jclSkipLeadingRows+ = lens _jclSkipLeadingRows+ (\ s a -> s{_jclSkipLeadingRows = a})+ . mapping _Coerce++-- | If sourceFormat is set to \"DATASTORE_BACKUP\", indicates which entity+-- properties to load into BigQuery from a Cloud Datastore backup. Property+-- names are case sensitive and must be top-level properties. If no+-- properties are specified, BigQuery loads all properties. If any named+-- property isn\'t found in the Cloud Datastore backup, an invalid error is+-- returned in the job result.+jclProjectionFields :: Lens' JobConfigurationLoad [Text]+jclProjectionFields+ = lens _jclProjectionFields+ (\ s a -> s{_jclProjectionFields = a})+ . _Default+ . _Coerce++-- | [Required] The destination table to load the data into.+jclDestinationTable :: Lens' JobConfigurationLoad (Maybe TableReference)+jclDestinationTable+ = lens _jclDestinationTable+ (\ s a -> s{_jclDestinationTable = a})++-- | [Optional] Specifies the action that occurs if the destination table+-- already exists. The following values are supported: WRITE_TRUNCATE: If+-- the table already exists, BigQuery overwrites the table data.+-- WRITE_APPEND: If the table already exists, BigQuery appends the data to+-- the table. WRITE_EMPTY: If the table already exists and contains data, a+-- \'duplicate\' error is returned in the job result. The default value is+-- WRITE_APPEND. Each action is atomic and only occurs if BigQuery is able+-- to complete the job successfully. Creation, truncation and append+-- actions occur as one atomic update upon job completion.+jclWriteDisPosition :: Lens' JobConfigurationLoad (Maybe Text)+jclWriteDisPosition+ = lens _jclWriteDisPosition+ (\ s a -> s{_jclWriteDisPosition = a})++-- | [Optional] Accept rows that are missing trailing optional columns. The+-- missing values are treated as nulls. If false, records with missing+-- trailing columns are treated as bad records, and if there are too many+-- bad records, an invalid error is returned in the job result. The default+-- value is false. Only applicable to CSV, ignored for other formats.+jclAllowJaggedRows :: Lens' JobConfigurationLoad (Maybe Bool)+jclAllowJaggedRows+ = lens _jclAllowJaggedRows+ (\ s a -> s{_jclAllowJaggedRows = a})++-- | [Beta] Clustering specification for the destination table. Must be+-- specified with time-based partitioning, data in the table will be first+-- partitioned and subsequently clustered.+jclClustering :: Lens' JobConfigurationLoad (Maybe Clustering)+jclClustering+ = lens _jclClustering+ (\ s a -> s{_jclClustering = a})++-- | [TrustedTester] Range partitioning specification for this table. Only+-- one of timePartitioning and rangePartitioning should be specified.+jclRangePartitioning :: Lens' JobConfigurationLoad (Maybe RangePartitioning)+jclRangePartitioning+ = lens _jclRangePartitioning+ (\ s a -> s{_jclRangePartitioning = a})++-- | [Deprecated] The inline schema. For CSV schemas, specify as+-- \"Field1:Type1[,Field2:Type2]*\". For example, \"foo:STRING,+-- bar:INTEGER, baz:FLOAT\".+jclSchemaInline :: Lens' JobConfigurationLoad (Maybe Text)+jclSchemaInline+ = lens _jclSchemaInline+ (\ s a -> s{_jclSchemaInline = a})++-- | [Optional] Indicates if BigQuery should allow extra values that are not+-- represented in the table schema. If true, the extra values are ignored.+-- If false, records with extra columns are treated as bad records, and if+-- there are too many bad records, an invalid error is returned in the job+-- result. The default value is false. The sourceFormat property determines+-- what BigQuery treats as an extra value: CSV: Trailing columns JSON:+-- Named values that don\'t match any column names+jclIgnoreUnknownValues :: Lens' JobConfigurationLoad (Maybe Bool)+jclIgnoreUnknownValues+ = lens _jclIgnoreUnknownValues+ (\ s a -> s{_jclIgnoreUnknownValues = a})++-- | Allows the schema of the destination table to be updated as a side+-- effect of the load job if a schema is autodetected or supplied in the+-- job configuration. Schema update options are supported in two cases:+-- when writeDisposition is WRITE_APPEND; when writeDisposition is+-- WRITE_TRUNCATE and the destination table is a partition of a table,+-- specified by partition decorators. For normal tables, WRITE_TRUNCATE+-- will always overwrite the schema. One or more of the following values+-- are specified: ALLOW_FIELD_ADDITION: allow adding a nullable field to+-- the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field in+-- the original schema to nullable.+jclSchemaUpdateOptions :: Lens' JobConfigurationLoad [Text]+jclSchemaUpdateOptions+ = lens _jclSchemaUpdateOptions+ (\ s a -> s{_jclSchemaUpdateOptions = a})+ . _Default+ . _Coerce++-- | [Optional] Specifies whether the job is allowed to create new tables.+-- The following values are supported: CREATE_IF_NEEDED: If the table does+-- not exist, BigQuery creates the table. CREATE_NEVER: The table must+-- already exist. If it does not, a \'notFound\' error is returned in the+-- job result. The default value is CREATE_IF_NEEDED. Creation, truncation+-- and append actions occur as one atomic update upon job completion.+jclCreateDisPosition :: Lens' JobConfigurationLoad (Maybe Text)+jclCreateDisPosition+ = lens _jclCreateDisPosition+ (\ s a -> s{_jclCreateDisPosition = a})++-- | [Deprecated] The format of the schemaInline property.+jclSchemaInlineFormat :: Lens' JobConfigurationLoad (Maybe Text)+jclSchemaInlineFormat+ = lens _jclSchemaInlineFormat+ (\ s a -> s{_jclSchemaInlineFormat = a})++-- | Indicates if BigQuery should allow quoted data sections that contain+-- newline characters in a CSV file. The default value is false.+jclAllowQuotedNewlines :: Lens' JobConfigurationLoad (Maybe Bool)+jclAllowQuotedNewlines+ = lens _jclAllowQuotedNewlines+ (\ s a -> s{_jclAllowQuotedNewlines = a})++-- | [Optional] The format of the data files. For CSV files, specify \"CSV\".+-- For datastore backups, specify \"DATASTORE_BACKUP\". For+-- newline-delimited JSON, specify \"NEWLINE_DELIMITED_JSON\". For Avro,+-- specify \"AVRO\". For parquet, specify \"PARQUET\". For orc, specify+-- \"ORC\". The default value is CSV.+jclSourceFormat :: Lens' JobConfigurationLoad (Maybe Text)+jclSourceFormat+ = lens _jclSourceFormat+ (\ s a -> s{_jclSourceFormat = a})++-- | [Optional] If sourceFormat is set to \"AVRO\", indicates whether to+-- enable interpreting logical types into their corresponding types (ie.+-- TIMESTAMP), instead of only using their raw types (ie. INTEGER).+jclUseAvroLogicalTypes :: Lens' JobConfigurationLoad (Maybe Bool)+jclUseAvroLogicalTypes+ = lens _jclUseAvroLogicalTypes+ (\ s a -> s{_jclUseAvroLogicalTypes = a})++-- | [Optional] The schema for the destination table. The schema can be+-- omitted if the destination table already exists, or if you\'re loading+-- data from Google Cloud Datastore.+jclSchema :: Lens' JobConfigurationLoad (Maybe TableSchema)+jclSchema+ = lens _jclSchema (\ s a -> s{_jclSchema = a})++-- | Time-based partitioning specification for the destination table. Only+-- one of timePartitioning and rangePartitioning should be specified.+jclTimePartitioning :: Lens' JobConfigurationLoad (Maybe TimePartitioning)+jclTimePartitioning+ = lens _jclTimePartitioning+ (\ s a -> s{_jclTimePartitioning = a})++-- | [Optional] The value that is used to quote data sections in a CSV file.+-- BigQuery converts the string to ISO-8859-1 encoding, and then uses the+-- first byte of the encoded string to split the data in its raw, binary+-- state. The default value is a double-quote (\'\"\'). If your data does+-- not contain quoted sections, set the property value to an empty string.+-- If your data contains quoted newline characters, you must also set the+-- allowQuotedNewlines property to true.+jclQuote :: Lens' JobConfigurationLoad (Maybe Text)+jclQuote = lens _jclQuote (\ s a -> s{_jclQuote = a})++-- | [Optional] The maximum number of bad records that BigQuery can ignore+-- when running the job. If the number of bad records exceeds this value,+-- an invalid error is returned in the job result. This is only valid for+-- CSV and JSON. The default value is 0, which requires that all records+-- are valid.+jclMaxBadRecords :: Lens' JobConfigurationLoad (Maybe Int32)+jclMaxBadRecords+ = lens _jclMaxBadRecords+ (\ s a -> s{_jclMaxBadRecords = a})+ . mapping _Coerce++-- | [Optional] Indicates if we should automatically infer the options and+-- schema for CSV and JSON sources.+jclAutodetect :: Lens' JobConfigurationLoad (Maybe Bool)+jclAutodetect+ = lens _jclAutodetect+ (\ s a -> s{_jclAutodetect = a})++-- | [Required] The fully-qualified URIs that point to your data in Google+-- Cloud. For Google Cloud Storage URIs: Each URI can contain one \'*\'+-- wildcard character and it must come after the \'bucket\' name. Size+-- limits related to load jobs apply to external data sources. For Google+-- Cloud Bigtable URIs: Exactly one URI can be specified and it has be a+-- fully specified and valid HTTPS URL for a Google Cloud Bigtable table.+-- For Google Cloud Datastore backups: Exactly one URI can be specified.+-- Also, the \'*\' wildcard character is not allowed.+jclSourceURIs :: Lens' JobConfigurationLoad [Text]+jclSourceURIs+ = lens _jclSourceURIs+ (\ s a -> s{_jclSourceURIs = a})+ . _Default+ . _Coerce++-- | [Optional] The character encoding of the data. The supported values are+-- UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery decodes the+-- data after the raw, binary data has been split using the values of the+-- quote and fieldDelimiter properties.+jclEncoding :: Lens' JobConfigurationLoad (Maybe Text)+jclEncoding+ = lens _jclEncoding (\ s a -> s{_jclEncoding = a})++-- | [Beta] [Optional] Properties with which to create the destination table+-- if it is new.+jclDestinationTableProperties :: Lens' JobConfigurationLoad (Maybe DestinationTableProperties)+jclDestinationTableProperties+ = lens _jclDestinationTableProperties+ (\ s a -> s{_jclDestinationTableProperties = a})++-- | Custom encryption configuration (e.g., Cloud KMS keys).+jclDestinationEncryptionConfiguration :: Lens' JobConfigurationLoad (Maybe EncryptionConfiguration)+jclDestinationEncryptionConfiguration+ = lens _jclDestinationEncryptionConfiguration+ (\ s a ->+ s{_jclDestinationEncryptionConfiguration = a})++-- | [Optional] The separator for fields in a CSV file. The separator can be+-- any ISO-8859-1 single-byte character. To use a character in the range+-- 128-255, you must encode the character as UTF8. BigQuery converts the+-- string to ISO-8859-1 encoding, and then uses the first byte of the+-- encoded string to split the data in its raw, binary state. BigQuery also+-- supports the escape sequence \"\\t\" to specify a tab separator. The+-- default value is a comma (\',\').+jclFieldDelimiter :: Lens' JobConfigurationLoad (Maybe Text)+jclFieldDelimiter+ = lens _jclFieldDelimiter+ (\ s a -> s{_jclFieldDelimiter = a})++-- | [Optional] Specifies a string that represents a null value in a CSV+-- file. For example, if you specify \"\\N\", BigQuery interprets \"\\N\"+-- as a null value when loading a CSV file. The default value is the empty+-- string. If you set this property to a custom value, BigQuery throws an+-- error if an empty string is present for all data types except for STRING+-- and BYTE. For STRING and BYTE columns, BigQuery interprets the empty+-- string as an empty value.+jclNullMarker :: Lens' JobConfigurationLoad (Maybe Text)+jclNullMarker+ = lens _jclNullMarker+ (\ s a -> s{_jclNullMarker = a})++instance FromJSON JobConfigurationLoad where+ parseJSON+ = withObject "JobConfigurationLoad"+ (\ o ->+ JobConfigurationLoad' <$>+ (o .:? "skipLeadingRows") <*>+ (o .:? "projectionFields" .!= mempty)+ <*> (o .:? "destinationTable")+ <*> (o .:? "writeDisposition")+ <*> (o .:? "allowJaggedRows")+ <*> (o .:? "clustering")+ <*> (o .:? "rangePartitioning")+ <*> (o .:? "schemaInline")+ <*> (o .:? "ignoreUnknownValues")+ <*> (o .:? "schemaUpdateOptions" .!= mempty)+ <*> (o .:? "createDisposition")+ <*> (o .:? "schemaInlineFormat")+ <*> (o .:? "allowQuotedNewlines")+ <*> (o .:? "sourceFormat")+ <*> (o .:? "useAvroLogicalTypes")+ <*> (o .:? "schema")+ <*> (o .:? "timePartitioning")+ <*> (o .:? "quote")+ <*> (o .:? "maxBadRecords")+ <*> (o .:? "autodetect")+ <*> (o .:? "sourceUris" .!= mempty)+ <*> (o .:? "encoding")+ <*> (o .:? "destinationTableProperties")+ <*> (o .:? "destinationEncryptionConfiguration")+ <*> (o .:? "fieldDelimiter")+ <*> (o .:? "nullMarker"))++instance ToJSON JobConfigurationLoad where+ toJSON JobConfigurationLoad'{..}+ = object+ (catMaybes+ [("skipLeadingRows" .=) <$> _jclSkipLeadingRows,+ ("projectionFields" .=) <$> _jclProjectionFields,+ ("destinationTable" .=) <$> _jclDestinationTable,+ ("writeDisposition" .=) <$> _jclWriteDisPosition,+ ("allowJaggedRows" .=) <$> _jclAllowJaggedRows,+ ("clustering" .=) <$> _jclClustering,+ ("rangePartitioning" .=) <$> _jclRangePartitioning,+ ("schemaInline" .=) <$> _jclSchemaInline,+ ("ignoreUnknownValues" .=) <$>+ _jclIgnoreUnknownValues,+ ("schemaUpdateOptions" .=) <$>+ _jclSchemaUpdateOptions,+ ("createDisposition" .=) <$> _jclCreateDisPosition,+ ("schemaInlineFormat" .=) <$> _jclSchemaInlineFormat,+ ("allowQuotedNewlines" .=) <$>+ _jclAllowQuotedNewlines,+ ("sourceFormat" .=) <$> _jclSourceFormat,+ ("useAvroLogicalTypes" .=) <$>+ _jclUseAvroLogicalTypes,+ ("schema" .=) <$> _jclSchema,+ ("timePartitioning" .=) <$> _jclTimePartitioning,+ ("quote" .=) <$> _jclQuote,+ ("maxBadRecords" .=) <$> _jclMaxBadRecords,+ ("autodetect" .=) <$> _jclAutodetect,+ ("sourceUris" .=) <$> _jclSourceURIs,+ ("encoding" .=) <$> _jclEncoding,+ ("destinationTableProperties" .=) <$>+ _jclDestinationTableProperties,+ ("destinationEncryptionConfiguration" .=) <$>+ _jclDestinationEncryptionConfiguration,+ ("fieldDelimiter" .=) <$> _jclFieldDelimiter,+ ("nullMarker" .=) <$> _jclNullMarker])++--+-- /See:/ 'dataSetReference' smart constructor.+data DataSetReference = DataSetReference'+ { _dsrDataSetId :: !(Maybe Text)+ , _dsrProjectId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DataSetReference' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dsrDataSetId'+--+-- * 'dsrProjectId'+dataSetReference+ :: DataSetReference+dataSetReference =+ DataSetReference'+ { _dsrDataSetId = Nothing+ , _dsrProjectId = Nothing+ }++-- | [Required] A unique ID for this dataset, without the project name. The+-- ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores+-- (_). The maximum length is 1,024 characters.+dsrDataSetId :: Lens' DataSetReference (Maybe Text)+dsrDataSetId+ = lens _dsrDataSetId (\ s a -> s{_dsrDataSetId = a})++-- | [Optional] The ID of the project containing this dataset.+dsrProjectId :: Lens' DataSetReference (Maybe Text)+dsrProjectId+ = lens _dsrProjectId (\ s a -> s{_dsrProjectId = a})++instance FromJSON DataSetReference where+ parseJSON+ = withObject "DataSetReference"+ (\ o ->+ DataSetReference' <$>+ (o .:? "datasetId") <*> (o .:? "projectId"))++instance ToJSON DataSetReference where+ toJSON DataSetReference'{..}+ = object+ (catMaybes+ [("datasetId" .=) <$> _dsrDataSetId,+ ("projectId" .=) <$> _dsrProjectId])++--+-- /See:/ 'materializedViewDefinition' smart constructor.+data MaterializedViewDefinition = MaterializedViewDefinition'+ { _mvdQuery :: !(Maybe Text)+ , _mvdLastRefreshTime :: !(Maybe (Textual Int64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MaterializedViewDefinition' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mvdQuery'+--+-- * 'mvdLastRefreshTime'+materializedViewDefinition+ :: MaterializedViewDefinition+materializedViewDefinition =+ MaterializedViewDefinition'+ { _mvdQuery = Nothing+ , _mvdLastRefreshTime = Nothing+ }++-- | [Required] A query whose result is persisted.+mvdQuery :: Lens' MaterializedViewDefinition (Maybe Text)+mvdQuery = lens _mvdQuery (\ s a -> s{_mvdQuery = a})++-- | [Output-only] [TrustedTester] The time when this materialized view was+-- last modified, in milliseconds since the epoch.+mvdLastRefreshTime :: Lens' MaterializedViewDefinition (Maybe Int64)+mvdLastRefreshTime+ = lens _mvdLastRefreshTime+ (\ s a -> s{_mvdLastRefreshTime = a})+ . mapping _Coerce++instance FromJSON MaterializedViewDefinition where+ parseJSON+ = withObject "MaterializedViewDefinition"+ (\ o ->+ MaterializedViewDefinition' <$>+ (o .:? "query") <*> (o .:? "lastRefreshTime"))++instance ToJSON MaterializedViewDefinition where+ toJSON MaterializedViewDefinition'{..}+ = object+ (catMaybes+ [("query" .=) <$> _mvdQuery,+ ("lastRefreshTime" .=) <$> _mvdLastRefreshTime])++--+-- /See:/ 'tableDataInsertAllRequest' smart constructor.+data TableDataInsertAllRequest = TableDataInsertAllRequest'+ { _tdiarKind :: !Text+ , _tdiarIgnoreUnknownValues :: !(Maybe Bool)+ , _tdiarRows :: !(Maybe [TableDataInsertAllRequestRowsItem])+ , _tdiarTemplateSuffix :: !(Maybe Text)+ , _tdiarSkipInvalidRows :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableDataInsertAllRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tdiarKind'+--+-- * 'tdiarIgnoreUnknownValues'+--+-- * 'tdiarRows'+--+-- * 'tdiarTemplateSuffix'+--+-- * 'tdiarSkipInvalidRows'+tableDataInsertAllRequest+ :: TableDataInsertAllRequest+tableDataInsertAllRequest =+ TableDataInsertAllRequest'+ { _tdiarKind = "bigquery#tableDataInsertAllRequest"+ , _tdiarIgnoreUnknownValues = Nothing+ , _tdiarRows = Nothing+ , _tdiarTemplateSuffix = Nothing+ , _tdiarSkipInvalidRows = Nothing+ }++-- | The resource type of the response.+tdiarKind :: Lens' TableDataInsertAllRequest Text+tdiarKind+ = lens _tdiarKind (\ s a -> s{_tdiarKind = a})++-- | [Optional] Accept rows that contain values that do not match the schema.+-- The unknown values are ignored. Default is false, which treats unknown+-- values as errors.+tdiarIgnoreUnknownValues :: Lens' TableDataInsertAllRequest (Maybe Bool)+tdiarIgnoreUnknownValues+ = lens _tdiarIgnoreUnknownValues+ (\ s a -> s{_tdiarIgnoreUnknownValues = a})++-- | The rows to insert.+tdiarRows :: Lens' TableDataInsertAllRequest [TableDataInsertAllRequestRowsItem]+tdiarRows+ = lens _tdiarRows (\ s a -> s{_tdiarRows = a}) .+ _Default+ . _Coerce++-- | If specified, treats the destination table as a base template, and+-- inserts the rows into an instance table named+-- \"{destination}{templateSuffix}\". BigQuery will manage creation of the+-- instance table, using the schema of the base template table. See+-- https:\/\/cloud.google.com\/bigquery\/streaming-data-into-bigquery#template-tables+-- for considerations when working with templates tables.+tdiarTemplateSuffix :: Lens' TableDataInsertAllRequest (Maybe Text)+tdiarTemplateSuffix+ = lens _tdiarTemplateSuffix+ (\ s a -> s{_tdiarTemplateSuffix = a})++-- | [Optional] Insert all valid rows of a request, even if invalid rows+-- exist. The default value is false, which causes the entire request to+-- fail if any invalid rows exist.+tdiarSkipInvalidRows :: Lens' TableDataInsertAllRequest (Maybe Bool)+tdiarSkipInvalidRows+ = lens _tdiarSkipInvalidRows+ (\ s a -> s{_tdiarSkipInvalidRows = a})++instance FromJSON TableDataInsertAllRequest where+ parseJSON+ = withObject "TableDataInsertAllRequest"+ (\ o ->+ TableDataInsertAllRequest' <$>+ (o .:? "kind" .!=+ "bigquery#tableDataInsertAllRequest")+ <*> (o .:? "ignoreUnknownValues")+ <*> (o .:? "rows" .!= mempty)+ <*> (o .:? "templateSuffix")+ <*> (o .:? "skipInvalidRows"))++instance ToJSON TableDataInsertAllRequest where+ toJSON TableDataInsertAllRequest'{..}+ = object+ (catMaybes+ [Just ("kind" .= _tdiarKind),+ ("ignoreUnknownValues" .=) <$>+ _tdiarIgnoreUnknownValues,+ ("rows" .=) <$> _tdiarRows,+ ("templateSuffix" .=) <$> _tdiarTemplateSuffix,+ ("skipInvalidRows" .=) <$> _tdiarSkipInvalidRows])++--+-- /See:/ 'getServiceAccountResponse' smart constructor.+data GetServiceAccountResponse = GetServiceAccountResponse'+ { _gsarEmail :: !(Maybe Text)+ , _gsarKind :: !Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetServiceAccountResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gsarEmail'+--+-- * 'gsarKind'+getServiceAccountResponse+ :: GetServiceAccountResponse+getServiceAccountResponse =+ GetServiceAccountResponse'+ { _gsarEmail = Nothing+ , _gsarKind = "bigquery#getServiceAccountResponse"+ }++-- | The service account email address.+gsarEmail :: Lens' GetServiceAccountResponse (Maybe Text)+gsarEmail+ = lens _gsarEmail (\ s a -> s{_gsarEmail = a})++-- | The resource type of the response.+gsarKind :: Lens' GetServiceAccountResponse Text+gsarKind = lens _gsarKind (\ s a -> s{_gsarKind = a})++instance FromJSON GetServiceAccountResponse where+ parseJSON+ = withObject "GetServiceAccountResponse"+ (\ o ->+ GetServiceAccountResponse' <$>+ (o .:? "email") <*>+ (o .:? "kind" .!=+ "bigquery#getServiceAccountResponse"))++instance ToJSON GetServiceAccountResponse where+ toJSON GetServiceAccountResponse'{..}+ = object+ (catMaybes+ [("email" .=) <$> _gsarEmail,+ Just ("kind" .= _gsarKind)])++--+-- /See:/ 'projectListProjectsItem' smart constructor.+data ProjectListProjectsItem = ProjectListProjectsItem'+ { _plpiFriendlyName :: !(Maybe Text)+ , _plpiKind :: !Text+ , _plpiProjectReference :: !(Maybe ProjectReference)+ , _plpiId :: !(Maybe Text)+ , _plpiNumericId :: !(Maybe (Textual Word64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProjectListProjectsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'plpiFriendlyName'+--+-- * 'plpiKind'+--+-- * 'plpiProjectReference'+--+-- * 'plpiId'+--+-- * 'plpiNumericId'+projectListProjectsItem+ :: ProjectListProjectsItem+projectListProjectsItem =+ ProjectListProjectsItem'+ { _plpiFriendlyName = Nothing+ , _plpiKind = "bigquery#project"+ , _plpiProjectReference = Nothing+ , _plpiId = Nothing+ , _plpiNumericId = Nothing+ }++-- | A descriptive name for this project.+plpiFriendlyName :: Lens' ProjectListProjectsItem (Maybe Text)+plpiFriendlyName+ = lens _plpiFriendlyName+ (\ s a -> s{_plpiFriendlyName = a})++-- | The resource type.+plpiKind :: Lens' ProjectListProjectsItem Text+plpiKind = lens _plpiKind (\ s a -> s{_plpiKind = a})++-- | A unique reference to this project.+plpiProjectReference :: Lens' ProjectListProjectsItem (Maybe ProjectReference)+plpiProjectReference+ = lens _plpiProjectReference+ (\ s a -> s{_plpiProjectReference = a})++-- | An opaque ID of this project.+plpiId :: Lens' ProjectListProjectsItem (Maybe Text)+plpiId = lens _plpiId (\ s a -> s{_plpiId = a})++-- | The numeric ID of this project.+plpiNumericId :: Lens' ProjectListProjectsItem (Maybe Word64)+plpiNumericId+ = lens _plpiNumericId+ (\ s a -> s{_plpiNumericId = a})+ . mapping _Coerce++instance FromJSON ProjectListProjectsItem where+ parseJSON+ = withObject "ProjectListProjectsItem"+ (\ o ->+ ProjectListProjectsItem' <$>+ (o .:? "friendlyName") <*>+ (o .:? "kind" .!= "bigquery#project")+ <*> (o .:? "projectReference")+ <*> (o .:? "id")+ <*> (o .:? "numericId"))++instance ToJSON ProjectListProjectsItem where+ toJSON ProjectListProjectsItem'{..}+ = object+ (catMaybes+ [("friendlyName" .=) <$> _plpiFriendlyName,+ Just ("kind" .= _plpiKind),+ ("projectReference" .=) <$> _plpiProjectReference,+ ("id" .=) <$> _plpiId,+ ("numericId" .=) <$> _plpiNumericId])++--+-- /See:/ 'bigtableColumn' smart constructor.+data BigtableColumn = BigtableColumn'+ { _bcQualifierEncoded :: !(Maybe Bytes)+ , _bcFieldName :: !(Maybe Text)+ , _bcQualifierString :: !(Maybe Text)+ , _bcOnlyReadLatest :: !(Maybe Bool)+ , _bcType :: !(Maybe Text)+ , _bcEncoding :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'BigtableColumn' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bcQualifierEncoded'+--+-- * 'bcFieldName'+--+-- * 'bcQualifierString'+--+-- * 'bcOnlyReadLatest'+--+-- * 'bcType'+--+-- * 'bcEncoding'+bigtableColumn+ :: BigtableColumn+bigtableColumn =+ BigtableColumn'+ { _bcQualifierEncoded = Nothing+ , _bcFieldName = Nothing+ , _bcQualifierString = Nothing+ , _bcOnlyReadLatest = Nothing+ , _bcType = Nothing+ , _bcEncoding = Nothing+ }++-- | [Required] Qualifier of the column. Columns in the parent column family+-- that has this exact qualifier are exposed as . field. If the qualifier+-- is valid UTF-8 string, it can be specified in the qualifier_string+-- field. Otherwise, a base-64 encoded value must be set to+-- qualifier_encoded. The column field name is the same as the column+-- qualifier. However, if the qualifier is not a valid BigQuery field+-- identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid identifier+-- must be provided as field_name.+bcQualifierEncoded :: Lens' BigtableColumn (Maybe ByteString)+bcQualifierEncoded+ = lens _bcQualifierEncoded+ (\ s a -> s{_bcQualifierEncoded = a})+ . mapping _Bytes++-- | [Optional] If the qualifier is not a valid BigQuery field identifier+-- i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid identifier must be+-- provided as the column field name and is used as field name in queries.+bcFieldName :: Lens' BigtableColumn (Maybe Text)+bcFieldName+ = lens _bcFieldName (\ s a -> s{_bcFieldName = a})++bcQualifierString :: Lens' BigtableColumn (Maybe Text)+bcQualifierString+ = lens _bcQualifierString+ (\ s a -> s{_bcQualifierString = a})++-- | [Optional] If this is set, only the latest version of value in this+-- column are exposed. \'onlyReadLatest\' can also be set at the column+-- family level. However, the setting at this level takes precedence if+-- \'onlyReadLatest\' is set at both levels.+bcOnlyReadLatest :: Lens' BigtableColumn (Maybe Bool)+bcOnlyReadLatest+ = lens _bcOnlyReadLatest+ (\ s a -> s{_bcOnlyReadLatest = a})++-- | [Optional] The type to convert the value in cells of this column. The+-- values are expected to be encoded using HBase Bytes.toBytes function+-- when using the BINARY encoding value. Following BigQuery types are+-- allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default+-- type is BYTES. \'type\' can also be set at the column family level.+-- However, the setting at this level takes precedence if \'type\' is set+-- at both levels.+bcType :: Lens' BigtableColumn (Maybe Text)+bcType = lens _bcType (\ s a -> s{_bcType = a})++-- | [Optional] The encoding of the values when the type is not STRING.+-- Acceptable encoding values are: TEXT - indicates values are alphanumeric+-- text strings. BINARY - indicates values are encoded using HBase+-- Bytes.toBytes family of functions. \'encoding\' can also be set at the+-- column family level. However, the setting at this level takes precedence+-- if \'encoding\' is set at both levels.+bcEncoding :: Lens' BigtableColumn (Maybe Text)+bcEncoding+ = lens _bcEncoding (\ s a -> s{_bcEncoding = a})++instance FromJSON BigtableColumn where+ parseJSON+ = withObject "BigtableColumn"+ (\ o ->+ BigtableColumn' <$>+ (o .:? "qualifierEncoded") <*> (o .:? "fieldName")+ <*> (o .:? "qualifierString")+ <*> (o .:? "onlyReadLatest")+ <*> (o .:? "type")+ <*> (o .:? "encoding"))++instance ToJSON BigtableColumn where+ toJSON BigtableColumn'{..}+ = object+ (catMaybes+ [("qualifierEncoded" .=) <$> _bcQualifierEncoded,+ ("fieldName" .=) <$> _bcFieldName,+ ("qualifierString" .=) <$> _bcQualifierString,+ ("onlyReadLatest" .=) <$> _bcOnlyReadLatest,+ ("type" .=) <$> _bcType,+ ("encoding" .=) <$> _bcEncoding])++--+-- /See:/ 'streamingbuffer' smart constructor.+data Streamingbuffer = Streamingbuffer'+ { _sEstimatedBytes :: !(Maybe (Textual Word64))+ , _sOldestEntryTime :: !(Maybe (Textual Word64))+ , _sEstimatedRows :: !(Maybe (Textual Word64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Streamingbuffer' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sEstimatedBytes'+--+-- * 'sOldestEntryTime'+--+-- * 'sEstimatedRows'+streamingbuffer+ :: Streamingbuffer+streamingbuffer =+ Streamingbuffer'+ { _sEstimatedBytes = Nothing+ , _sOldestEntryTime = Nothing+ , _sEstimatedRows = Nothing+ }++-- | [Output-only] A lower-bound estimate of the number of bytes currently in+-- the streaming buffer.+sEstimatedBytes :: Lens' Streamingbuffer (Maybe Word64)+sEstimatedBytes+ = lens _sEstimatedBytes+ (\ s a -> s{_sEstimatedBytes = a})+ . mapping _Coerce++-- | [Output-only] Contains the timestamp of the oldest entry in the+-- streaming buffer, in milliseconds since the epoch, if the streaming+-- buffer is available.+sOldestEntryTime :: Lens' Streamingbuffer (Maybe Word64)+sOldestEntryTime+ = lens _sOldestEntryTime+ (\ s a -> s{_sOldestEntryTime = a})+ . mapping _Coerce++-- | [Output-only] A lower-bound estimate of the number of rows currently in+-- the streaming buffer.+sEstimatedRows :: Lens' Streamingbuffer (Maybe Word64)+sEstimatedRows+ = lens _sEstimatedRows+ (\ s a -> s{_sEstimatedRows = a})+ . mapping _Coerce++instance FromJSON Streamingbuffer where+ parseJSON+ = withObject "Streamingbuffer"+ (\ o ->+ Streamingbuffer' <$>+ (o .:? "estimatedBytes") <*>+ (o .:? "oldestEntryTime")+ <*> (o .:? "estimatedRows"))++instance ToJSON Streamingbuffer where+ toJSON Streamingbuffer'{..}+ = object+ (catMaybes+ [("estimatedBytes" .=) <$> _sEstimatedBytes,+ ("oldestEntryTime" .=) <$> _sOldestEntryTime,+ ("estimatedRows" .=) <$> _sEstimatedRows])++--+-- /See:/ 'tableRow' smart constructor.+newtype TableRow = TableRow'+ { _trF :: Maybe [TableCell]+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableRow' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'trF'+tableRow+ :: TableRow+tableRow =+ TableRow'+ { _trF = Nothing+ }++-- | Represents a single row in the result set, consisting of one or more+-- fields.+trF :: Lens' TableRow [TableCell]+trF+ = lens _trF (\ s a -> s{_trF = a}) . _Default .+ _Coerce++instance FromJSON TableRow where+ parseJSON+ = withObject "TableRow"+ (\ o -> TableRow' <$> (o .:? "f" .!= mempty))++instance ToJSON TableRow where+ toJSON TableRow'{..}+ = object (catMaybes [("f" .=) <$> _trF])++--+-- /See:/ 'jobListJobsItem' smart constructor.+data JobListJobsItem = JobListJobsItem'+ { _jljiJobReference :: !(Maybe JobReference)+ , _jljiStatus :: !(Maybe JobStatus)+ , _jljiState :: !(Maybe Text)+ , _jljiUserEmail :: !(Maybe Text)+ , _jljiKind :: !Text+ , _jljiErrorResult :: !(Maybe ErrorProto)+ , _jljiId :: !(Maybe Text)+ , _jljiStatistics :: !(Maybe JobStatistics)+ , _jljiConfiguration :: !(Maybe JobConfiguration)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobListJobsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jljiJobReference'+--+-- * 'jljiStatus'+--+-- * 'jljiState'+--+-- * 'jljiUserEmail'+--+-- * 'jljiKind'+--+-- * 'jljiErrorResult'+--+-- * 'jljiId'+--+-- * 'jljiStatistics'+--+-- * 'jljiConfiguration'+jobListJobsItem+ :: JobListJobsItem+jobListJobsItem =+ JobListJobsItem'+ { _jljiJobReference = Nothing+ , _jljiStatus = Nothing+ , _jljiState = Nothing+ , _jljiUserEmail = Nothing+ , _jljiKind = "bigquery#job"+ , _jljiErrorResult = Nothing+ , _jljiId = Nothing+ , _jljiStatistics = Nothing+ , _jljiConfiguration = Nothing+ }++-- | Job reference uniquely identifying the job.+jljiJobReference :: Lens' JobListJobsItem (Maybe JobReference)+jljiJobReference+ = lens _jljiJobReference+ (\ s a -> s{_jljiJobReference = a})++-- | [Full-projection-only] Describes the state of the job.+jljiStatus :: Lens' JobListJobsItem (Maybe JobStatus)+jljiStatus+ = lens _jljiStatus (\ s a -> s{_jljiStatus = a})++-- | Running state of the job. When the state is DONE, errorResult can be+-- checked to determine whether the job succeeded or failed.+jljiState :: Lens' JobListJobsItem (Maybe Text)+jljiState+ = lens _jljiState (\ s a -> s{_jljiState = a})++-- | [Full-projection-only] Email address of the user who ran the job.+jljiUserEmail :: Lens' JobListJobsItem (Maybe Text)+jljiUserEmail+ = lens _jljiUserEmail+ (\ s a -> s{_jljiUserEmail = a})++-- | The resource type.+jljiKind :: Lens' JobListJobsItem Text+jljiKind = lens _jljiKind (\ s a -> s{_jljiKind = a})++-- | A result object that will be present only if the job has failed.+jljiErrorResult :: Lens' JobListJobsItem (Maybe ErrorProto)+jljiErrorResult+ = lens _jljiErrorResult+ (\ s a -> s{_jljiErrorResult = a})++-- | Unique opaque ID of the job.+jljiId :: Lens' JobListJobsItem (Maybe Text)+jljiId = lens _jljiId (\ s a -> s{_jljiId = a})++-- | [Output-only] Information about the job, including starting time and+-- ending time of the job.+jljiStatistics :: Lens' JobListJobsItem (Maybe JobStatistics)+jljiStatistics+ = lens _jljiStatistics+ (\ s a -> s{_jljiStatistics = a})++-- | [Full-projection-only] Specifies the job configuration.+jljiConfiguration :: Lens' JobListJobsItem (Maybe JobConfiguration)+jljiConfiguration+ = lens _jljiConfiguration+ (\ s a -> s{_jljiConfiguration = a})++instance FromJSON JobListJobsItem where+ parseJSON+ = withObject "JobListJobsItem"+ (\ o ->+ JobListJobsItem' <$>+ (o .:? "jobReference") <*> (o .:? "status") <*>+ (o .:? "state")+ <*> (o .:? "user_email")+ <*> (o .:? "kind" .!= "bigquery#job")+ <*> (o .:? "errorResult")+ <*> (o .:? "id")+ <*> (o .:? "statistics")+ <*> (o .:? "configuration"))++instance ToJSON JobListJobsItem where+ toJSON JobListJobsItem'{..}+ = object+ (catMaybes+ [("jobReference" .=) <$> _jljiJobReference,+ ("status" .=) <$> _jljiStatus,+ ("state" .=) <$> _jljiState,+ ("user_email" .=) <$> _jljiUserEmail,+ Just ("kind" .= _jljiKind),+ ("errorResult" .=) <$> _jljiErrorResult,+ ("id" .=) <$> _jljiId,+ ("statistics" .=) <$> _jljiStatistics,+ ("configuration" .=) <$> _jljiConfiguration])++--+-- /See:/ 'timePartitioning' smart constructor.+data TimePartitioning = TimePartitioning'+ { _tpField :: !(Maybe Text)+ , _tpExpirationMs :: !(Maybe (Textual Int64))+ , _tpRequirePartitionFilter :: !(Maybe Bool)+ , _tpType :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TimePartitioning' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tpField'+--+-- * 'tpExpirationMs'+--+-- * 'tpRequirePartitionFilter'+--+-- * 'tpType'+timePartitioning+ :: TimePartitioning+timePartitioning =+ TimePartitioning'+ { _tpField = Nothing+ , _tpExpirationMs = Nothing+ , _tpRequirePartitionFilter = Nothing+ , _tpType = Nothing+ }++-- | [Beta] [Optional] If not set, the table is partitioned by pseudo column,+-- referenced via either \'_PARTITIONTIME\' as TIMESTAMP type, or+-- \'_PARTITIONDATE\' as DATE type. If field is specified, the table is+-- instead partitioned by this field. The field must be a top-level+-- TIMESTAMP or DATE field. Its mode must be NULLABLE or REQUIRED.+tpField :: Lens' TimePartitioning (Maybe Text)+tpField = lens _tpField (\ s a -> s{_tpField = a})++-- | [Optional] Number of milliseconds for which to keep the storage for+-- partitions in the table. The storage in a partition will have an+-- expiration time of its partition time plus this value.+tpExpirationMs :: Lens' TimePartitioning (Maybe Int64)+tpExpirationMs+ = lens _tpExpirationMs+ (\ s a -> s{_tpExpirationMs = a})+ . mapping _Coerce++tpRequirePartitionFilter :: Lens' TimePartitioning (Maybe Bool)+tpRequirePartitionFilter+ = lens _tpRequirePartitionFilter+ (\ s a -> s{_tpRequirePartitionFilter = a})++-- | [Required] The only type supported is DAY, which will generate one+-- partition per day.+tpType :: Lens' TimePartitioning (Maybe Text)+tpType = lens _tpType (\ s a -> s{_tpType = a})++instance FromJSON TimePartitioning where+ parseJSON+ = withObject "TimePartitioning"+ (\ o ->+ TimePartitioning' <$>+ (o .:? "field") <*> (o .:? "expirationMs") <*>+ (o .:? "requirePartitionFilter")+ <*> (o .:? "type"))++instance ToJSON TimePartitioning where+ toJSON TimePartitioning'{..}+ = object+ (catMaybes+ [("field" .=) <$> _tpField,+ ("expirationMs" .=) <$> _tpExpirationMs,+ ("requirePartitionFilter" .=) <$>+ _tpRequirePartitionFilter,+ ("type" .=) <$> _tpType])++-- | [Optional] The struct field values, in order of the struct type\'s+-- declaration.+--+-- /See:/ 'queryParameterValueStructValues' smart constructor.+newtype QueryParameterValueStructValues = QueryParameterValueStructValues'+ { _qpvsvAddtional :: HashMap Text QueryParameterValue+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'QueryParameterValueStructValues' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'qpvsvAddtional'+queryParameterValueStructValues+ :: HashMap Text QueryParameterValue -- ^ 'qpvsvAddtional'+ -> QueryParameterValueStructValues+queryParameterValueStructValues pQpvsvAddtional_ =+ QueryParameterValueStructValues'+ { _qpvsvAddtional = _Coerce # pQpvsvAddtional_+ }++qpvsvAddtional :: Lens' QueryParameterValueStructValues (HashMap Text QueryParameterValue)+qpvsvAddtional+ = lens _qpvsvAddtional+ (\ s a -> s{_qpvsvAddtional = a})+ . _Coerce++instance FromJSON QueryParameterValueStructValues+ where+ parseJSON+ = withObject "QueryParameterValueStructValues"+ (\ o ->+ QueryParameterValueStructValues' <$>+ (parseJSONObject o))++instance ToJSON QueryParameterValueStructValues where+ toJSON = toJSON . _qpvsvAddtional++-- | The labels associated with this dataset. You can use these to organize+-- and group your datasets. You can set this property when inserting or+-- updating a dataset. See Creating and Updating Dataset Labels for more+-- information.+--+-- /See:/ 'dataSetLabels' smart constructor.+newtype DataSetLabels = DataSetLabels'+ { _dslAddtional :: HashMap Text Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DataSetLabels' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dslAddtional'+dataSetLabels+ :: HashMap Text Text -- ^ 'dslAddtional'+ -> DataSetLabels+dataSetLabels pDslAddtional_ =+ DataSetLabels'+ { _dslAddtional = _Coerce # pDslAddtional_+ }++dslAddtional :: Lens' DataSetLabels (HashMap Text Text)+dslAddtional+ = lens _dslAddtional (\ s a -> s{_dslAddtional = a})+ . _Coerce++instance FromJSON DataSetLabels where+ parseJSON+ = withObject "DataSetLabels"+ (\ o -> DataSetLabels' <$> (parseJSONObject o))++instance ToJSON DataSetLabels where+ toJSON = toJSON . _dslAddtional++--+-- /See:/ 'jobConfiguration' smart constructor.+data JobConfiguration = JobConfiguration'+ { _jcJobType :: !(Maybe Text)+ , _jcCopy :: !(Maybe JobConfigurationTableCopy)+ , _jcLoad :: !(Maybe JobConfigurationLoad)+ , _jcQuery :: !(Maybe JobConfigurationQuery)+ , _jcJobTimeoutMs :: !(Maybe (Textual Int64))+ , _jcExtract :: !(Maybe JobConfigurationExtract)+ , _jcLabels :: !(Maybe JobConfigurationLabels)+ , _jcDryRun :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobConfiguration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jcJobType'+--+-- * 'jcCopy'+--+-- * 'jcLoad'+--+-- * 'jcQuery'+--+-- * 'jcJobTimeoutMs'+--+-- * 'jcExtract'+--+-- * 'jcLabels'+--+-- * 'jcDryRun'+jobConfiguration+ :: JobConfiguration+jobConfiguration =+ JobConfiguration'+ { _jcJobType = Nothing+ , _jcCopy = Nothing+ , _jcLoad = Nothing+ , _jcQuery = Nothing+ , _jcJobTimeoutMs = Nothing+ , _jcExtract = Nothing+ , _jcLabels = Nothing+ , _jcDryRun = Nothing+ }++-- | [Output-only] The type of the job. Can be QUERY, LOAD, EXTRACT, COPY or+-- UNKNOWN.+jcJobType :: Lens' JobConfiguration (Maybe Text)+jcJobType+ = lens _jcJobType (\ s a -> s{_jcJobType = a})++-- | [Pick one] Copies a table.+jcCopy :: Lens' JobConfiguration (Maybe JobConfigurationTableCopy)+jcCopy = lens _jcCopy (\ s a -> s{_jcCopy = a})++-- | [Pick one] Configures a load job.+jcLoad :: Lens' JobConfiguration (Maybe JobConfigurationLoad)+jcLoad = lens _jcLoad (\ s a -> s{_jcLoad = a})++-- | [Pick one] Configures a query job.+jcQuery :: Lens' JobConfiguration (Maybe JobConfigurationQuery)+jcQuery = lens _jcQuery (\ s a -> s{_jcQuery = a})++-- | [Optional] Job timeout in milliseconds. If this time limit is exceeded,+-- BigQuery may attempt to terminate the job.+jcJobTimeoutMs :: Lens' JobConfiguration (Maybe Int64)+jcJobTimeoutMs+ = lens _jcJobTimeoutMs+ (\ s a -> s{_jcJobTimeoutMs = a})+ . mapping _Coerce++-- | [Pick one] Configures an extract job.+jcExtract :: Lens' JobConfiguration (Maybe JobConfigurationExtract)+jcExtract+ = lens _jcExtract (\ s a -> s{_jcExtract = a})++-- | The labels associated with this job. You can use these to organize and+-- group your jobs. Label keys and values can be no longer than 63+-- characters, can only contain lowercase letters, numeric characters,+-- underscores and dashes. International characters are allowed. Label+-- values are optional. Label keys must start with a letter and each label+-- in the list must have a different key.+jcLabels :: Lens' JobConfiguration (Maybe JobConfigurationLabels)+jcLabels = lens _jcLabels (\ s a -> s{_jcLabels = a})++-- | [Optional] If set, don\'t actually run this job. A valid query will+-- return a mostly empty response with some processing statistics, while an+-- invalid query will return the same error it would if it wasn\'t a dry+-- run. Behavior of non-query jobs is undefined.+jcDryRun :: Lens' JobConfiguration (Maybe Bool)+jcDryRun = lens _jcDryRun (\ s a -> s{_jcDryRun = a})++instance FromJSON JobConfiguration where+ parseJSON+ = withObject "JobConfiguration"+ (\ o ->+ JobConfiguration' <$>+ (o .:? "jobType") <*> (o .:? "copy") <*>+ (o .:? "load")+ <*> (o .:? "query")+ <*> (o .:? "jobTimeoutMs")+ <*> (o .:? "extract")+ <*> (o .:? "labels")+ <*> (o .:? "dryRun"))++instance ToJSON JobConfiguration where+ toJSON JobConfiguration'{..}+ = object+ (catMaybes+ [("jobType" .=) <$> _jcJobType,+ ("copy" .=) <$> _jcCopy, ("load" .=) <$> _jcLoad,+ ("query" .=) <$> _jcQuery,+ ("jobTimeoutMs" .=) <$> _jcJobTimeoutMs,+ ("extract" .=) <$> _jcExtract,+ ("labels" .=) <$> _jcLabels,+ ("dryRun" .=) <$> _jcDryRun])++--+-- /See:/ 'job' smart constructor.+data Job = Job'+ { _jJobReference :: !(Maybe JobReference)+ , _jStatus :: !(Maybe JobStatus)+ , _jEtag :: !(Maybe Text)+ , _jUserEmail :: !(Maybe Text)+ , _jKind :: !Text+ , _jSelfLink :: !(Maybe Text)+ , _jId :: !(Maybe Text)+ , _jStatistics :: !(Maybe JobStatistics)+ , _jConfiguration :: !(Maybe JobConfiguration)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Job' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jJobReference'+--+-- * 'jStatus'+--+-- * 'jEtag'+--+-- * 'jUserEmail'+--+-- * 'jKind'+--+-- * 'jSelfLink'+--+-- * 'jId'+--+-- * 'jStatistics'+--+-- * 'jConfiguration'+job+ :: Job+job =+ Job'+ { _jJobReference = Nothing+ , _jStatus = Nothing+ , _jEtag = Nothing+ , _jUserEmail = Nothing+ , _jKind = "bigquery#job"+ , _jSelfLink = Nothing+ , _jId = Nothing+ , _jStatistics = Nothing+ , _jConfiguration = Nothing+ }++-- | [Optional] Reference describing the unique-per-user name of the job.+jJobReference :: Lens' Job (Maybe JobReference)+jJobReference+ = lens _jJobReference+ (\ s a -> s{_jJobReference = a})++-- | [Output-only] The status of this job. Examine this value when polling an+-- asynchronous job to see if the job is complete.+jStatus :: Lens' Job (Maybe JobStatus)+jStatus = lens _jStatus (\ s a -> s{_jStatus = a})++-- | [Output-only] A hash of this resource.+jEtag :: Lens' Job (Maybe Text)+jEtag = lens _jEtag (\ s a -> s{_jEtag = a})++-- | [Output-only] Email address of the user who ran the job.+jUserEmail :: Lens' Job (Maybe Text)+jUserEmail+ = lens _jUserEmail (\ s a -> s{_jUserEmail = a})++-- | [Output-only] The type of the resource.+jKind :: Lens' Job Text+jKind = lens _jKind (\ s a -> s{_jKind = a})++-- | [Output-only] A URL that can be used to access this resource again.+jSelfLink :: Lens' Job (Maybe Text)+jSelfLink+ = lens _jSelfLink (\ s a -> s{_jSelfLink = a})++-- | [Output-only] Opaque ID field of the job+jId :: Lens' Job (Maybe Text)+jId = lens _jId (\ s a -> s{_jId = a})++-- | [Output-only] Information about the job, including starting time and+-- ending time of the job.+jStatistics :: Lens' Job (Maybe JobStatistics)+jStatistics+ = lens _jStatistics (\ s a -> s{_jStatistics = a})++-- | [Required] Describes the job configuration.+jConfiguration :: Lens' Job (Maybe JobConfiguration)+jConfiguration+ = lens _jConfiguration+ (\ s a -> s{_jConfiguration = a})++instance FromJSON Job where+ parseJSON+ = withObject "Job"+ (\ o ->+ Job' <$>+ (o .:? "jobReference") <*> (o .:? "status") <*>+ (o .:? "etag")+ <*> (o .:? "user_email")+ <*> (o .:? "kind" .!= "bigquery#job")+ <*> (o .:? "selfLink")+ <*> (o .:? "id")+ <*> (o .:? "statistics")+ <*> (o .:? "configuration"))++instance ToJSON Job where+ toJSON Job'{..}+ = object+ (catMaybes+ [("jobReference" .=) <$> _jJobReference,+ ("status" .=) <$> _jStatus, ("etag" .=) <$> _jEtag,+ ("user_email" .=) <$> _jUserEmail,+ Just ("kind" .= _jKind),+ ("selfLink" .=) <$> _jSelfLink, ("id" .=) <$> _jId,+ ("statistics" .=) <$> _jStatistics,+ ("configuration" .=) <$> _jConfiguration])++--+-- /See:/ 'encryptionConfiguration' smart constructor.+newtype EncryptionConfiguration = EncryptionConfiguration'+ { _ecKmsKeyName :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'EncryptionConfiguration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ecKmsKeyName'+encryptionConfiguration+ :: EncryptionConfiguration+encryptionConfiguration =+ EncryptionConfiguration'+ { _ecKmsKeyName = Nothing+ }++-- | [Optional] Describes the Cloud KMS encryption key that will be used to+-- protect destination BigQuery table. The BigQuery Service Account+-- associated with your project requires access to this encryption key.+ecKmsKeyName :: Lens' EncryptionConfiguration (Maybe Text)+ecKmsKeyName+ = lens _ecKmsKeyName (\ s a -> s{_ecKmsKeyName = a})++instance FromJSON EncryptionConfiguration where+ parseJSON+ = withObject "EncryptionConfiguration"+ (\ o ->+ EncryptionConfiguration' <$> (o .:? "kmsKeyName"))++instance ToJSON EncryptionConfiguration where+ toJSON EncryptionConfiguration'{..}+ = object+ (catMaybes [("kmsKeyName" .=) <$> _ecKmsKeyName])++--+-- /See:/ 'tableDataInsertAllResponseInsertErrorsItem' smart constructor.+data TableDataInsertAllResponseInsertErrorsItem = TableDataInsertAllResponseInsertErrorsItem'+ { _tdiarieiErrors :: !(Maybe [ErrorProto])+ , _tdiarieiIndex :: !(Maybe (Textual Word32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableDataInsertAllResponseInsertErrorsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tdiarieiErrors'+--+-- * 'tdiarieiIndex'+tableDataInsertAllResponseInsertErrorsItem+ :: TableDataInsertAllResponseInsertErrorsItem+tableDataInsertAllResponseInsertErrorsItem =+ TableDataInsertAllResponseInsertErrorsItem'+ { _tdiarieiErrors = Nothing+ , _tdiarieiIndex = Nothing+ }++-- | Error information for the row indicated by the index property.+tdiarieiErrors :: Lens' TableDataInsertAllResponseInsertErrorsItem [ErrorProto]+tdiarieiErrors+ = lens _tdiarieiErrors+ (\ s a -> s{_tdiarieiErrors = a})+ . _Default+ . _Coerce++-- | The index of the row that error applies to.+tdiarieiIndex :: Lens' TableDataInsertAllResponseInsertErrorsItem (Maybe Word32)+tdiarieiIndex+ = lens _tdiarieiIndex+ (\ s a -> s{_tdiarieiIndex = a})+ . mapping _Coerce++instance FromJSON+ TableDataInsertAllResponseInsertErrorsItem where+ parseJSON+ = withObject+ "TableDataInsertAllResponseInsertErrorsItem"+ (\ o ->+ TableDataInsertAllResponseInsertErrorsItem' <$>+ (o .:? "errors" .!= mempty) <*> (o .:? "index"))++instance ToJSON+ TableDataInsertAllResponseInsertErrorsItem where+ toJSON+ TableDataInsertAllResponseInsertErrorsItem'{..}+ = object+ (catMaybes+ [("errors" .=) <$> _tdiarieiErrors,+ ("index" .=) <$> _tdiarieiIndex])++--+-- /See:/ 'jobConfigurationExtract' smart constructor.+data JobConfigurationExtract = JobConfigurationExtract'+ { _jceDestinationFormat :: !(Maybe Text)+ , _jceSourceTable :: !(Maybe TableReference)+ , _jcePrintHeader :: !Bool+ , _jceCompression :: !(Maybe Text)+ , _jceDestinationURIs :: !(Maybe [Text])+ , _jceDestinationURI :: !(Maybe Text)+ , _jceFieldDelimiter :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobConfigurationExtract' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jceDestinationFormat'+--+-- * 'jceSourceTable'+--+-- * 'jcePrintHeader'+--+-- * 'jceCompression'+--+-- * 'jceDestinationURIs'+--+-- * 'jceDestinationURI'+--+-- * 'jceFieldDelimiter'+jobConfigurationExtract+ :: JobConfigurationExtract+jobConfigurationExtract =+ JobConfigurationExtract'+ { _jceDestinationFormat = Nothing+ , _jceSourceTable = Nothing+ , _jcePrintHeader = True+ , _jceCompression = Nothing+ , _jceDestinationURIs = Nothing+ , _jceDestinationURI = Nothing+ , _jceFieldDelimiter = Nothing+ }++-- | [Optional] The exported file format. Possible values include CSV,+-- NEWLINE_DELIMITED_JSON and AVRO. The default value is CSV. Tables with+-- nested or repeated fields cannot be exported as CSV.+jceDestinationFormat :: Lens' JobConfigurationExtract (Maybe Text)+jceDestinationFormat+ = lens _jceDestinationFormat+ (\ s a -> s{_jceDestinationFormat = a})++-- | [Required] A reference to the table being exported.+jceSourceTable :: Lens' JobConfigurationExtract (Maybe TableReference)+jceSourceTable+ = lens _jceSourceTable+ (\ s a -> s{_jceSourceTable = a})++-- | [Optional] Whether to print out a header row in the results. Default is+-- true.+jcePrintHeader :: Lens' JobConfigurationExtract Bool+jcePrintHeader+ = lens _jcePrintHeader+ (\ s a -> s{_jcePrintHeader = a})++-- | [Optional] The compression type to use for exported files. Possible+-- values include GZIP, DEFLATE, SNAPPY, and NONE. The default value is+-- NONE. DEFLATE and SNAPPY are only supported for Avro.+jceCompression :: Lens' JobConfigurationExtract (Maybe Text)+jceCompression+ = lens _jceCompression+ (\ s a -> s{_jceCompression = a})++-- | [Pick one] A list of fully-qualified Google Cloud Storage URIs where the+-- extracted table should be written.+jceDestinationURIs :: Lens' JobConfigurationExtract [Text]+jceDestinationURIs+ = lens _jceDestinationURIs+ (\ s a -> s{_jceDestinationURIs = a})+ . _Default+ . _Coerce++-- | [Pick one] DEPRECATED: Use destinationUris instead, passing only one URI+-- as necessary. The fully-qualified Google Cloud Storage URI where the+-- extracted table should be written.+jceDestinationURI :: Lens' JobConfigurationExtract (Maybe Text)+jceDestinationURI+ = lens _jceDestinationURI+ (\ s a -> s{_jceDestinationURI = a})++-- | [Optional] Delimiter to use between fields in the exported data. Default+-- is \',\'+jceFieldDelimiter :: Lens' JobConfigurationExtract (Maybe Text)+jceFieldDelimiter+ = lens _jceFieldDelimiter+ (\ s a -> s{_jceFieldDelimiter = a})++instance FromJSON JobConfigurationExtract where+ parseJSON+ = withObject "JobConfigurationExtract"+ (\ o ->+ JobConfigurationExtract' <$>+ (o .:? "destinationFormat") <*> (o .:? "sourceTable")+ <*> (o .:? "printHeader" .!= True)+ <*> (o .:? "compression")+ <*> (o .:? "destinationUris" .!= mempty)+ <*> (o .:? "destinationUri")+ <*> (o .:? "fieldDelimiter"))++instance ToJSON JobConfigurationExtract where+ toJSON JobConfigurationExtract'{..}+ = object+ (catMaybes+ [("destinationFormat" .=) <$> _jceDestinationFormat,+ ("sourceTable" .=) <$> _jceSourceTable,+ Just ("printHeader" .= _jcePrintHeader),+ ("compression" .=) <$> _jceCompression,+ ("destinationUris" .=) <$> _jceDestinationURIs,+ ("destinationUri" .=) <$> _jceDestinationURI,+ ("fieldDelimiter" .=) <$> _jceFieldDelimiter])++--+-- /See:/ 'modelDefinition' smart constructor.+data ModelDefinition = ModelDefinition'+ { _mdModelOptions :: !(Maybe ModelDefinitionModelOptions)+ , _mdTrainingRuns :: !(Maybe [TrainingRun])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ModelDefinition' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mdModelOptions'+--+-- * 'mdTrainingRuns'+modelDefinition+ :: ModelDefinition+modelDefinition =+ ModelDefinition'+ { _mdModelOptions = Nothing+ , _mdTrainingRuns = Nothing+ }++-- | [Output-only, Beta] Model options used for the first training run. These+-- options are immutable for subsequent training runs. Default values are+-- used for any options not specified in the input query.+mdModelOptions :: Lens' ModelDefinition (Maybe ModelDefinitionModelOptions)+mdModelOptions+ = lens _mdModelOptions+ (\ s a -> s{_mdModelOptions = a})++-- | [Output-only, Beta] Information about ml training runs, each training+-- run comprises of multiple iterations and there may be multiple training+-- runs for the model if warm start is used or if a user decides to+-- continue a previously cancelled query.+mdTrainingRuns :: Lens' ModelDefinition [TrainingRun]+mdTrainingRuns+ = lens _mdTrainingRuns+ (\ s a -> s{_mdTrainingRuns = a})+ . _Default+ . _Coerce++instance FromJSON ModelDefinition where+ parseJSON+ = withObject "ModelDefinition"+ (\ o ->+ ModelDefinition' <$>+ (o .:? "modelOptions") <*>+ (o .:? "trainingRuns" .!= mempty))++instance ToJSON ModelDefinition where+ toJSON ModelDefinition'{..}+ = object+ (catMaybes+ [("modelOptions" .=) <$> _mdModelOptions,+ ("trainingRuns" .=) <$> _mdTrainingRuns])++--+-- /See:/ 'jobCancelResponse' smart constructor.+data JobCancelResponse = JobCancelResponse'+ { _jcrKind :: !Text+ , _jcrJob :: !(Maybe Job)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobCancelResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jcrKind'+--+-- * 'jcrJob'+jobCancelResponse+ :: JobCancelResponse+jobCancelResponse =+ JobCancelResponse'+ { _jcrKind = "bigquery#jobCancelResponse"+ , _jcrJob = Nothing+ }++-- | The resource type of the response.+jcrKind :: Lens' JobCancelResponse Text+jcrKind = lens _jcrKind (\ s a -> s{_jcrKind = a})++-- | The final state of the job.+jcrJob :: Lens' JobCancelResponse (Maybe Job)+jcrJob = lens _jcrJob (\ s a -> s{_jcrJob = a})++instance FromJSON JobCancelResponse where+ parseJSON+ = withObject "JobCancelResponse"+ (\ o ->+ JobCancelResponse' <$>+ (o .:? "kind" .!= "bigquery#jobCancelResponse") <*>+ (o .:? "job"))++instance ToJSON JobCancelResponse where+ toJSON JobCancelResponse'{..}+ = object+ (catMaybes+ [Just ("kind" .= _jcrKind), ("job" .=) <$> _jcrJob])++-- | Represents a single JSON object.+--+-- /See:/ 'jsonObject' smart constructor.+newtype JSONObject = JSONObject'+ { _joAddtional :: HashMap Text JSONValue+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JSONObject' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'joAddtional'+jsonObject+ :: HashMap Text JSONValue -- ^ 'joAddtional'+ -> JSONObject+jsonObject pJoAddtional_ =+ JSONObject'+ { _joAddtional = _Coerce # pJoAddtional_+ }++joAddtional :: Lens' JSONObject (HashMap Text JSONValue)+joAddtional+ = lens _joAddtional (\ s a -> s{_joAddtional = a}) .+ _Coerce++instance FromJSON JSONObject where+ parseJSON+ = withObject "JSONObject"+ (\ o -> JSONObject' <$> (parseJSONObject o))++instance ToJSON JSONObject where+ toJSON = toJSON . _joAddtional++--+-- /See:/ 'jobConfigurationQuery' smart constructor.+data JobConfigurationQuery = JobConfigurationQuery'+ { _jcqDestinationTable :: !(Maybe TableReference)+ , _jcqWriteDisPosition :: !(Maybe Text)+ , _jcqPriority :: !(Maybe Text)+ , _jcqClustering :: !(Maybe Clustering)+ , _jcqRangePartitioning :: !(Maybe RangePartitioning)+ , _jcqUseQueryCache :: !Bool+ , _jcqPreserveNulls :: !(Maybe Bool)+ , _jcqTableDefinitions :: !(Maybe JobConfigurationQueryTableDefinitions)+ , _jcqQueryParameters :: !(Maybe [QueryParameter])+ , _jcqSchemaUpdateOptions :: !(Maybe [Text])+ , _jcqMaximumBytesBilled :: !(Maybe (Textual Int64))+ , _jcqCreateDisPosition :: !(Maybe Text)+ , _jcqUserDefinedFunctionResources :: !(Maybe [UserDefinedFunctionResource])+ , _jcqAllowLargeResults :: !Bool+ , _jcqMaximumBillingTier :: !(Textual Int32)+ , _jcqTimePartitioning :: !(Maybe TimePartitioning)+ , _jcqQuery :: !(Maybe Text)+ , _jcqFlattenResults :: !Bool+ , _jcqParameterMode :: !(Maybe Text)+ , _jcqUseLegacySQL :: !Bool+ , _jcqDestinationEncryptionConfiguration :: !(Maybe EncryptionConfiguration)+ , _jcqDefaultDataSet :: !(Maybe DataSetReference)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobConfigurationQuery' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jcqDestinationTable'+--+-- * 'jcqWriteDisPosition'+--+-- * 'jcqPriority'+--+-- * 'jcqClustering'+--+-- * 'jcqRangePartitioning'+--+-- * 'jcqUseQueryCache'+--+-- * 'jcqPreserveNulls'+--+-- * 'jcqTableDefinitions'+--+-- * 'jcqQueryParameters'+--+-- * 'jcqSchemaUpdateOptions'+--+-- * 'jcqMaximumBytesBilled'+--+-- * 'jcqCreateDisPosition'+--+-- * 'jcqUserDefinedFunctionResources'+--+-- * 'jcqAllowLargeResults'+--+-- * 'jcqMaximumBillingTier'+--+-- * 'jcqTimePartitioning'+--+-- * 'jcqQuery'+--+-- * 'jcqFlattenResults'+--+-- * 'jcqParameterMode'+--+-- * 'jcqUseLegacySQL'+--+-- * 'jcqDestinationEncryptionConfiguration'+--+-- * 'jcqDefaultDataSet'+jobConfigurationQuery+ :: JobConfigurationQuery+jobConfigurationQuery =+ JobConfigurationQuery'+ { _jcqDestinationTable = Nothing+ , _jcqWriteDisPosition = Nothing+ , _jcqPriority = Nothing+ , _jcqClustering = Nothing+ , _jcqRangePartitioning = Nothing+ , _jcqUseQueryCache = True+ , _jcqPreserveNulls = Nothing+ , _jcqTableDefinitions = Nothing+ , _jcqQueryParameters = Nothing+ , _jcqSchemaUpdateOptions = Nothing+ , _jcqMaximumBytesBilled = Nothing+ , _jcqCreateDisPosition = Nothing+ , _jcqUserDefinedFunctionResources = Nothing+ , _jcqAllowLargeResults = False+ , _jcqMaximumBillingTier = 1+ , _jcqTimePartitioning = Nothing+ , _jcqQuery = Nothing+ , _jcqFlattenResults = True+ , _jcqParameterMode = Nothing+ , _jcqUseLegacySQL = True+ , _jcqDestinationEncryptionConfiguration = Nothing+ , _jcqDefaultDataSet = Nothing+ }++-- | [Optional] Describes the table where the query results should be stored.+-- If not present, a new table will be created to store the results. This+-- property must be set for large results that exceed the maximum response+-- size.+jcqDestinationTable :: Lens' JobConfigurationQuery (Maybe TableReference)+jcqDestinationTable+ = lens _jcqDestinationTable+ (\ s a -> s{_jcqDestinationTable = a})++-- | [Optional] Specifies the action that occurs if the destination table+-- already exists. The following values are supported: WRITE_TRUNCATE: If+-- the table already exists, BigQuery overwrites the table data and uses+-- the schema from the query result. WRITE_APPEND: If the table already+-- exists, BigQuery appends the data to the table. WRITE_EMPTY: If the+-- table already exists and contains data, a \'duplicate\' error is+-- returned in the job result. The default value is WRITE_EMPTY. Each+-- action is atomic and only occurs if BigQuery is able to complete the job+-- successfully. Creation, truncation and append actions occur as one+-- atomic update upon job completion.+jcqWriteDisPosition :: Lens' JobConfigurationQuery (Maybe Text)+jcqWriteDisPosition+ = lens _jcqWriteDisPosition+ (\ s a -> s{_jcqWriteDisPosition = a})++-- | [Optional] Specifies a priority for the query. Possible values include+-- INTERACTIVE and BATCH. The default value is INTERACTIVE.+jcqPriority :: Lens' JobConfigurationQuery (Maybe Text)+jcqPriority+ = lens _jcqPriority (\ s a -> s{_jcqPriority = a})++-- | [Beta] Clustering specification for the destination table. Must be+-- specified with time-based partitioning, data in the table will be first+-- partitioned and subsequently clustered.+jcqClustering :: Lens' JobConfigurationQuery (Maybe Clustering)+jcqClustering+ = lens _jcqClustering+ (\ s a -> s{_jcqClustering = a})++-- | [TrustedTester] Range partitioning specification for this table. Only+-- one of timePartitioning and rangePartitioning should be specified.+jcqRangePartitioning :: Lens' JobConfigurationQuery (Maybe RangePartitioning)+jcqRangePartitioning+ = lens _jcqRangePartitioning+ (\ s a -> s{_jcqRangePartitioning = a})++-- | [Optional] Whether to look for the result in the query cache. The query+-- cache is a best-effort cache that will be flushed whenever tables in the+-- query are modified. Moreover, the query cache is only available when a+-- query does not have a destination table specified. The default value is+-- true.+jcqUseQueryCache :: Lens' JobConfigurationQuery Bool+jcqUseQueryCache+ = lens _jcqUseQueryCache+ (\ s a -> s{_jcqUseQueryCache = a})++-- | [Deprecated] This property is deprecated.+jcqPreserveNulls :: Lens' JobConfigurationQuery (Maybe Bool)+jcqPreserveNulls+ = lens _jcqPreserveNulls+ (\ s a -> s{_jcqPreserveNulls = a})++-- | [Optional] If querying an external data source outside of BigQuery,+-- describes the data format, location and other properties of the data+-- source. By defining these properties, the data source can then be+-- queried as if it were a standard BigQuery table.+jcqTableDefinitions :: Lens' JobConfigurationQuery (Maybe JobConfigurationQueryTableDefinitions)+jcqTableDefinitions+ = lens _jcqTableDefinitions+ (\ s a -> s{_jcqTableDefinitions = a})++-- | Query parameters for standard SQL queries.+jcqQueryParameters :: Lens' JobConfigurationQuery [QueryParameter]+jcqQueryParameters+ = lens _jcqQueryParameters+ (\ s a -> s{_jcqQueryParameters = a})+ . _Default+ . _Coerce++-- | Allows the schema of the destination table to be updated as a side+-- effect of the query job. Schema update options are supported in two+-- cases: when writeDisposition is WRITE_APPEND; when writeDisposition is+-- WRITE_TRUNCATE and the destination table is a partition of a table,+-- specified by partition decorators. For normal tables, WRITE_TRUNCATE+-- will always overwrite the schema. One or more of the following values+-- are specified: ALLOW_FIELD_ADDITION: allow adding a nullable field to+-- the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field in+-- the original schema to nullable.+jcqSchemaUpdateOptions :: Lens' JobConfigurationQuery [Text]+jcqSchemaUpdateOptions+ = lens _jcqSchemaUpdateOptions+ (\ s a -> s{_jcqSchemaUpdateOptions = a})+ . _Default+ . _Coerce++-- | [Optional] Limits the bytes billed for this job. Queries that will have+-- bytes billed beyond this limit will fail (without incurring a charge).+-- If unspecified, this will be set to your project default.+jcqMaximumBytesBilled :: Lens' JobConfigurationQuery (Maybe Int64)+jcqMaximumBytesBilled+ = lens _jcqMaximumBytesBilled+ (\ s a -> s{_jcqMaximumBytesBilled = a})+ . mapping _Coerce++-- | [Optional] Specifies whether the job is allowed to create new tables.+-- The following values are supported: CREATE_IF_NEEDED: If the table does+-- not exist, BigQuery creates the table. CREATE_NEVER: The table must+-- already exist. If it does not, a \'notFound\' error is returned in the+-- job result. The default value is CREATE_IF_NEEDED. Creation, truncation+-- and append actions occur as one atomic update upon job completion.+jcqCreateDisPosition :: Lens' JobConfigurationQuery (Maybe Text)+jcqCreateDisPosition+ = lens _jcqCreateDisPosition+ (\ s a -> s{_jcqCreateDisPosition = a})++-- | Describes user-defined function resources used in the query.+jcqUserDefinedFunctionResources :: Lens' JobConfigurationQuery [UserDefinedFunctionResource]+jcqUserDefinedFunctionResources+ = lens _jcqUserDefinedFunctionResources+ (\ s a -> s{_jcqUserDefinedFunctionResources = a})+ . _Default+ . _Coerce++-- | [Optional] If true and query uses legacy SQL dialect, allows the query+-- to produce arbitrarily large result tables at a slight cost in+-- performance. Requires destinationTable to be set. For standard SQL+-- queries, this flag is ignored and large results are always allowed.+-- However, you must still set destinationTable when result size exceeds+-- the allowed maximum response size.+jcqAllowLargeResults :: Lens' JobConfigurationQuery Bool+jcqAllowLargeResults+ = lens _jcqAllowLargeResults+ (\ s a -> s{_jcqAllowLargeResults = a})++-- | [Optional] Limits the billing tier for this job. Queries that have+-- resource usage beyond this tier will fail (without incurring a charge).+-- If unspecified, this will be set to your project default.+jcqMaximumBillingTier :: Lens' JobConfigurationQuery Int32+jcqMaximumBillingTier+ = lens _jcqMaximumBillingTier+ (\ s a -> s{_jcqMaximumBillingTier = a})+ . _Coerce++-- | Time-based partitioning specification for the destination table. Only+-- one of timePartitioning and rangePartitioning should be specified.+jcqTimePartitioning :: Lens' JobConfigurationQuery (Maybe TimePartitioning)+jcqTimePartitioning+ = lens _jcqTimePartitioning+ (\ s a -> s{_jcqTimePartitioning = a})++-- | [Required] SQL query text to execute. The useLegacySql field can be used+-- to indicate whether the query uses legacy SQL or standard SQL.+jcqQuery :: Lens' JobConfigurationQuery (Maybe Text)+jcqQuery = lens _jcqQuery (\ s a -> s{_jcqQuery = a})++-- | [Optional] If true and query uses legacy SQL dialect, flattens all+-- nested and repeated fields in the query results. allowLargeResults must+-- be true if this is set to false. For standard SQL queries, this flag is+-- ignored and results are never flattened.+jcqFlattenResults :: Lens' JobConfigurationQuery Bool+jcqFlattenResults+ = lens _jcqFlattenResults+ (\ s a -> s{_jcqFlattenResults = a})++-- | Standard SQL only. Set to POSITIONAL to use positional (?) query+-- parameters or to NAMED to use named (\'myparam) query parameters in this+-- query.+jcqParameterMode :: Lens' JobConfigurationQuery (Maybe Text)+jcqParameterMode+ = lens _jcqParameterMode+ (\ s a -> s{_jcqParameterMode = a})++-- | Specifies whether to use BigQuery\'s legacy SQL dialect for this query.+-- The default value is true. If set to false, the query will use+-- BigQuery\'s standard SQL:+-- https:\/\/cloud.google.com\/bigquery\/sql-reference\/ When useLegacySql+-- is set to false, the value of flattenResults is ignored; query will be+-- run as if flattenResults is false.+jcqUseLegacySQL :: Lens' JobConfigurationQuery Bool+jcqUseLegacySQL+ = lens _jcqUseLegacySQL+ (\ s a -> s{_jcqUseLegacySQL = a})++-- | Custom encryption configuration (e.g., Cloud KMS keys).+jcqDestinationEncryptionConfiguration :: Lens' JobConfigurationQuery (Maybe EncryptionConfiguration)+jcqDestinationEncryptionConfiguration+ = lens _jcqDestinationEncryptionConfiguration+ (\ s a ->+ s{_jcqDestinationEncryptionConfiguration = a})++-- | [Optional] Specifies the default dataset to use for unqualified table+-- names in the query. Note that this does not alter behavior of+-- unqualified dataset names.+jcqDefaultDataSet :: Lens' JobConfigurationQuery (Maybe DataSetReference)+jcqDefaultDataSet+ = lens _jcqDefaultDataSet+ (\ s a -> s{_jcqDefaultDataSet = a})++instance FromJSON JobConfigurationQuery where+ parseJSON+ = withObject "JobConfigurationQuery"+ (\ o ->+ JobConfigurationQuery' <$>+ (o .:? "destinationTable") <*>+ (o .:? "writeDisposition")+ <*> (o .:? "priority")+ <*> (o .:? "clustering")+ <*> (o .:? "rangePartitioning")+ <*> (o .:? "useQueryCache" .!= True)+ <*> (o .:? "preserveNulls")+ <*> (o .:? "tableDefinitions")+ <*> (o .:? "queryParameters" .!= mempty)+ <*> (o .:? "schemaUpdateOptions" .!= mempty)+ <*> (o .:? "maximumBytesBilled")+ <*> (o .:? "createDisposition")+ <*> (o .:? "userDefinedFunctionResources" .!= mempty)+ <*> (o .:? "allowLargeResults" .!= False)+ <*> (o .:? "maximumBillingTier" .!= 1)+ <*> (o .:? "timePartitioning")+ <*> (o .:? "query")+ <*> (o .:? "flattenResults" .!= True)+ <*> (o .:? "parameterMode")+ <*> (o .:? "useLegacySql" .!= True)+ <*> (o .:? "destinationEncryptionConfiguration")+ <*> (o .:? "defaultDataset"))++instance ToJSON JobConfigurationQuery where+ toJSON JobConfigurationQuery'{..}+ = object+ (catMaybes+ [("destinationTable" .=) <$> _jcqDestinationTable,+ ("writeDisposition" .=) <$> _jcqWriteDisPosition,+ ("priority" .=) <$> _jcqPriority,+ ("clustering" .=) <$> _jcqClustering,+ ("rangePartitioning" .=) <$> _jcqRangePartitioning,+ Just ("useQueryCache" .= _jcqUseQueryCache),+ ("preserveNulls" .=) <$> _jcqPreserveNulls,+ ("tableDefinitions" .=) <$> _jcqTableDefinitions,+ ("queryParameters" .=) <$> _jcqQueryParameters,+ ("schemaUpdateOptions" .=) <$>+ _jcqSchemaUpdateOptions,+ ("maximumBytesBilled" .=) <$> _jcqMaximumBytesBilled,+ ("createDisposition" .=) <$> _jcqCreateDisPosition,+ ("userDefinedFunctionResources" .=) <$>+ _jcqUserDefinedFunctionResources,+ Just ("allowLargeResults" .= _jcqAllowLargeResults),+ Just+ ("maximumBillingTier" .= _jcqMaximumBillingTier),+ ("timePartitioning" .=) <$> _jcqTimePartitioning,+ ("query" .=) <$> _jcqQuery,+ Just ("flattenResults" .= _jcqFlattenResults),+ ("parameterMode" .=) <$> _jcqParameterMode,+ Just ("useLegacySql" .= _jcqUseLegacySQL),+ ("destinationEncryptionConfiguration" .=) <$>+ _jcqDestinationEncryptionConfiguration,+ ("defaultDataset" .=) <$> _jcqDefaultDataSet])++--+-- /See:/ 'googleSheetsOptions' smart constructor.+data GoogleSheetsOptions = GoogleSheetsOptions'+ { _gsoSkipLeadingRows :: !(Maybe (Textual Int64))+ , _gsoRange :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GoogleSheetsOptions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gsoSkipLeadingRows'+--+-- * 'gsoRange'+googleSheetsOptions+ :: GoogleSheetsOptions+googleSheetsOptions =+ GoogleSheetsOptions'+ { _gsoSkipLeadingRows = Nothing+ , _gsoRange = Nothing+ }++-- | [Optional] The number of rows at the top of a sheet that BigQuery will+-- skip when reading the data. The default value is 0. This property is+-- useful if you have header rows that should be skipped. When autodetect+-- is on, behavior is the following: * skipLeadingRows unspecified -+-- Autodetect tries to detect headers in the first row. If they are not+-- detected, the row is read as data. Otherwise data is read starting from+-- the second row. * skipLeadingRows is 0 - Instructs autodetect that there+-- are no headers and data should be read starting from the first row. *+-- skipLeadingRows = N > 0 - Autodetect skips N-1 rows and tries to detect+-- headers in row N. If headers are not detected, row N is just skipped.+-- Otherwise row N is used to extract column names for the detected schema.+gsoSkipLeadingRows :: Lens' GoogleSheetsOptions (Maybe Int64)+gsoSkipLeadingRows+ = lens _gsoSkipLeadingRows+ (\ s a -> s{_gsoSkipLeadingRows = a})+ . mapping _Coerce++-- | [Beta] [Optional] Range of a sheet to query from. Only used when+-- non-empty. Typical format:+-- sheet_name!top_left_cell_id:bottom_right_cell_id For example:+-- sheet1!A1:B20+gsoRange :: Lens' GoogleSheetsOptions (Maybe Text)+gsoRange = lens _gsoRange (\ s a -> s{_gsoRange = a})++instance FromJSON GoogleSheetsOptions where+ parseJSON+ = withObject "GoogleSheetsOptions"+ (\ o ->+ GoogleSheetsOptions' <$>+ (o .:? "skipLeadingRows") <*> (o .:? "range"))++instance ToJSON GoogleSheetsOptions where+ toJSON GoogleSheetsOptions'{..}+ = object+ (catMaybes+ [("skipLeadingRows" .=) <$> _gsoSkipLeadingRows,+ ("range" .=) <$> _gsoRange])++--+-- /See:/ 'tableDataInsertAllRequestRowsItem' smart constructor.+data TableDataInsertAllRequestRowsItem = TableDataInsertAllRequestRowsItem'+ { _tdiarriJSON :: !(Maybe JSONObject)+ , _tdiarriInsertId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableDataInsertAllRequestRowsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tdiarriJSON'+--+-- * 'tdiarriInsertId'+tableDataInsertAllRequestRowsItem+ :: TableDataInsertAllRequestRowsItem+tableDataInsertAllRequestRowsItem =+ TableDataInsertAllRequestRowsItem'+ { _tdiarriJSON = Nothing+ , _tdiarriInsertId = Nothing+ }++-- | [Required] A JSON object that contains a row of data. The object\'s+-- properties and values must match the destination table\'s schema.+tdiarriJSON :: Lens' TableDataInsertAllRequestRowsItem (Maybe JSONObject)+tdiarriJSON+ = lens _tdiarriJSON (\ s a -> s{_tdiarriJSON = a})++-- | [Optional] A unique ID for each row. BigQuery uses this property to+-- detect duplicate insertion requests on a best-effort basis.+tdiarriInsertId :: Lens' TableDataInsertAllRequestRowsItem (Maybe Text)+tdiarriInsertId+ = lens _tdiarriInsertId+ (\ s a -> s{_tdiarriInsertId = a})++instance FromJSON TableDataInsertAllRequestRowsItem+ where+ parseJSON+ = withObject "TableDataInsertAllRequestRowsItem"+ (\ o ->+ TableDataInsertAllRequestRowsItem' <$>+ (o .:? "json") <*> (o .:? "insertId"))++instance ToJSON TableDataInsertAllRequestRowsItem+ where+ toJSON TableDataInsertAllRequestRowsItem'{..}+ = object+ (catMaybes+ [("json" .=) <$> _tdiarriJSON,+ ("insertId" .=) <$> _tdiarriInsertId])++--+-- /See:/ 'jobList' smart constructor.+data JobList = JobList'+ { _jlEtag :: !(Maybe Text)+ , _jlNextPageToken :: !(Maybe Text)+ , _jlKind :: !Text+ , _jlJobs :: !(Maybe [JobListJobsItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jlEtag'+--+-- * 'jlNextPageToken'+--+-- * 'jlKind'+--+-- * 'jlJobs'+jobList+ :: JobList+jobList =+ JobList'+ { _jlEtag = Nothing+ , _jlNextPageToken = Nothing+ , _jlKind = "bigquery#jobList"+ , _jlJobs = Nothing+ }++-- | A hash of this page of results.+jlEtag :: Lens' JobList (Maybe Text)+jlEtag = lens _jlEtag (\ s a -> s{_jlEtag = a})++-- | A token to request the next page of results.+jlNextPageToken :: Lens' JobList (Maybe Text)+jlNextPageToken+ = lens _jlNextPageToken+ (\ s a -> s{_jlNextPageToken = a})++-- | The resource type of the response.+jlKind :: Lens' JobList Text+jlKind = lens _jlKind (\ s a -> s{_jlKind = a})++-- | List of jobs that were requested.+jlJobs :: Lens' JobList [JobListJobsItem]+jlJobs+ = lens _jlJobs (\ s a -> s{_jlJobs = a}) . _Default .+ _Coerce++instance FromJSON JobList where+ parseJSON+ = withObject "JobList"+ (\ o ->+ JobList' <$>+ (o .:? "etag") <*> (o .:? "nextPageToken") <*>+ (o .:? "kind" .!= "bigquery#jobList")+ <*> (o .:? "jobs" .!= mempty))++instance ToJSON JobList where+ toJSON JobList'{..}+ = object+ (catMaybes+ [("etag" .=) <$> _jlEtag,+ ("nextPageToken" .=) <$> _jlNextPageToken,+ Just ("kind" .= _jlKind), ("jobs" .=) <$> _jlJobs])++-- | [Optional] If querying an external data source outside of BigQuery,+-- describes the data format, location and other properties of the data+-- source. By defining these properties, the data source can then be+-- queried as if it were a standard BigQuery table.+--+-- /See:/ 'jobConfigurationQueryTableDefinitions' smart constructor.+newtype JobConfigurationQueryTableDefinitions = JobConfigurationQueryTableDefinitions'+ { _jcqtdAddtional :: HashMap Text ExternalDataConfiguration+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobConfigurationQueryTableDefinitions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jcqtdAddtional'+jobConfigurationQueryTableDefinitions+ :: HashMap Text ExternalDataConfiguration -- ^ 'jcqtdAddtional'+ -> JobConfigurationQueryTableDefinitions+jobConfigurationQueryTableDefinitions pJcqtdAddtional_ =+ JobConfigurationQueryTableDefinitions'+ { _jcqtdAddtional = _Coerce # pJcqtdAddtional_+ }++jcqtdAddtional :: Lens' JobConfigurationQueryTableDefinitions (HashMap Text ExternalDataConfiguration)+jcqtdAddtional+ = lens _jcqtdAddtional+ (\ s a -> s{_jcqtdAddtional = a})+ . _Coerce++instance FromJSON+ JobConfigurationQueryTableDefinitions where+ parseJSON+ = withObject "JobConfigurationQueryTableDefinitions"+ (\ o ->+ JobConfigurationQueryTableDefinitions' <$>+ (parseJSONObject o))++instance ToJSON JobConfigurationQueryTableDefinitions+ where+ toJSON = toJSON . _jcqtdAddtional++--+-- /See:/ 'tableCell' smart constructor.+newtype TableCell = TableCell'+ { _tcV :: Maybe JSONValue+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableCell' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tcV'+tableCell+ :: TableCell+tableCell =+ TableCell'+ { _tcV = Nothing+ }++tcV :: Lens' TableCell (Maybe JSONValue)+tcV = lens _tcV (\ s a -> s{_tcV = a})++instance FromJSON TableCell where+ parseJSON+ = withObject "TableCell"+ (\ o -> TableCell' <$> (o .:? "v"))++instance ToJSON TableCell where+ toJSON TableCell'{..}+ = object (catMaybes [("v" .=) <$> _tcV])++--+-- /See:/ 'jobStatistics2ReservationUsageItem' smart constructor.+data JobStatistics2ReservationUsageItem = JobStatistics2ReservationUsageItem'+ { _jName :: !(Maybe Text)+ , _jSlotMs :: !(Maybe (Textual Int64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobStatistics2ReservationUsageItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jName'+--+-- * 'jSlotMs'+jobStatistics2ReservationUsageItem+ :: JobStatistics2ReservationUsageItem+jobStatistics2ReservationUsageItem =+ JobStatistics2ReservationUsageItem'+ { _jName = Nothing+ , _jSlotMs = Nothing+ }++-- | [Output-only] Reservation name or \"unreserved\" for on-demand resources+-- usage.+jName :: Lens' JobStatistics2ReservationUsageItem (Maybe Text)+jName = lens _jName (\ s a -> s{_jName = a})++-- | [Output-only] Slot-milliseconds the job spent in the given reservation.+jSlotMs :: Lens' JobStatistics2ReservationUsageItem (Maybe Int64)+jSlotMs+ = lens _jSlotMs (\ s a -> s{_jSlotMs = a}) .+ mapping _Coerce++instance FromJSON JobStatistics2ReservationUsageItem+ where+ parseJSON+ = withObject "JobStatistics2ReservationUsageItem"+ (\ o ->+ JobStatistics2ReservationUsageItem' <$>+ (o .:? "name") <*> (o .:? "slotMs"))++instance ToJSON JobStatistics2ReservationUsageItem+ where+ toJSON JobStatistics2ReservationUsageItem'{..}+ = object+ (catMaybes+ [("name" .=) <$> _jName, ("slotMs" .=) <$> _jSlotMs])++--+-- /See:/ 'queryParameterValue' smart constructor.+data QueryParameterValue = QueryParameterValue'+ { _qpvStructValues :: !(Maybe QueryParameterValueStructValues)+ , _qpvValue :: !(Maybe Text)+ , _qpvArrayValues :: !(Maybe [QueryParameterValue])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'QueryParameterValue' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'qpvStructValues'+--+-- * 'qpvValue'+--+-- * 'qpvArrayValues'+queryParameterValue+ :: QueryParameterValue+queryParameterValue =+ QueryParameterValue'+ { _qpvStructValues = Nothing+ , _qpvValue = Nothing+ , _qpvArrayValues = Nothing+ }++-- | [Optional] The struct field values, in order of the struct type\'s+-- declaration.+qpvStructValues :: Lens' QueryParameterValue (Maybe QueryParameterValueStructValues)+qpvStructValues+ = lens _qpvStructValues+ (\ s a -> s{_qpvStructValues = a})++-- | [Optional] The value of this value, if a simple scalar type.+qpvValue :: Lens' QueryParameterValue (Maybe Text)+qpvValue = lens _qpvValue (\ s a -> s{_qpvValue = a})++-- | [Optional] The array values, if this is an array type.+qpvArrayValues :: Lens' QueryParameterValue [QueryParameterValue]+qpvArrayValues+ = lens _qpvArrayValues+ (\ s a -> s{_qpvArrayValues = a})+ . _Default+ . _Coerce++instance FromJSON QueryParameterValue where+ parseJSON+ = withObject "QueryParameterValue"+ (\ o ->+ QueryParameterValue' <$>+ (o .:? "structValues") <*> (o .:? "value") <*>+ (o .:? "arrayValues" .!= mempty))++instance ToJSON QueryParameterValue where+ toJSON QueryParameterValue'{..}+ = object+ (catMaybes+ [("structValues" .=) <$> _qpvStructValues,+ ("value" .=) <$> _qpvValue,+ ("arrayValues" .=) <$> _qpvArrayValues])++--+-- /See:/ 'viewDefinition' smart constructor.+data ViewDefinition = ViewDefinition'+ { _vdUserDefinedFunctionResources :: !(Maybe [UserDefinedFunctionResource])+ , _vdQuery :: !(Maybe Text)+ , _vdUseLegacySQL :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ViewDefinition' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vdUserDefinedFunctionResources'+--+-- * 'vdQuery'+--+-- * 'vdUseLegacySQL'+viewDefinition+ :: ViewDefinition+viewDefinition =+ ViewDefinition'+ { _vdUserDefinedFunctionResources = Nothing+ , _vdQuery = Nothing+ , _vdUseLegacySQL = Nothing+ }++-- | Describes user-defined function resources used in the query.+vdUserDefinedFunctionResources :: Lens' ViewDefinition [UserDefinedFunctionResource]+vdUserDefinedFunctionResources+ = lens _vdUserDefinedFunctionResources+ (\ s a -> s{_vdUserDefinedFunctionResources = a})+ . _Default+ . _Coerce++-- | [Required] A query that BigQuery executes when the view is referenced.+vdQuery :: Lens' ViewDefinition (Maybe Text)+vdQuery = lens _vdQuery (\ s a -> s{_vdQuery = a})++-- | Specifies whether to use BigQuery\'s legacy SQL for this view. The+-- default value is true. If set to false, the view will use BigQuery\'s+-- standard SQL: https:\/\/cloud.google.com\/bigquery\/sql-reference\/+-- Queries and views that reference this view must use the same flag value.+vdUseLegacySQL :: Lens' ViewDefinition (Maybe Bool)+vdUseLegacySQL+ = lens _vdUseLegacySQL+ (\ s a -> s{_vdUseLegacySQL = a})++instance FromJSON ViewDefinition where+ parseJSON+ = withObject "ViewDefinition"+ (\ o ->+ ViewDefinition' <$>+ (o .:? "userDefinedFunctionResources" .!= mempty) <*>+ (o .:? "query")+ <*> (o .:? "useLegacySql"))++instance ToJSON ViewDefinition where+ toJSON ViewDefinition'{..}+ = object+ (catMaybes+ [("userDefinedFunctionResources" .=) <$>+ _vdUserDefinedFunctionResources,+ ("query" .=) <$> _vdQuery,+ ("useLegacySql" .=) <$> _vdUseLegacySQL])++--+-- /See:/ 'userDefinedFunctionResource' smart constructor.+data UserDefinedFunctionResource = UserDefinedFunctionResource'+ { _udfrResourceURI :: !(Maybe Text)+ , _udfrInlineCode :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserDefinedFunctionResource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'udfrResourceURI'+--+-- * 'udfrInlineCode'+userDefinedFunctionResource+ :: UserDefinedFunctionResource+userDefinedFunctionResource =+ UserDefinedFunctionResource'+ { _udfrResourceURI = Nothing+ , _udfrInlineCode = Nothing+ }++-- | [Pick one] A code resource to load from a Google Cloud Storage URI+-- (gs:\/\/bucket\/path).+udfrResourceURI :: Lens' UserDefinedFunctionResource (Maybe Text)+udfrResourceURI+ = lens _udfrResourceURI+ (\ s a -> s{_udfrResourceURI = a})++-- | [Pick one] An inline resource that contains code for a user-defined+-- function (UDF). Providing a inline code resource is equivalent to+-- providing a URI for a file containing the same code.+udfrInlineCode :: Lens' UserDefinedFunctionResource (Maybe Text)+udfrInlineCode+ = lens _udfrInlineCode+ (\ s a -> s{_udfrInlineCode = a})++instance FromJSON UserDefinedFunctionResource where+ parseJSON+ = withObject "UserDefinedFunctionResource"+ (\ o ->+ UserDefinedFunctionResource' <$>+ (o .:? "resourceUri") <*> (o .:? "inlineCode"))++instance ToJSON UserDefinedFunctionResource where+ toJSON UserDefinedFunctionResource'{..}+ = object+ (catMaybes+ [("resourceUri" .=) <$> _udfrResourceURI,+ ("inlineCode" .=) <$> _udfrInlineCode])++--+-- /See:/ 'jobStatistics2' smart constructor.+data JobStatistics2 = JobStatistics2'+ { _jModelTrainingExpectedTotalIteration :: !(Maybe (Textual Int64))+ , _jModelTraining :: !(Maybe BigQueryModelTraining)+ , _jTotalSlotMs :: !(Maybe (Textual Int64))+ , _jDdlTargetTable :: !(Maybe TableReference)+ , _jEstimatedBytesProcessed :: !(Maybe (Textual Int64))+ , _jModelTrainingCurrentIteration :: !(Maybe (Textual Int32))+ , _jSchema :: !(Maybe TableSchema)+ , _jTotalBytesProcessed :: !(Maybe (Textual Int64))+ , _jBillingTier :: !(Maybe (Textual Int32))+ , _jTotalBytesProcessedAccuracy :: !(Maybe Text)+ , _jUndeclaredQueryParameters :: !(Maybe [QueryParameter])+ , _jReferencedTables :: !(Maybe [TableReference])+ , _jStatementType :: !(Maybe Text)+ , _jReservationUsage :: !(Maybe [JobStatistics2ReservationUsageItem])+ , _jNumDmlAffectedRows :: !(Maybe (Textual Int64))+ , _jTimeline :: !(Maybe [QueryTimelineSample])+ , _jQueryPlan :: !(Maybe [ExplainQueryStage])+ , _jCacheHit :: !(Maybe Bool)+ , _jTotalBytesBilled :: !(Maybe (Textual Int64))+ , _jDdlOperationPerformed :: !(Maybe Text)+ , _jTotalPartitionsProcessed :: !(Maybe (Textual Int64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobStatistics2' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jModelTrainingExpectedTotalIteration'+--+-- * 'jModelTraining'+--+-- * 'jTotalSlotMs'+--+-- * 'jDdlTargetTable'+--+-- * 'jEstimatedBytesProcessed'+--+-- * 'jModelTrainingCurrentIteration'+--+-- * 'jSchema'+--+-- * 'jTotalBytesProcessed'+--+-- * 'jBillingTier'+--+-- * 'jTotalBytesProcessedAccuracy'+--+-- * 'jUndeclaredQueryParameters'+--+-- * 'jReferencedTables'+--+-- * 'jStatementType'+--+-- * 'jReservationUsage'+--+-- * 'jNumDmlAffectedRows'+--+-- * 'jTimeline'+--+-- * 'jQueryPlan'+--+-- * 'jCacheHit'+--+-- * 'jTotalBytesBilled'+--+-- * 'jDdlOperationPerformed'+--+-- * 'jTotalPartitionsProcessed'+jobStatistics2+ :: JobStatistics2+jobStatistics2 =+ JobStatistics2'+ { _jModelTrainingExpectedTotalIteration = Nothing+ , _jModelTraining = Nothing+ , _jTotalSlotMs = Nothing+ , _jDdlTargetTable = Nothing+ , _jEstimatedBytesProcessed = Nothing+ , _jModelTrainingCurrentIteration = Nothing+ , _jSchema = Nothing+ , _jTotalBytesProcessed = Nothing+ , _jBillingTier = Nothing+ , _jTotalBytesProcessedAccuracy = Nothing+ , _jUndeclaredQueryParameters = Nothing+ , _jReferencedTables = Nothing+ , _jStatementType = Nothing+ , _jReservationUsage = Nothing+ , _jNumDmlAffectedRows = Nothing+ , _jTimeline = Nothing+ , _jQueryPlan = Nothing+ , _jCacheHit = Nothing+ , _jTotalBytesBilled = Nothing+ , _jDdlOperationPerformed = Nothing+ , _jTotalPartitionsProcessed = Nothing+ }++-- | [Output-only, Beta] Deprecated; do not use.+jModelTrainingExpectedTotalIteration :: Lens' JobStatistics2 (Maybe Int64)+jModelTrainingExpectedTotalIteration+ = lens _jModelTrainingExpectedTotalIteration+ (\ s a ->+ s{_jModelTrainingExpectedTotalIteration = a})+ . mapping _Coerce++-- | [Output-only, Beta] Information about create model query job progress.+jModelTraining :: Lens' JobStatistics2 (Maybe BigQueryModelTraining)+jModelTraining+ = lens _jModelTraining+ (\ s a -> s{_jModelTraining = a})++-- | [Output-only] Slot-milliseconds for the job.+jTotalSlotMs :: Lens' JobStatistics2 (Maybe Int64)+jTotalSlotMs+ = lens _jTotalSlotMs (\ s a -> s{_jTotalSlotMs = a})+ . mapping _Coerce++-- | The DDL target table. Present only for CREATE\/DROP TABLE\/VIEW queries.+jDdlTargetTable :: Lens' JobStatistics2 (Maybe TableReference)+jDdlTargetTable+ = lens _jDdlTargetTable+ (\ s a -> s{_jDdlTargetTable = a})++-- | [Output-only] The original estimate of bytes processed for the job.+jEstimatedBytesProcessed :: Lens' JobStatistics2 (Maybe Int64)+jEstimatedBytesProcessed+ = lens _jEstimatedBytesProcessed+ (\ s a -> s{_jEstimatedBytesProcessed = a})+ . mapping _Coerce++-- | [Output-only, Beta] Deprecated; do not use.+jModelTrainingCurrentIteration :: Lens' JobStatistics2 (Maybe Int32)+jModelTrainingCurrentIteration+ = lens _jModelTrainingCurrentIteration+ (\ s a -> s{_jModelTrainingCurrentIteration = a})+ . mapping _Coerce++-- | [Output-only] The schema of the results. Present only for successful dry+-- run of non-legacy SQL queries.+jSchema :: Lens' JobStatistics2 (Maybe TableSchema)+jSchema = lens _jSchema (\ s a -> s{_jSchema = a})++-- | [Output-only] Total bytes processed for the job.+jTotalBytesProcessed :: Lens' JobStatistics2 (Maybe Int64)+jTotalBytesProcessed+ = lens _jTotalBytesProcessed+ (\ s a -> s{_jTotalBytesProcessed = a})+ . mapping _Coerce++-- | [Output-only] Billing tier for the job.+jBillingTier :: Lens' JobStatistics2 (Maybe Int32)+jBillingTier+ = lens _jBillingTier (\ s a -> s{_jBillingTier = a})+ . mapping _Coerce++-- | [Output-only] For dry-run jobs, totalBytesProcessed is an estimate and+-- this field specifies the accuracy of the estimate. Possible values can+-- be: UNKNOWN: accuracy of the estimate is unknown. PRECISE: estimate is+-- precise. LOWER_BOUND: estimate is lower bound of what the query would+-- cost. UPPER_BOUND: estiamte is upper bound of what the query would cost.+jTotalBytesProcessedAccuracy :: Lens' JobStatistics2 (Maybe Text)+jTotalBytesProcessedAccuracy+ = lens _jTotalBytesProcessedAccuracy+ (\ s a -> s{_jTotalBytesProcessedAccuracy = a})++-- | Standard SQL only: list of undeclared query parameters detected during a+-- dry run validation.+jUndeclaredQueryParameters :: Lens' JobStatistics2 [QueryParameter]+jUndeclaredQueryParameters+ = lens _jUndeclaredQueryParameters+ (\ s a -> s{_jUndeclaredQueryParameters = a})+ . _Default+ . _Coerce++-- | [Output-only] Referenced tables for the job. Queries that reference more+-- than 50 tables will not have a complete list.+jReferencedTables :: Lens' JobStatistics2 [TableReference]+jReferencedTables+ = lens _jReferencedTables+ (\ s a -> s{_jReferencedTables = a})+ . _Default+ . _Coerce++-- | The type of query statement, if valid. Possible values (new values might+-- be added in the future): \"SELECT\": SELECT query. \"INSERT\": INSERT+-- query; see+-- https:\/\/cloud.google.com\/bigquery\/docs\/reference\/standard-sql\/data-manipulation-language.+-- \"UPDATE\": UPDATE query; see+-- https:\/\/cloud.google.com\/bigquery\/docs\/reference\/standard-sql\/data-manipulation-language.+-- \"DELETE\": DELETE query; see+-- https:\/\/cloud.google.com\/bigquery\/docs\/reference\/standard-sql\/data-manipulation-language.+-- \"MERGE\": MERGE query; see+-- https:\/\/cloud.google.com\/bigquery\/docs\/reference\/standard-sql\/data-manipulation-language.+-- \"CREATE_TABLE\": CREATE [OR REPLACE] TABLE without AS SELECT.+-- \"CREATE_TABLE_AS_SELECT\": CREATE [OR REPLACE] TABLE ... AS SELECT ...+-- . \"DROP_TABLE\": DROP TABLE query. \"CREATE_VIEW\": CREATE [OR REPLACE]+-- VIEW ... AS SELECT ... . \"DROP_VIEW\": DROP VIEW query.+-- \"ALTER_TABLE\": ALTER TABLE query. \"ALTER_VIEW\": ALTER VIEW query.+jStatementType :: Lens' JobStatistics2 (Maybe Text)+jStatementType+ = lens _jStatementType+ (\ s a -> s{_jStatementType = a})++-- | [Output-only] Job resource usage breakdown by reservation.+jReservationUsage :: Lens' JobStatistics2 [JobStatistics2ReservationUsageItem]+jReservationUsage+ = lens _jReservationUsage+ (\ s a -> s{_jReservationUsage = a})+ . _Default+ . _Coerce++-- | [Output-only] The number of rows affected by a DML statement. Present+-- only for DML statements INSERT, UPDATE or DELETE.+jNumDmlAffectedRows :: Lens' JobStatistics2 (Maybe Int64)+jNumDmlAffectedRows+ = lens _jNumDmlAffectedRows+ (\ s a -> s{_jNumDmlAffectedRows = a})+ . mapping _Coerce++-- | [Output-only] [Beta] Describes a timeline of job execution.+jTimeline :: Lens' JobStatistics2 [QueryTimelineSample]+jTimeline+ = lens _jTimeline (\ s a -> s{_jTimeline = a}) .+ _Default+ . _Coerce++-- | [Output-only] Describes execution plan for the query.+jQueryPlan :: Lens' JobStatistics2 [ExplainQueryStage]+jQueryPlan+ = lens _jQueryPlan (\ s a -> s{_jQueryPlan = a}) .+ _Default+ . _Coerce++-- | [Output-only] Whether the query result was fetched from the query cache.+jCacheHit :: Lens' JobStatistics2 (Maybe Bool)+jCacheHit+ = lens _jCacheHit (\ s a -> s{_jCacheHit = a})++-- | [Output-only] Total bytes billed for the job.+jTotalBytesBilled :: Lens' JobStatistics2 (Maybe Int64)+jTotalBytesBilled+ = lens _jTotalBytesBilled+ (\ s a -> s{_jTotalBytesBilled = a})+ . mapping _Coerce++-- | The DDL operation performed, possibly dependent on the pre-existence of+-- the DDL target. Possible values (new values might be added in the+-- future): \"CREATE\": The query created the DDL target. \"SKIP\": No-op.+-- Example cases: the query is CREATE TABLE IF NOT EXISTS while the table+-- already exists, or the query is DROP TABLE IF EXISTS while the table+-- does not exist. \"REPLACE\": The query replaced the DDL target. Example+-- case: the query is CREATE OR REPLACE TABLE, and the table already+-- exists. \"DROP\": The query deleted the DDL target.+jDdlOperationPerformed :: Lens' JobStatistics2 (Maybe Text)+jDdlOperationPerformed+ = lens _jDdlOperationPerformed+ (\ s a -> s{_jDdlOperationPerformed = a})++-- | [Output-only] Total number of partitions processed from all partitioned+-- tables referenced in the job.+jTotalPartitionsProcessed :: Lens' JobStatistics2 (Maybe Int64)+jTotalPartitionsProcessed+ = lens _jTotalPartitionsProcessed+ (\ s a -> s{_jTotalPartitionsProcessed = a})+ . mapping _Coerce++instance FromJSON JobStatistics2 where+ parseJSON+ = withObject "JobStatistics2"+ (\ o ->+ JobStatistics2' <$>+ (o .:? "modelTrainingExpectedTotalIteration") <*>+ (o .:? "modelTraining")+ <*> (o .:? "totalSlotMs")+ <*> (o .:? "ddlTargetTable")+ <*> (o .:? "estimatedBytesProcessed")+ <*> (o .:? "modelTrainingCurrentIteration")+ <*> (o .:? "schema")+ <*> (o .:? "totalBytesProcessed")+ <*> (o .:? "billingTier")+ <*> (o .:? "totalBytesProcessedAccuracy")+ <*> (o .:? "undeclaredQueryParameters" .!= mempty)+ <*> (o .:? "referencedTables" .!= mempty)+ <*> (o .:? "statementType")+ <*> (o .:? "reservationUsage" .!= mempty)+ <*> (o .:? "numDmlAffectedRows")+ <*> (o .:? "timeline" .!= mempty)+ <*> (o .:? "queryPlan" .!= mempty)+ <*> (o .:? "cacheHit")+ <*> (o .:? "totalBytesBilled")+ <*> (o .:? "ddlOperationPerformed")+ <*> (o .:? "totalPartitionsProcessed"))++instance ToJSON JobStatistics2 where+ toJSON JobStatistics2'{..}+ = object+ (catMaybes+ [("modelTrainingExpectedTotalIteration" .=) <$>+ _jModelTrainingExpectedTotalIteration,+ ("modelTraining" .=) <$> _jModelTraining,+ ("totalSlotMs" .=) <$> _jTotalSlotMs,+ ("ddlTargetTable" .=) <$> _jDdlTargetTable,+ ("estimatedBytesProcessed" .=) <$>+ _jEstimatedBytesProcessed,+ ("modelTrainingCurrentIteration" .=) <$>+ _jModelTrainingCurrentIteration,+ ("schema" .=) <$> _jSchema,+ ("totalBytesProcessed" .=) <$> _jTotalBytesProcessed,+ ("billingTier" .=) <$> _jBillingTier,+ ("totalBytesProcessedAccuracy" .=) <$>+ _jTotalBytesProcessedAccuracy,+ ("undeclaredQueryParameters" .=) <$>+ _jUndeclaredQueryParameters,+ ("referencedTables" .=) <$> _jReferencedTables,+ ("statementType" .=) <$> _jStatementType,+ ("reservationUsage" .=) <$> _jReservationUsage,+ ("numDmlAffectedRows" .=) <$> _jNumDmlAffectedRows,+ ("timeline" .=) <$> _jTimeline,+ ("queryPlan" .=) <$> _jQueryPlan,+ ("cacheHit" .=) <$> _jCacheHit,+ ("totalBytesBilled" .=) <$> _jTotalBytesBilled,+ ("ddlOperationPerformed" .=) <$>+ _jDdlOperationPerformed,+ ("totalPartitionsProcessed" .=) <$>+ _jTotalPartitionsProcessed])++--+-- /See:/ 'jobStatus' smart constructor.+data JobStatus = JobStatus'+ { _jsState :: !(Maybe Text)+ , _jsErrorResult :: !(Maybe ErrorProto)+ , _jsErrors :: !(Maybe [ErrorProto])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobStatus' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jsState'+--+-- * 'jsErrorResult'+--+-- * 'jsErrors'+jobStatus+ :: JobStatus+jobStatus =+ JobStatus'+ { _jsState = Nothing+ , _jsErrorResult = Nothing+ , _jsErrors = Nothing+ }++-- | [Output-only] Running state of the job.+jsState :: Lens' JobStatus (Maybe Text)+jsState = lens _jsState (\ s a -> s{_jsState = a})++-- | [Output-only] Final error result of the job. If present, indicates that+-- the job has completed and was unsuccessful.+jsErrorResult :: Lens' JobStatus (Maybe ErrorProto)+jsErrorResult+ = lens _jsErrorResult+ (\ s a -> s{_jsErrorResult = a})++-- | [Output-only] The first errors encountered during the running of the+-- job. The final message includes the number of errors that caused the+-- process to stop. Errors here do not necessarily mean that the job has+-- completed or was unsuccessful.+jsErrors :: Lens' JobStatus [ErrorProto]+jsErrors+ = lens _jsErrors (\ s a -> s{_jsErrors = a}) .+ _Default+ . _Coerce++instance FromJSON JobStatus where+ parseJSON+ = withObject "JobStatus"+ (\ o ->+ JobStatus' <$>+ (o .:? "state") <*> (o .:? "errorResult") <*>+ (o .:? "errors" .!= mempty))++instance ToJSON JobStatus where+ toJSON JobStatus'{..}+ = object+ (catMaybes+ [("state" .=) <$> _jsState,+ ("errorResult" .=) <$> _jsErrorResult,+ ("errors" .=) <$> _jsErrors])++-- | The labels associated with this table. You can use these to organize and+-- group your tables. Label keys and values can be no longer than 63+-- characters, can only contain lowercase letters, numeric characters,+-- underscores and dashes. International characters are allowed. Label+-- values are optional. Label keys must start with a letter and each label+-- in the list must have a different key.+--+-- /See:/ 'tableLabels' smart constructor.+newtype TableLabels = TableLabels'+ { _tlAddtional :: HashMap Text Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableLabels' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tlAddtional'+tableLabels+ :: HashMap Text Text -- ^ 'tlAddtional'+ -> TableLabels+tableLabels pTlAddtional_ =+ TableLabels'+ { _tlAddtional = _Coerce # pTlAddtional_+ }++tlAddtional :: Lens' TableLabels (HashMap Text Text)+tlAddtional+ = lens _tlAddtional (\ s a -> s{_tlAddtional = a}) .+ _Coerce++instance FromJSON TableLabels where+ parseJSON+ = withObject "TableLabels"+ (\ o -> TableLabels' <$> (parseJSONObject o))++instance ToJSON TableLabels where+ toJSON = toJSON . _tlAddtional++--+-- /See:/ 'destinationTableProperties' smart constructor.+data DestinationTableProperties = DestinationTableProperties'+ { _dtpFriendlyName :: !(Maybe Text)+ , _dtpDescription :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DestinationTableProperties' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dtpFriendlyName'+--+-- * 'dtpDescription'+destinationTableProperties+ :: DestinationTableProperties+destinationTableProperties =+ DestinationTableProperties'+ { _dtpFriendlyName = Nothing+ , _dtpDescription = Nothing+ }++-- | [Optional] The friendly name for the destination table. This will only+-- be used if the destination table is newly created. If the table already+-- exists and a value different than the current friendly name is provided,+-- the job will fail.+dtpFriendlyName :: Lens' DestinationTableProperties (Maybe Text)+dtpFriendlyName+ = lens _dtpFriendlyName+ (\ s a -> s{_dtpFriendlyName = a})++-- | [Optional] The description for the destination table. This will only be+-- used if the destination table is newly created. If the table already+-- exists and a value different than the current description is provided,+-- the job will fail.+dtpDescription :: Lens' DestinationTableProperties (Maybe Text)+dtpDescription+ = lens _dtpDescription+ (\ s a -> s{_dtpDescription = a})++instance FromJSON DestinationTableProperties where+ parseJSON+ = withObject "DestinationTableProperties"+ (\ o ->+ DestinationTableProperties' <$>+ (o .:? "friendlyName") <*> (o .:? "description"))++instance ToJSON DestinationTableProperties where+ toJSON DestinationTableProperties'{..}+ = object+ (catMaybes+ [("friendlyName" .=) <$> _dtpFriendlyName,+ ("description" .=) <$> _dtpDescription])++--+-- /See:/ 'dataSetAccessItem' smart constructor.+data DataSetAccessItem = DataSetAccessItem'+ { _dsaiGroupByEmail :: !(Maybe Text)+ , _dsaiDomain :: !(Maybe Text)+ , _dsaiSpecialGroup :: !(Maybe Text)+ , _dsaiRole :: !(Maybe Text)+ , _dsaiIAMMember :: !(Maybe Text)+ , _dsaiView :: !(Maybe TableReference)+ , _dsaiUserByEmail :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DataSetAccessItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dsaiGroupByEmail'+--+-- * 'dsaiDomain'+--+-- * 'dsaiSpecialGroup'+--+-- * 'dsaiRole'+--+-- * 'dsaiIAMMember'+--+-- * 'dsaiView'+--+-- * 'dsaiUserByEmail'+dataSetAccessItem+ :: DataSetAccessItem+dataSetAccessItem =+ DataSetAccessItem'+ { _dsaiGroupByEmail = Nothing+ , _dsaiDomain = Nothing+ , _dsaiSpecialGroup = Nothing+ , _dsaiRole = Nothing+ , _dsaiIAMMember = Nothing+ , _dsaiView = Nothing+ , _dsaiUserByEmail = Nothing+ }++-- | [Pick one] An email address of a Google Group to grant access to. Maps+-- to IAM policy member \"group:GROUP\".+dsaiGroupByEmail :: Lens' DataSetAccessItem (Maybe Text)+dsaiGroupByEmail+ = lens _dsaiGroupByEmail+ (\ s a -> s{_dsaiGroupByEmail = a})++-- | [Pick one] A domain to grant access to. Any users signed in with the+-- domain specified will be granted the specified access. Example:+-- \"example.com\". Maps to IAM policy member \"domain:DOMAIN\".+dsaiDomain :: Lens' DataSetAccessItem (Maybe Text)+dsaiDomain+ = lens _dsaiDomain (\ s a -> s{_dsaiDomain = a})++-- | [Pick one] A special group to grant access to. Possible values include:+-- projectOwners: Owners of the enclosing project. projectReaders: Readers+-- of the enclosing project. projectWriters: Writers of the enclosing+-- project. allAuthenticatedUsers: All authenticated BigQuery users. Maps+-- to similarly-named IAM members.+dsaiSpecialGroup :: Lens' DataSetAccessItem (Maybe Text)+dsaiSpecialGroup+ = lens _dsaiSpecialGroup+ (\ s a -> s{_dsaiSpecialGroup = a})++-- | [Required] Describes the rights granted to the user specified by the+-- other member of the access object. The following string values are+-- supported: READER, WRITER, OWNER.+dsaiRole :: Lens' DataSetAccessItem (Maybe Text)+dsaiRole = lens _dsaiRole (\ s a -> s{_dsaiRole = a})++-- | [Pick one] Some other type of member that appears in the IAM Policy but+-- isn\'t a user, group, domain, or special group.+dsaiIAMMember :: Lens' DataSetAccessItem (Maybe Text)+dsaiIAMMember+ = lens _dsaiIAMMember+ (\ s a -> s{_dsaiIAMMember = a})++-- | [Pick one] A view from a different dataset to grant access to. Queries+-- executed against that view will have read access to tables in this+-- dataset. The role field is not required when this field is set. If that+-- view is updated by any user, access to the view needs to be granted+-- again via an update operation.+dsaiView :: Lens' DataSetAccessItem (Maybe TableReference)+dsaiView = lens _dsaiView (\ s a -> s{_dsaiView = a})++-- | [Pick one] An email address of a user to grant access to. For example:+-- fred\'example.com. Maps to IAM policy member \"user:EMAIL\" or+-- \"serviceAccount:EMAIL\".+dsaiUserByEmail :: Lens' DataSetAccessItem (Maybe Text)+dsaiUserByEmail+ = lens _dsaiUserByEmail+ (\ s a -> s{_dsaiUserByEmail = a})++instance FromJSON DataSetAccessItem where+ parseJSON+ = withObject "DataSetAccessItem"+ (\ o ->+ DataSetAccessItem' <$>+ (o .:? "groupByEmail") <*> (o .:? "domain") <*>+ (o .:? "specialGroup")+ <*> (o .:? "role")+ <*> (o .:? "iamMember")+ <*> (o .:? "view")+ <*> (o .:? "userByEmail"))++instance ToJSON DataSetAccessItem where+ toJSON DataSetAccessItem'{..}+ = object+ (catMaybes+ [("groupByEmail" .=) <$> _dsaiGroupByEmail,+ ("domain" .=) <$> _dsaiDomain,+ ("specialGroup" .=) <$> _dsaiSpecialGroup,+ ("role" .=) <$> _dsaiRole,+ ("iamMember" .=) <$> _dsaiIAMMember,+ ("view" .=) <$> _dsaiView,+ ("userByEmail" .=) <$> _dsaiUserByEmail])++--+-- /See:/ 'tableDataInsertAllResponse' smart constructor.+data TableDataInsertAllResponse = TableDataInsertAllResponse'+ { _tKind :: !Text+ , _tInsertErrors :: !(Maybe [TableDataInsertAllResponseInsertErrorsItem])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableDataInsertAllResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tKind'+--+-- * 'tInsertErrors'+tableDataInsertAllResponse+ :: TableDataInsertAllResponse+tableDataInsertAllResponse =+ TableDataInsertAllResponse'+ { _tKind = "bigquery#tableDataInsertAllResponse"+ , _tInsertErrors = Nothing+ }++-- | The resource type of the response.+tKind :: Lens' TableDataInsertAllResponse Text+tKind = lens _tKind (\ s a -> s{_tKind = a})++-- | An array of errors for rows that were not inserted.+tInsertErrors :: Lens' TableDataInsertAllResponse [TableDataInsertAllResponseInsertErrorsItem]+tInsertErrors+ = lens _tInsertErrors+ (\ s a -> s{_tInsertErrors = a})+ . _Default+ . _Coerce++instance FromJSON TableDataInsertAllResponse where+ parseJSON+ = withObject "TableDataInsertAllResponse"+ (\ o ->+ TableDataInsertAllResponse' <$>+ (o .:? "kind" .!=+ "bigquery#tableDataInsertAllResponse")+ <*> (o .:? "insertErrors" .!= mempty))++instance ToJSON TableDataInsertAllResponse where+ toJSON TableDataInsertAllResponse'{..}+ = object+ (catMaybes+ [Just ("kind" .= _tKind),+ ("insertErrors" .=) <$> _tInsertErrors])++--+-- /See:/ 'queryParameterType' smart constructor.+data QueryParameterType = QueryParameterType'+ { _qptStructTypes :: !(Maybe [QueryParameterTypeStructTypesItem])+ , _qptType :: !(Maybe Text)+ , _qptArrayType :: !(Maybe QueryParameterType)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'QueryParameterType' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'qptStructTypes'+--+-- * 'qptType'+--+-- * 'qptArrayType'+queryParameterType+ :: QueryParameterType+queryParameterType =+ QueryParameterType'+ { _qptStructTypes = Nothing+ , _qptType = Nothing+ , _qptArrayType = Nothing+ }++-- | [Optional] The types of the fields of this struct, in order, if this is+-- a struct.+qptStructTypes :: Lens' QueryParameterType [QueryParameterTypeStructTypesItem]+qptStructTypes+ = lens _qptStructTypes+ (\ s a -> s{_qptStructTypes = a})+ . _Default+ . _Coerce++-- | [Required] The top level type of this field.+qptType :: Lens' QueryParameterType (Maybe Text)+qptType = lens _qptType (\ s a -> s{_qptType = a})++-- | [Optional] The type of the array\'s elements, if this is an array.+qptArrayType :: Lens' QueryParameterType (Maybe QueryParameterType)+qptArrayType+ = lens _qptArrayType (\ s a -> s{_qptArrayType = a})++instance FromJSON QueryParameterType where+ parseJSON+ = withObject "QueryParameterType"+ (\ o ->+ QueryParameterType' <$>+ (o .:? "structTypes" .!= mempty) <*> (o .:? "type")+ <*> (o .:? "arrayType"))++instance ToJSON QueryParameterType where+ toJSON QueryParameterType'{..}+ = object+ (catMaybes+ [("structTypes" .=) <$> _qptStructTypes,+ ("type" .=) <$> _qptType,+ ("arrayType" .=) <$> _qptArrayType])++--+-- /See:/ 'table' smart constructor.+data Table = Table'+ { _tabMaterializedView :: !(Maybe MaterializedViewDefinition)+ , _tabCreationTime :: !(Maybe (Textual Int64))+ , _tabEtag :: !(Maybe Text)+ , _tabNumBytes :: !(Maybe (Textual Int64))+ , _tabClustering :: !(Maybe Clustering)+ , _tabExternalDataConfiguration :: !(Maybe ExternalDataConfiguration)+ , _tabRangePartitioning :: !(Maybe RangePartitioning)+ , _tabLocation :: !(Maybe Text)+ , _tabTableReference :: !(Maybe TableReference)+ , _tabFriendlyName :: !(Maybe Text)+ , _tabKind :: !Text+ , _tabLastModifiedTime :: !(Maybe (Textual Word64))+ , _tabSchema :: !(Maybe TableSchema)+ , _tabStreamingBuffer :: !(Maybe Streamingbuffer)+ , _tabSelfLink :: !(Maybe Text)+ , _tabRequirePartitionFilter :: !Bool+ , _tabEncryptionConfiguration :: !(Maybe EncryptionConfiguration)+ , _tabModel :: !(Maybe ModelDefinition)+ , _tabTimePartitioning :: !(Maybe TimePartitioning)+ , _tabNumRows :: !(Maybe (Textual Word64))+ , _tabNumPhysicalBytes :: !(Maybe (Textual Int64))+ , _tabView :: !(Maybe ViewDefinition)+ , _tabId :: !(Maybe Text)+ , _tabLabels :: !(Maybe TableLabels)+ , _tabType :: !(Maybe Text)+ , _tabNumLongTermBytes :: !(Maybe (Textual Int64))+ , _tabExpirationTime :: !(Maybe (Textual Int64))+ , _tabDescription :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Table' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tabMaterializedView'+--+-- * 'tabCreationTime'+--+-- * 'tabEtag'+--+-- * 'tabNumBytes'+--+-- * 'tabClustering'+--+-- * 'tabExternalDataConfiguration'+--+-- * 'tabRangePartitioning'+--+-- * 'tabLocation'+--+-- * 'tabTableReference'+--+-- * 'tabFriendlyName'+--+-- * 'tabKind'+--+-- * 'tabLastModifiedTime'+--+-- * 'tabSchema'+--+-- * 'tabStreamingBuffer'+--+-- * 'tabSelfLink'+--+-- * 'tabRequirePartitionFilter'+--+-- * 'tabEncryptionConfiguration'+--+-- * 'tabModel'+--+-- * 'tabTimePartitioning'+--+-- * 'tabNumRows'+--+-- * 'tabNumPhysicalBytes'+--+-- * 'tabView'+--+-- * 'tabId'+--+-- * 'tabLabels'+--+-- * 'tabType'+--+-- * 'tabNumLongTermBytes'+--+-- * 'tabExpirationTime'+--+-- * 'tabDescription'+table+ :: Table+table =+ Table'+ { _tabMaterializedView = Nothing+ , _tabCreationTime = Nothing+ , _tabEtag = Nothing+ , _tabNumBytes = Nothing+ , _tabClustering = Nothing+ , _tabExternalDataConfiguration = Nothing+ , _tabRangePartitioning = Nothing+ , _tabLocation = Nothing+ , _tabTableReference = Nothing+ , _tabFriendlyName = Nothing+ , _tabKind = "bigquery#table"+ , _tabLastModifiedTime = Nothing+ , _tabSchema = Nothing+ , _tabStreamingBuffer = Nothing+ , _tabSelfLink = Nothing+ , _tabRequirePartitionFilter = False+ , _tabEncryptionConfiguration = Nothing+ , _tabModel = Nothing+ , _tabTimePartitioning = Nothing+ , _tabNumRows = Nothing+ , _tabNumPhysicalBytes = Nothing+ , _tabView = Nothing+ , _tabId = Nothing+ , _tabLabels = Nothing+ , _tabType = Nothing+ , _tabNumLongTermBytes = Nothing+ , _tabExpirationTime = Nothing+ , _tabDescription = Nothing+ }++-- | [Optional] Materialized view definition.+tabMaterializedView :: Lens' Table (Maybe MaterializedViewDefinition)+tabMaterializedView+ = lens _tabMaterializedView+ (\ s a -> s{_tabMaterializedView = a})++-- | [Output-only] The time when this table was created, in milliseconds+-- since the epoch.+tabCreationTime :: Lens' Table (Maybe Int64)+tabCreationTime+ = lens _tabCreationTime+ (\ s a -> s{_tabCreationTime = a})+ . mapping _Coerce++-- | [Output-only] A hash of the table metadata. Used to ensure there were no+-- concurrent modifications to the resource when attempting an update. Not+-- guaranteed to change when the table contents or the fields numRows,+-- numBytes, numLongTermBytes or lastModifiedTime change.+tabEtag :: Lens' Table (Maybe Text)+tabEtag = lens _tabEtag (\ s a -> s{_tabEtag = a})++-- | [Output-only] The size of this table in bytes, excluding any data in the+-- streaming buffer.+tabNumBytes :: Lens' Table (Maybe Int64)+tabNumBytes+ = lens _tabNumBytes (\ s a -> s{_tabNumBytes = a}) .+ mapping _Coerce++-- | [Beta] Clustering specification for the table. Must be specified with+-- partitioning, data in the table will be first partitioned and+-- subsequently clustered.+tabClustering :: Lens' Table (Maybe Clustering)+tabClustering+ = lens _tabClustering+ (\ s a -> s{_tabClustering = a})++-- | [Optional] Describes the data format, location, and other properties of+-- a table stored outside of BigQuery. By defining these properties, the+-- data source can then be queried as if it were a standard BigQuery table.+tabExternalDataConfiguration :: Lens' Table (Maybe ExternalDataConfiguration)+tabExternalDataConfiguration+ = lens _tabExternalDataConfiguration+ (\ s a -> s{_tabExternalDataConfiguration = a})++-- | [TrustedTester] Range partitioning specification for this table. Only+-- one of timePartitioning and rangePartitioning should be specified.+tabRangePartitioning :: Lens' Table (Maybe RangePartitioning)+tabRangePartitioning+ = lens _tabRangePartitioning+ (\ s a -> s{_tabRangePartitioning = a})++-- | [Output-only] The geographic location where the table resides. This+-- value is inherited from the dataset.+tabLocation :: Lens' Table (Maybe Text)+tabLocation+ = lens _tabLocation (\ s a -> s{_tabLocation = a})++-- | [Required] Reference describing the ID of this table.+tabTableReference :: Lens' Table (Maybe TableReference)+tabTableReference+ = lens _tabTableReference+ (\ s a -> s{_tabTableReference = a})++-- | [Optional] A descriptive name for this table.+tabFriendlyName :: Lens' Table (Maybe Text)+tabFriendlyName+ = lens _tabFriendlyName+ (\ s a -> s{_tabFriendlyName = a})++-- | [Output-only] The type of the resource.+tabKind :: Lens' Table Text+tabKind = lens _tabKind (\ s a -> s{_tabKind = a})++-- | [Output-only] The time when this table was last modified, in+-- milliseconds since the epoch.+tabLastModifiedTime :: Lens' Table (Maybe Word64)+tabLastModifiedTime+ = lens _tabLastModifiedTime+ (\ s a -> s{_tabLastModifiedTime = a})+ . mapping _Coerce++-- | [Optional] Describes the schema of this table.+tabSchema :: Lens' Table (Maybe TableSchema)+tabSchema+ = lens _tabSchema (\ s a -> s{_tabSchema = a})++-- | [Output-only] Contains information regarding this table\'s streaming+-- buffer, if one is present. This field will be absent if the table is not+-- being streamed to or if there is no data in the streaming buffer.+tabStreamingBuffer :: Lens' Table (Maybe Streamingbuffer)+tabStreamingBuffer+ = lens _tabStreamingBuffer+ (\ s a -> s{_tabStreamingBuffer = a})++-- | [Output-only] A URL that can be used to access this resource again.+tabSelfLink :: Lens' Table (Maybe Text)+tabSelfLink+ = lens _tabSelfLink (\ s a -> s{_tabSelfLink = a})++-- | [Beta] [Optional] If set to true, queries over this table require a+-- partition filter that can be used for partition elimination to be+-- specified.+tabRequirePartitionFilter :: Lens' Table Bool+tabRequirePartitionFilter+ = lens _tabRequirePartitionFilter+ (\ s a -> s{_tabRequirePartitionFilter = a})++-- | Custom encryption configuration (e.g., Cloud KMS keys).+tabEncryptionConfiguration :: Lens' Table (Maybe EncryptionConfiguration)+tabEncryptionConfiguration+ = lens _tabEncryptionConfiguration+ (\ s a -> s{_tabEncryptionConfiguration = a})++-- | [Output-only, Beta] Present iff this table represents a ML model.+-- Describes the training information for the model, and it is required to+-- run \'PREDICT\' queries.+tabModel :: Lens' Table (Maybe ModelDefinition)+tabModel = lens _tabModel (\ s a -> s{_tabModel = a})++-- | Time-based partitioning specification for this table. Only one of+-- timePartitioning and rangePartitioning should be specified.+tabTimePartitioning :: Lens' Table (Maybe TimePartitioning)+tabTimePartitioning+ = lens _tabTimePartitioning+ (\ s a -> s{_tabTimePartitioning = a})++-- | [Output-only] The number of rows of data in this table, excluding any+-- data in the streaming buffer.+tabNumRows :: Lens' Table (Maybe Word64)+tabNumRows+ = lens _tabNumRows (\ s a -> s{_tabNumRows = a}) .+ mapping _Coerce++-- | [Output-only] [TrustedTester] The physical size of this table in bytes,+-- excluding any data in the streaming buffer. This includes compression+-- and storage used for time travel.+tabNumPhysicalBytes :: Lens' Table (Maybe Int64)+tabNumPhysicalBytes+ = lens _tabNumPhysicalBytes+ (\ s a -> s{_tabNumPhysicalBytes = a})+ . mapping _Coerce++-- | [Optional] The view definition.+tabView :: Lens' Table (Maybe ViewDefinition)+tabView = lens _tabView (\ s a -> s{_tabView = a})++-- | [Output-only] An opaque ID uniquely identifying the table.+tabId :: Lens' Table (Maybe Text)+tabId = lens _tabId (\ s a -> s{_tabId = a})++-- | The labels associated with this table. You can use these to organize and+-- group your tables. Label keys and values can be no longer than 63+-- characters, can only contain lowercase letters, numeric characters,+-- underscores and dashes. International characters are allowed. Label+-- values are optional. Label keys must start with a letter and each label+-- in the list must have a different key.+tabLabels :: Lens' Table (Maybe TableLabels)+tabLabels+ = lens _tabLabels (\ s a -> s{_tabLabels = a})++-- | [Output-only] Describes the table type. The following values are+-- supported: TABLE: A normal BigQuery table. VIEW: A virtual table defined+-- by a SQL query. [TrustedTester] MATERIALIZED_VIEW: SQL query whose+-- result is persisted. EXTERNAL: A table that references data stored in an+-- external storage system, such as Google Cloud Storage. The default value+-- is TABLE.+tabType :: Lens' Table (Maybe Text)+tabType = lens _tabType (\ s a -> s{_tabType = a})++-- | [Output-only] The number of bytes in the table that are considered+-- \"long-term storage\".+tabNumLongTermBytes :: Lens' Table (Maybe Int64)+tabNumLongTermBytes+ = lens _tabNumLongTermBytes+ (\ s a -> s{_tabNumLongTermBytes = a})+ . mapping _Coerce++-- | [Optional] The time when this table expires, in milliseconds since the+-- epoch. If not present, the table will persist indefinitely. Expired+-- tables will be deleted and their storage reclaimed. The+-- defaultTableExpirationMs property of the encapsulating dataset can be+-- used to set a default expirationTime on newly created tables.+tabExpirationTime :: Lens' Table (Maybe Int64)+tabExpirationTime+ = lens _tabExpirationTime+ (\ s a -> s{_tabExpirationTime = a})+ . mapping _Coerce++-- | [Optional] A user-friendly description of this table.+tabDescription :: Lens' Table (Maybe Text)+tabDescription+ = lens _tabDescription+ (\ s a -> s{_tabDescription = a})++instance FromJSON Table where+ parseJSON+ = withObject "Table"+ (\ o ->+ Table' <$>+ (o .:? "materializedView") <*> (o .:? "creationTime")+ <*> (o .:? "etag")+ <*> (o .:? "numBytes")+ <*> (o .:? "clustering")+ <*> (o .:? "externalDataConfiguration")+ <*> (o .:? "rangePartitioning")+ <*> (o .:? "location")+ <*> (o .:? "tableReference")+ <*> (o .:? "friendlyName")+ <*> (o .:? "kind" .!= "bigquery#table")+ <*> (o .:? "lastModifiedTime")+ <*> (o .:? "schema")+ <*> (o .:? "streamingBuffer")+ <*> (o .:? "selfLink")+ <*> (o .:? "requirePartitionFilter" .!= False)+ <*> (o .:? "encryptionConfiguration")+ <*> (o .:? "model")+ <*> (o .:? "timePartitioning")+ <*> (o .:? "numRows")+ <*> (o .:? "numPhysicalBytes")+ <*> (o .:? "view")+ <*> (o .:? "id")+ <*> (o .:? "labels")+ <*> (o .:? "type")+ <*> (o .:? "numLongTermBytes")+ <*> (o .:? "expirationTime")+ <*> (o .:? "description"))++instance ToJSON Table where+ toJSON Table'{..}+ = object+ (catMaybes+ [("materializedView" .=) <$> _tabMaterializedView,+ ("creationTime" .=) <$> _tabCreationTime,+ ("etag" .=) <$> _tabEtag,+ ("numBytes" .=) <$> _tabNumBytes,+ ("clustering" .=) <$> _tabClustering,+ ("externalDataConfiguration" .=) <$>+ _tabExternalDataConfiguration,+ ("rangePartitioning" .=) <$> _tabRangePartitioning,+ ("location" .=) <$> _tabLocation,+ ("tableReference" .=) <$> _tabTableReference,+ ("friendlyName" .=) <$> _tabFriendlyName,+ Just ("kind" .= _tabKind),+ ("lastModifiedTime" .=) <$> _tabLastModifiedTime,+ ("schema" .=) <$> _tabSchema,+ ("streamingBuffer" .=) <$> _tabStreamingBuffer,+ ("selfLink" .=) <$> _tabSelfLink,+ Just+ ("requirePartitionFilter" .=+ _tabRequirePartitionFilter),+ ("encryptionConfiguration" .=) <$>+ _tabEncryptionConfiguration,+ ("model" .=) <$> _tabModel,+ ("timePartitioning" .=) <$> _tabTimePartitioning,+ ("numRows" .=) <$> _tabNumRows,+ ("numPhysicalBytes" .=) <$> _tabNumPhysicalBytes,+ ("view" .=) <$> _tabView, ("id" .=) <$> _tabId,+ ("labels" .=) <$> _tabLabels,+ ("type" .=) <$> _tabType,+ ("numLongTermBytes" .=) <$> _tabNumLongTermBytes,+ ("expirationTime" .=) <$> _tabExpirationTime,+ ("description" .=) <$> _tabDescription])++--+-- /See:/ 'errorProto' smart constructor.+data ErrorProto = ErrorProto'+ { _epDebugInfo :: !(Maybe Text)+ , _epLocation :: !(Maybe Text)+ , _epReason :: !(Maybe Text)+ , _epMessage :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ErrorProto' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'epDebugInfo'+--+-- * 'epLocation'+--+-- * 'epReason'+--+-- * 'epMessage'+errorProto+ :: ErrorProto+errorProto =+ ErrorProto'+ { _epDebugInfo = Nothing+ , _epLocation = Nothing+ , _epReason = Nothing+ , _epMessage = Nothing+ }++-- | Debugging information. This property is internal to Google and should+-- not be used.+epDebugInfo :: Lens' ErrorProto (Maybe Text)+epDebugInfo+ = lens _epDebugInfo (\ s a -> s{_epDebugInfo = a})++-- | Specifies where the error occurred, if present.+epLocation :: Lens' ErrorProto (Maybe Text)+epLocation+ = lens _epLocation (\ s a -> s{_epLocation = a})++-- | A short error code that summarizes the error.+epReason :: Lens' ErrorProto (Maybe Text)+epReason = lens _epReason (\ s a -> s{_epReason = a})++-- | A human-readable description of the error.+epMessage :: Lens' ErrorProto (Maybe Text)+epMessage+ = lens _epMessage (\ s a -> s{_epMessage = a})++instance FromJSON ErrorProto where+ parseJSON+ = withObject "ErrorProto"+ (\ o ->+ ErrorProto' <$>+ (o .:? "debugInfo") <*> (o .:? "location") <*>+ (o .:? "reason")+ <*> (o .:? "message"))++instance ToJSON ErrorProto where+ toJSON ErrorProto'{..}+ = object+ (catMaybes+ [("debugInfo" .=) <$> _epDebugInfo,+ ("location" .=) <$> _epLocation,+ ("reason" .=) <$> _epReason,+ ("message" .=) <$> _epMessage])++--+-- /See:/ 'csvOptions' smart constructor.+data CSVOptions = CSVOptions'+ { _coSkipLeadingRows :: !(Maybe (Textual Int64))+ , _coAllowJaggedRows :: !(Maybe Bool)+ , _coAllowQuotedNewlines :: !(Maybe Bool)+ , _coQuote :: !Text+ , _coEncoding :: !(Maybe Text)+ , _coFieldDelimiter :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CSVOptions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'coSkipLeadingRows'+--+-- * 'coAllowJaggedRows'+--+-- * 'coAllowQuotedNewlines'+--+-- * 'coQuote'+--+-- * 'coEncoding'+--+-- * 'coFieldDelimiter'+csvOptions+ :: CSVOptions+csvOptions =+ CSVOptions'+ { _coSkipLeadingRows = Nothing+ , _coAllowJaggedRows = Nothing+ , _coAllowQuotedNewlines = Nothing+ , _coQuote = "\""+ , _coEncoding = Nothing+ , _coFieldDelimiter = Nothing+ }++-- | [Optional] The number of rows at the top of a CSV file that BigQuery+-- will skip when reading the data. The default value is 0. This property+-- is useful if you have header rows in the file that should be skipped.+coSkipLeadingRows :: Lens' CSVOptions (Maybe Int64)+coSkipLeadingRows+ = lens _coSkipLeadingRows+ (\ s a -> s{_coSkipLeadingRows = a})+ . mapping _Coerce++-- | [Optional] Indicates if BigQuery should accept rows that are missing+-- trailing optional columns. If true, BigQuery treats missing trailing+-- columns as null values. If false, records with missing trailing columns+-- are treated as bad records, and if there are too many bad records, an+-- invalid error is returned in the job result. The default value is false.+coAllowJaggedRows :: Lens' CSVOptions (Maybe Bool)+coAllowJaggedRows+ = lens _coAllowJaggedRows+ (\ s a -> s{_coAllowJaggedRows = a})++-- | [Optional] Indicates if BigQuery should allow quoted data sections that+-- contain newline characters in a CSV file. The default value is false.+coAllowQuotedNewlines :: Lens' CSVOptions (Maybe Bool)+coAllowQuotedNewlines+ = lens _coAllowQuotedNewlines+ (\ s a -> s{_coAllowQuotedNewlines = a})++-- | [Optional] The value that is used to quote data sections in a CSV file.+-- BigQuery converts the string to ISO-8859-1 encoding, and then uses the+-- first byte of the encoded string to split the data in its raw, binary+-- state. The default value is a double-quote (\'\"\'). If your data does+-- not contain quoted sections, set the property value to an empty string.+-- If your data contains quoted newline characters, you must also set the+-- allowQuotedNewlines property to true.+coQuote :: Lens' CSVOptions Text+coQuote = lens _coQuote (\ s a -> s{_coQuote = a})++-- | [Optional] The character encoding of the data. The supported values are+-- UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery decodes the+-- data after the raw, binary data has been split using the values of the+-- quote and fieldDelimiter properties.+coEncoding :: Lens' CSVOptions (Maybe Text)+coEncoding+ = lens _coEncoding (\ s a -> s{_coEncoding = a})++-- | [Optional] The separator for fields in a CSV file. BigQuery converts the+-- string to ISO-8859-1 encoding, and then uses the first byte of the+-- encoded string to split the data in its raw, binary state. BigQuery also+-- supports the escape sequence \"\\t\" to specify a tab separator. The+-- default value is a comma (\',\').+coFieldDelimiter :: Lens' CSVOptions (Maybe Text)+coFieldDelimiter+ = lens _coFieldDelimiter+ (\ s a -> s{_coFieldDelimiter = a})++instance FromJSON CSVOptions where+ parseJSON+ = withObject "CSVOptions"+ (\ o ->+ CSVOptions' <$>+ (o .:? "skipLeadingRows") <*>+ (o .:? "allowJaggedRows")+ <*> (o .:? "allowQuotedNewlines")+ <*> (o .:? "quote" .!= "\"")+ <*> (o .:? "encoding")+ <*> (o .:? "fieldDelimiter"))++instance ToJSON CSVOptions where+ toJSON CSVOptions'{..}+ = object+ (catMaybes+ [("skipLeadingRows" .=) <$> _coSkipLeadingRows,+ ("allowJaggedRows" .=) <$> _coAllowJaggedRows,+ ("allowQuotedNewlines" .=) <$>+ _coAllowQuotedNewlines,+ Just ("quote" .= _coQuote),+ ("encoding" .=) <$> _coEncoding,+ ("fieldDelimiter" .=) <$> _coFieldDelimiter])++--+-- /See:/ 'jobStatistics3' smart constructor.+data JobStatistics3 = JobStatistics3'+ { _jsInputFiles :: !(Maybe (Textual Int64))+ , _jsOutputRows :: !(Maybe (Textual Int64))+ , _jsOutputBytes :: !(Maybe (Textual Int64))+ , _jsInputFileBytes :: !(Maybe (Textual Int64))+ , _jsBadRecords :: !(Maybe (Textual Int64))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'JobStatistics3' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jsInputFiles'+--+-- * 'jsOutputRows'+--+-- * 'jsOutputBytes'+--+-- * 'jsInputFileBytes'+--+-- * 'jsBadRecords'+jobStatistics3+ :: JobStatistics3+jobStatistics3 =+ JobStatistics3'+ { _jsInputFiles = Nothing+ , _jsOutputRows = Nothing+ , _jsOutputBytes = Nothing+ , _jsInputFileBytes = Nothing+ , _jsBadRecords = Nothing+ }++-- | [Output-only] Number of source files in a load job.+jsInputFiles :: Lens' JobStatistics3 (Maybe Int64)+jsInputFiles+ = lens _jsInputFiles (\ s a -> s{_jsInputFiles = a})+ . mapping _Coerce++-- | [Output-only] Number of rows imported in a load job. Note that while an+-- import job is in the running state, this value may change.+jsOutputRows :: Lens' JobStatistics3 (Maybe Int64)+jsOutputRows+ = lens _jsOutputRows (\ s a -> s{_jsOutputRows = a})+ . mapping _Coerce++-- | [Output-only] Size of the loaded data in bytes. Note that while a load+-- job is in the running state, this value may change.+jsOutputBytes :: Lens' JobStatistics3 (Maybe Int64)+jsOutputBytes+ = lens _jsOutputBytes+ (\ s a -> s{_jsOutputBytes = a})+ . mapping _Coerce++-- | [Output-only] Number of bytes of source data in a load job.+jsInputFileBytes :: Lens' JobStatistics3 (Maybe Int64)+jsInputFileBytes+ = lens _jsInputFileBytes+ (\ s a -> s{_jsInputFileBytes = a})+ . mapping _Coerce++-- | [Output-only] The number of bad records encountered. Note that if the+-- job has failed because of more bad records encountered than the maximum+-- allowed in the load job configuration, then this number can be less than+-- the total number of bad records present in the input data.+jsBadRecords :: Lens' JobStatistics3 (Maybe Int64)+jsBadRecords+ = lens _jsBadRecords (\ s a -> s{_jsBadRecords = a})+ . mapping _Coerce++instance FromJSON JobStatistics3 where+ parseJSON+ = withObject "JobStatistics3"+ (\ o ->+ JobStatistics3' <$>+ (o .:? "inputFiles") <*> (o .:? "outputRows") <*>+ (o .:? "outputBytes")+ <*> (o .:? "inputFileBytes")+ <*> (o .:? "badRecords"))++instance ToJSON JobStatistics3 where+ toJSON JobStatistics3'{..}+ = object+ (catMaybes+ [("inputFiles" .=) <$> _jsInputFiles,+ ("outputRows" .=) <$> _jsOutputRows,+ ("outputBytes" .=) <$> _jsOutputBytes,+ ("inputFileBytes" .=) <$> _jsInputFileBytes,+ ("badRecords" .=) <$> _jsBadRecords])++--+-- /See:/ 'queryResponse' smart constructor.+data QueryResponse = QueryResponse'+ { _qJobReference :: !(Maybe JobReference)+ , _qKind :: !Text+ , _qSchema :: !(Maybe TableSchema)+ , _qTotalBytesProcessed :: !(Maybe (Textual Int64))+ , _qRows :: !(Maybe [TableRow])+ , _qPageToken :: !(Maybe Text)+ , _qNumDmlAffectedRows :: !(Maybe (Textual Int64))+ , _qTotalRows :: !(Maybe (Textual Word64))+ , _qErrors :: !(Maybe [ErrorProto])+ , _qJobComplete :: !(Maybe Bool)+ , _qCacheHit :: !(Maybe Bool)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'QueryResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'qJobReference'+--+-- * 'qKind'+--+-- * 'qSchema'+--+-- * 'qTotalBytesProcessed'+--+-- * 'qRows'+--+-- * 'qPageToken'+--+-- * 'qNumDmlAffectedRows'+--+-- * 'qTotalRows'+--+-- * 'qErrors'+--+-- * 'qJobComplete'+--+-- * 'qCacheHit'+queryResponse+ :: QueryResponse+queryResponse =+ QueryResponse'+ { _qJobReference = Nothing+ , _qKind = "bigquery#queryResponse"+ , _qSchema = Nothing+ , _qTotalBytesProcessed = Nothing+ , _qRows = Nothing+ , _qPageToken = Nothing+ , _qNumDmlAffectedRows = Nothing+ , _qTotalRows = Nothing+ , _qErrors = Nothing+ , _qJobComplete = Nothing+ , _qCacheHit = Nothing+ }++-- | Reference to the Job that was created to run the query. This field will+-- be present even if the original request timed out, in which case+-- GetQueryResults can be used to read the results once the query has+-- completed. Since this API only returns the first page of results,+-- subsequent pages can be fetched via the same mechanism+-- (GetQueryResults).+qJobReference :: Lens' QueryResponse (Maybe JobReference)+qJobReference+ = lens _qJobReference+ (\ s a -> s{_qJobReference = a})++-- | The resource type.+qKind :: Lens' QueryResponse Text+qKind = lens _qKind (\ s a -> s{_qKind = a})++-- | The schema of the results. Present only when the query completes+-- successfully.+qSchema :: Lens' QueryResponse (Maybe TableSchema)+qSchema = lens _qSchema (\ s a -> s{_qSchema = a})++-- | The total number of bytes processed for this query. If this query was a+-- dry run, this is the number of bytes that would be processed if the+-- query were run.+qTotalBytesProcessed :: Lens' QueryResponse (Maybe Int64)+qTotalBytesProcessed+ = lens _qTotalBytesProcessed+ (\ s a -> s{_qTotalBytesProcessed = a})+ . mapping _Coerce++-- | An object with as many results as can be contained within the maximum+-- permitted reply size. To get any additional rows, you can call+-- GetQueryResults and specify the jobReference returned above.+qRows :: Lens' QueryResponse [TableRow]+qRows+ = lens _qRows (\ s a -> s{_qRows = a}) . _Default .+ _Coerce++-- | A token used for paging results.+qPageToken :: Lens' QueryResponse (Maybe Text)+qPageToken+ = lens _qPageToken (\ s a -> s{_qPageToken = a})++-- | [Output-only] The number of rows affected by a DML statement. Present+-- only for DML statements INSERT, UPDATE or DELETE.+qNumDmlAffectedRows :: Lens' QueryResponse (Maybe Int64)+qNumDmlAffectedRows+ = lens _qNumDmlAffectedRows+ (\ s a -> s{_qNumDmlAffectedRows = a})+ . mapping _Coerce++-- | The total number of rows in the complete query result set, which can be+-- more than the number of rows in this single page of results.+qTotalRows :: Lens' QueryResponse (Maybe Word64)+qTotalRows+ = lens _qTotalRows (\ s a -> s{_qTotalRows = a}) .+ mapping _Coerce++-- | [Output-only] The first errors or warnings encountered during the+-- running of the job. The final message includes the number of errors that+-- caused the process to stop. Errors here do not necessarily mean that the+-- job has completed or was unsuccessful.+qErrors :: Lens' QueryResponse [ErrorProto]+qErrors+ = lens _qErrors (\ s a -> s{_qErrors = a}) . _Default+ . _Coerce++-- | Whether the query has completed or not. If rows or totalRows are+-- present, this will always be true. If this is false, totalRows will not+-- be available.+qJobComplete :: Lens' QueryResponse (Maybe Bool)+qJobComplete+ = lens _qJobComplete (\ s a -> s{_qJobComplete = a})++-- | Whether the query result was fetched from the query cache.+qCacheHit :: Lens' QueryResponse (Maybe Bool)+qCacheHit+ = lens _qCacheHit (\ s a -> s{_qCacheHit = a})++instance FromJSON QueryResponse where+ parseJSON+ = withObject "QueryResponse"+ (\ o ->+ QueryResponse' <$>+ (o .:? "jobReference") <*>+ (o .:? "kind" .!= "bigquery#queryResponse")+ <*> (o .:? "schema")+ <*> (o .:? "totalBytesProcessed")+ <*> (o .:? "rows" .!= mempty)+ <*> (o .:? "pageToken")+ <*> (o .:? "numDmlAffectedRows")+ <*> (o .:? "totalRows")+ <*> (o .:? "errors" .!= mempty)+ <*> (o .:? "jobComplete")+ <*> (o .:? "cacheHit"))++instance ToJSON QueryResponse where+ toJSON QueryResponse'{..}+ = object+ (catMaybes+ [("jobReference" .=) <$> _qJobReference,+ Just ("kind" .= _qKind), ("schema" .=) <$> _qSchema,+ ("totalBytesProcessed" .=) <$> _qTotalBytesProcessed,+ ("rows" .=) <$> _qRows,+ ("pageToken" .=) <$> _qPageToken,+ ("numDmlAffectedRows" .=) <$> _qNumDmlAffectedRows,+ ("totalRows" .=) <$> _qTotalRows,+ ("errors" .=) <$> _qErrors,+ ("jobComplete" .=) <$> _qJobComplete,+ ("cacheHit" .=) <$> _qCacheHit])++-- | The labels associated with this dataset. You can use these to organize+-- and group your datasets.+--+-- /See:/ 'dataSetListDataSetsItemLabels' smart constructor.+newtype DataSetListDataSetsItemLabels = DataSetListDataSetsItemLabels'+ { _dsldsilAddtional :: HashMap Text Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DataSetListDataSetsItemLabels' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dsldsilAddtional'+dataSetListDataSetsItemLabels+ :: HashMap Text Text -- ^ 'dsldsilAddtional'+ -> DataSetListDataSetsItemLabels+dataSetListDataSetsItemLabels pDsldsilAddtional_ =+ DataSetListDataSetsItemLabels'+ { _dsldsilAddtional = _Coerce # pDsldsilAddtional_+ }++dsldsilAddtional :: Lens' DataSetListDataSetsItemLabels (HashMap Text Text)+dsldsilAddtional+ = lens _dsldsilAddtional+ (\ s a -> s{_dsldsilAddtional = a})+ . _Coerce++instance FromJSON DataSetListDataSetsItemLabels where+ parseJSON+ = withObject "DataSetListDataSetsItemLabels"+ (\ o ->+ DataSetListDataSetsItemLabels' <$>+ (parseJSONObject o))++instance ToJSON DataSetListDataSetsItemLabels where+ toJSON = toJSON . _dsldsilAddtional++--+-- /See:/ 'trainingRun' smart constructor.+data TrainingRun = TrainingRun'+ { _trState :: !(Maybe Text)+ , _trStartTime :: !(Maybe DateTime')+ , _trIterationResults :: !(Maybe [IterationResult])+ , _trTrainingOptions :: !(Maybe TrainingRunTrainingOptions)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TrainingRun' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'trState'+--+-- * 'trStartTime'+--+-- * 'trIterationResults'+--+-- * 'trTrainingOptions'+trainingRun+ :: TrainingRun+trainingRun =+ TrainingRun'+ { _trState = Nothing+ , _trStartTime = Nothing+ , _trIterationResults = Nothing+ , _trTrainingOptions = Nothing+ }++-- | [Output-only, Beta] Different state applicable for a training run. IN+-- PROGRESS: Training run is in progress. FAILED: Training run ended due to+-- a non-retryable failure. SUCCEEDED: Training run successfully completed.+-- CANCELLED: Training run cancelled by the user.+trState :: Lens' TrainingRun (Maybe Text)+trState = lens _trState (\ s a -> s{_trState = a})++-- | [Output-only, Beta] Training run start time in milliseconds since the+-- epoch.+trStartTime :: Lens' TrainingRun (Maybe UTCTime)+trStartTime+ = lens _trStartTime (\ s a -> s{_trStartTime = a}) .+ mapping _DateTime++-- | [Output-only, Beta] List of each iteration results.+trIterationResults :: Lens' TrainingRun [IterationResult]+trIterationResults+ = lens _trIterationResults+ (\ s a -> s{_trIterationResults = a})+ . _Default+ . _Coerce++-- | [Output-only, Beta] Training options used by this training run. These+-- options are mutable for subsequent training runs. Default values are+-- explicitly stored for options not specified in the input query of the+-- first training run. For subsequent training runs, any option not+-- explicitly specified in the input query will be copied from the previous+-- training run.+trTrainingOptions :: Lens' TrainingRun (Maybe TrainingRunTrainingOptions)+trTrainingOptions+ = lens _trTrainingOptions+ (\ s a -> s{_trTrainingOptions = a})++instance FromJSON TrainingRun where+ parseJSON+ = withObject "TrainingRun"+ (\ o ->+ TrainingRun' <$>+ (o .:? "state") <*> (o .:? "startTime") <*>+ (o .:? "iterationResults" .!= mempty)+ <*> (o .:? "trainingOptions"))++instance ToJSON TrainingRun where+ toJSON TrainingRun'{..}+ = object+ (catMaybes+ [("state" .=) <$> _trState,+ ("startTime" .=) <$> _trStartTime,+ ("iterationResults" .=) <$> _trIterationResults,+ ("trainingOptions" .=) <$> _trTrainingOptions])++-- | Additional details for a view.+--+-- /See:/ 'tableListTablesItemView' smart constructor.+newtype TableListTablesItemView = TableListTablesItemView'+ { _tltivUseLegacySQL :: Maybe Bool+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TableListTablesItemView' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tltivUseLegacySQL'+tableListTablesItemView+ :: TableListTablesItemView+tableListTablesItemView =+ TableListTablesItemView'+ { _tltivUseLegacySQL = Nothing+ }++-- | True if view is defined in legacy SQL dialect, false if in standard SQL.+tltivUseLegacySQL :: Lens' TableListTablesItemView (Maybe Bool)+tltivUseLegacySQL+ = lens _tltivUseLegacySQL+ (\ s a -> s{_tltivUseLegacySQL = a})++instance FromJSON TableListTablesItemView where+ parseJSON+ = withObject "TableListTablesItemView"+ (\ o ->+ TableListTablesItemView' <$> (o .:? "useLegacySql"))++instance ToJSON TableListTablesItemView where+ toJSON TableListTablesItemView'{..}+ = object+ (catMaybes+ [("useLegacySql" .=) <$> _tltivUseLegacySQL])++-- | The labels associated with this table. You can use these to organize and+-- group your tables. -- -- /See:/ 'tableListTablesItemLabels' smart constructor. newtype TableListTablesItemLabels = TableListTablesItemLabels'
gen/Network/Google/BigQuery/Types/Sum.hs view
@@ -16,7 +16,7 @@ -- module Network.Google.BigQuery.Types.Sum where -import Network.Google.Prelude+import Network.Google.Prelude hiding (Bytes) -- | Restrict information returned to a set of selected fields data JobsListProjection
gen/Network/Google/Resource/BigQuery/Jobs/Cancel.hs view
@@ -36,6 +36,7 @@ -- * Request Lenses , jcJobId+ , jcLocation , jcProjectId ) where @@ -52,8 +53,9 @@ "jobs" :> Capture "jobId" Text :> "cancel" :>- QueryParam "alt" AltJSON :>- Post '[JSON] JobCancelResponse+ QueryParam "location" Text :>+ QueryParam "alt" AltJSON :>+ Post '[JSON] JobCancelResponse -- | Requests that a job be cancelled. This call will return immediately, and -- the client will need to poll for the job status to see if the cancel@@ -62,6 +64,7 @@ -- /See:/ 'jobsCancel' smart constructor. data JobsCancel = JobsCancel' { _jcJobId :: !Text+ , _jcLocation :: !(Maybe Text) , _jcProjectId :: !Text } deriving (Eq,Show,Data,Typeable,Generic) @@ -71,6 +74,8 @@ -- -- * 'jcJobId' --+-- * 'jcLocation'+-- -- * 'jcProjectId' jobsCancel :: Text -- ^ 'jcJobId'@@ -79,6 +84,7 @@ jobsCancel pJcJobId_ pJcProjectId_ = JobsCancel' { _jcJobId = pJcJobId_+ , _jcLocation = Nothing , _jcProjectId = pJcProjectId_ } @@ -86,6 +92,13 @@ jcJobId :: Lens' JobsCancel Text jcJobId = lens _jcJobId (\ s a -> s{_jcJobId = a}) +-- | The geographic location of the job. Required except for US and EU. See+-- details at+-- https:\/\/cloud.google.com\/bigquery\/docs\/locations#specifying_your_location.+jcLocation :: Lens' JobsCancel (Maybe Text)+jcLocation+ = lens _jcLocation (\ s a -> s{_jcLocation = a})+ -- | [Required] Project ID of the job to cancel jcProjectId :: Lens' JobsCancel Text jcProjectId@@ -97,7 +110,7 @@ '["https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform"] requestClient JobsCancel'{..}- = go _jcProjectId _jcJobId (Just AltJSON)+ = go _jcProjectId _jcJobId _jcLocation (Just AltJSON) bigQueryService where go = buildClient (Proxy :: Proxy JobsCancelResource)
gen/Network/Google/Resource/BigQuery/Jobs/Get.hs view
@@ -36,6 +36,7 @@ -- * Request Lenses , jgJobId+ , jgLocation , jgProjectId ) where @@ -51,7 +52,8 @@ Capture "projectId" Text :> "jobs" :> Capture "jobId" Text :>- QueryParam "alt" AltJSON :> Get '[JSON] Job+ QueryParam "location" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Job -- | Returns information about a specific job. Job information is available -- for a six month period after creation. Requires that you\'re the person@@ -60,6 +62,7 @@ -- /See:/ 'jobsGet' smart constructor. data JobsGet = JobsGet' { _jgJobId :: !Text+ , _jgLocation :: !(Maybe Text) , _jgProjectId :: !Text } deriving (Eq,Show,Data,Typeable,Generic) @@ -69,6 +72,8 @@ -- -- * 'jgJobId' --+-- * 'jgLocation'+-- -- * 'jgProjectId' jobsGet :: Text -- ^ 'jgJobId'@@ -77,6 +82,7 @@ jobsGet pJgJobId_ pJgProjectId_ = JobsGet' { _jgJobId = pJgJobId_+ , _jgLocation = Nothing , _jgProjectId = pJgProjectId_ } @@ -84,6 +90,13 @@ jgJobId :: Lens' JobsGet Text jgJobId = lens _jgJobId (\ s a -> s{_jgJobId = a}) +-- | The geographic location of the job. Required except for US and EU. See+-- details at+-- https:\/\/cloud.google.com\/bigquery\/docs\/locations#specifying_your_location.+jgLocation :: Lens' JobsGet (Maybe Text)+jgLocation+ = lens _jgLocation (\ s a -> s{_jgLocation = a})+ -- | [Required] Project ID of the requested job jgProjectId :: Lens' JobsGet Text jgProjectId@@ -96,7 +109,7 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only"] requestClient JobsGet'{..}- = go _jgProjectId _jgJobId (Just AltJSON)+ = go _jgProjectId _jgJobId _jgLocation (Just AltJSON) bigQueryService where go = buildClient (Proxy :: Proxy JobsGetResource) mempty
gen/Network/Google/Resource/BigQuery/Jobs/GetQueryResults.hs view
@@ -34,6 +34,7 @@ -- * Request Lenses , jgqrJobId+ , jgqrLocation , jgqrTimeoutMs , jgqrPageToken , jgqrProjectId@@ -53,18 +54,20 @@ Capture "projectId" Text :> "queries" :> Capture "jobId" Text :>- QueryParam "timeoutMs" (Textual Word32) :>- QueryParam "pageToken" Text :>- QueryParam "startIndex" (Textual Word64) :>- QueryParam "maxResults" (Textual Word32) :>- QueryParam "alt" AltJSON :>- Get '[JSON] GetQueryResultsResponse+ QueryParam "location" Text :>+ QueryParam "timeoutMs" (Textual Word32) :>+ QueryParam "pageToken" Text :>+ QueryParam "startIndex" (Textual Word64) :>+ QueryParam "maxResults" (Textual Word32) :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] GetQueryResultsResponse -- | Retrieves the results of a query job. -- -- /See:/ 'jobsGetQueryResults' smart constructor. data JobsGetQueryResults = JobsGetQueryResults' { _jgqrJobId :: !Text+ , _jgqrLocation :: !(Maybe Text) , _jgqrTimeoutMs :: !(Maybe (Textual Word32)) , _jgqrPageToken :: !(Maybe Text) , _jgqrProjectId :: !Text@@ -78,6 +81,8 @@ -- -- * 'jgqrJobId' --+-- * 'jgqrLocation'+-- -- * 'jgqrTimeoutMs' -- -- * 'jgqrPageToken'@@ -94,6 +99,7 @@ jobsGetQueryResults pJgqrJobId_ pJgqrProjectId_ = JobsGetQueryResults' { _jgqrJobId = pJgqrJobId_+ , _jgqrLocation = Nothing , _jgqrTimeoutMs = Nothing , _jgqrPageToken = Nothing , _jgqrProjectId = pJgqrProjectId_@@ -106,6 +112,13 @@ jgqrJobId = lens _jgqrJobId (\ s a -> s{_jgqrJobId = a}) +-- | The geographic location where the job should run. Required except for US+-- and EU. See details at+-- https:\/\/cloud.google.com\/bigquery\/docs\/locations#specifying_your_location.+jgqrLocation :: Lens' JobsGetQueryResults (Maybe Text)+jgqrLocation+ = lens _jgqrLocation (\ s a -> s{_jgqrLocation = a})+ -- | How long to wait for the query to complete, in milliseconds, before -- returning. Default is 10 seconds. If the timeout passes before the job -- completes, the \'jobComplete\' field in the response will be false@@ -149,7 +162,8 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only"] requestClient JobsGetQueryResults'{..}- = go _jgqrProjectId _jgqrJobId _jgqrTimeoutMs+ = go _jgqrProjectId _jgqrJobId _jgqrLocation+ _jgqrTimeoutMs _jgqrPageToken _jgqrStartIndex _jgqrMaxResults
gen/Network/Google/Resource/BigQuery/Jobs/List.hs view
@@ -37,6 +37,8 @@ , JobsList -- * Request Lenses+ , jlMaxCreationTime+ , jlMinCreationTime , jlStateFilter , jlProjection , jlPageToken@@ -56,12 +58,14 @@ "projects" :> Capture "projectId" Text :> "jobs" :>- QueryParams "stateFilter" JobsListStateFilter :>- QueryParam "projection" JobsListProjection :>- QueryParam "pageToken" Text :>- QueryParam "allUsers" Bool :>- QueryParam "maxResults" (Textual Word32) :>- QueryParam "alt" AltJSON :> Get '[JSON] JobList+ QueryParam "maxCreationTime" (Textual Word64) :>+ QueryParam "minCreationTime" (Textual Word64) :>+ QueryParams "stateFilter" JobsListStateFilter :>+ QueryParam "projection" JobsListProjection :>+ QueryParam "pageToken" Text :>+ QueryParam "allUsers" Bool :>+ QueryParam "maxResults" (Textual Word32) :>+ QueryParam "alt" AltJSON :> Get '[JSON] JobList -- | Lists all jobs that you started in the specified project. Job -- information is available for a six month period after creation. The job@@ -71,18 +75,24 @@ -- -- /See:/ 'jobsList' smart constructor. data JobsList = JobsList'- { _jlStateFilter :: !(Maybe [JobsListStateFilter])- , _jlProjection :: !(Maybe JobsListProjection)- , _jlPageToken :: !(Maybe Text)- , _jlProjectId :: !Text- , _jlAllUsers :: !(Maybe Bool)- , _jlMaxResults :: !(Maybe (Textual Word32))+ { _jlMaxCreationTime :: !(Maybe (Textual Word64))+ , _jlMinCreationTime :: !(Maybe (Textual Word64))+ , _jlStateFilter :: !(Maybe [JobsListStateFilter])+ , _jlProjection :: !(Maybe JobsListProjection)+ , _jlPageToken :: !(Maybe Text)+ , _jlProjectId :: !Text+ , _jlAllUsers :: !(Maybe Bool)+ , _jlMaxResults :: !(Maybe (Textual Word32)) } deriving (Eq,Show,Data,Typeable,Generic) -- | Creates a value of 'JobsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: --+-- * 'jlMaxCreationTime'+--+-- * 'jlMinCreationTime'+-- -- * 'jlStateFilter' -- -- * 'jlProjection'@@ -99,7 +109,9 @@ -> JobsList jobsList pJlProjectId_ = JobsList'- { _jlStateFilter = Nothing+ { _jlMaxCreationTime = Nothing+ , _jlMinCreationTime = Nothing+ , _jlStateFilter = Nothing , _jlProjection = Nothing , _jlPageToken = Nothing , _jlProjectId = pJlProjectId_@@ -107,6 +119,22 @@ , _jlMaxResults = Nothing } +-- | Max value for job creation time, in milliseconds since the POSIX epoch.+-- If set, only jobs created before or at this timestamp are returned+jlMaxCreationTime :: Lens' JobsList (Maybe Word64)+jlMaxCreationTime+ = lens _jlMaxCreationTime+ (\ s a -> s{_jlMaxCreationTime = a})+ . mapping _Coerce++-- | Min value for job creation time, in milliseconds since the POSIX epoch.+-- If set, only jobs created after or at this timestamp are returned+jlMinCreationTime :: Lens' JobsList (Maybe Word64)+jlMinCreationTime+ = lens _jlMinCreationTime+ (\ s a -> s{_jlMinCreationTime = a})+ . mapping _Coerce+ -- | Filter for job state jlStateFilter :: Lens' JobsList [JobsListStateFilter] jlStateFilter@@ -149,7 +177,9 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only"] requestClient JobsList'{..}- = go _jlProjectId (_jlStateFilter ^. _Default)+ = go _jlProjectId _jlMaxCreationTime+ _jlMinCreationTime+ (_jlStateFilter ^. _Default) _jlProjection _jlPageToken _jlAllUsers
+ gen/Network/Google/Resource/BigQuery/Projects/GetServiceAccount.hs view
@@ -0,0 +1,94 @@+{-# 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.BigQuery.Projects.GetServiceAccount+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the email address of the service account for your project used+-- for interactions with Google Cloud KMS.+--+-- /See:/ <https://cloud.google.com/bigquery/ BigQuery API Reference> for @bigquery.projects.getServiceAccount@.+module Network.Google.Resource.BigQuery.Projects.GetServiceAccount+ (+ -- * REST Resource+ ProjectsGetServiceAccountResource++ -- * Creating a Request+ , projectsGetServiceAccount+ , ProjectsGetServiceAccount++ -- * Request Lenses+ , pgsaProjectId+ ) where++import Network.Google.BigQuery.Types+import Network.Google.Prelude++-- | A resource alias for @bigquery.projects.getServiceAccount@ method which the+-- 'ProjectsGetServiceAccount' request conforms to.+type ProjectsGetServiceAccountResource =+ "bigquery" :>+ "v2" :>+ "projects" :>+ Capture "projectId" Text :>+ "serviceAccount" :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] GetServiceAccountResponse++-- | Returns the email address of the service account for your project used+-- for interactions with Google Cloud KMS.+--+-- /See:/ 'projectsGetServiceAccount' smart constructor.+newtype ProjectsGetServiceAccount = ProjectsGetServiceAccount'+ { _pgsaProjectId :: Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProjectsGetServiceAccount' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pgsaProjectId'+projectsGetServiceAccount+ :: Text -- ^ 'pgsaProjectId'+ -> ProjectsGetServiceAccount+projectsGetServiceAccount pPgsaProjectId_ =+ ProjectsGetServiceAccount'+ { _pgsaProjectId = pPgsaProjectId_+ }++-- | Project ID for which the service account is requested.+pgsaProjectId :: Lens' ProjectsGetServiceAccount Text+pgsaProjectId+ = lens _pgsaProjectId+ (\ s a -> s{_pgsaProjectId = a})++instance GoogleRequest ProjectsGetServiceAccount+ where+ type Rs ProjectsGetServiceAccount =+ GetServiceAccountResponse+ type Scopes ProjectsGetServiceAccount =+ '["https://www.googleapis.com/auth/bigquery",+ "https://www.googleapis.com/auth/cloud-platform",+ "https://www.googleapis.com/auth/cloud-platform.read-only"]+ requestClient ProjectsGetServiceAccount'{..}+ = go _pgsaProjectId (Just AltJSON) bigQueryService+ where go+ = buildClient+ (Proxy :: Proxy ProjectsGetServiceAccountResource)+ mempty
gen/Network/Google/Resource/BigQuery/TableData/List.hs view
@@ -37,6 +37,7 @@ , tDataSetId , tPageToken , tProjectId+ , tSelectedFields , tTableId , tStartIndex , tMaxResults@@ -58,22 +59,24 @@ Capture "tableId" Text :> "data" :> QueryParam "pageToken" Text :>- QueryParam "startIndex" (Textual Word64) :>- QueryParam "maxResults" (Textual Word32) :>- QueryParam "alt" AltJSON :>- Get '[JSON] TableDataList+ QueryParam "selectedFields" Text :>+ QueryParam "startIndex" (Textual Word64) :>+ QueryParam "maxResults" (Textual Word32) :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] TableDataList -- | Retrieves table data from a specified set of rows. Requires the READER -- dataset role. -- -- /See:/ 'tableDataList'' smart constructor. data TableDataList' = TableDataList''- { _tDataSetId :: !Text- , _tPageToken :: !(Maybe Text)- , _tProjectId :: !Text- , _tTableId :: !Text- , _tStartIndex :: !(Maybe (Textual Word64))- , _tMaxResults :: !(Maybe (Textual Word32))+ { _tDataSetId :: !Text+ , _tPageToken :: !(Maybe Text)+ , _tProjectId :: !Text+ , _tSelectedFields :: !(Maybe Text)+ , _tTableId :: !Text+ , _tStartIndex :: !(Maybe (Textual Word64))+ , _tMaxResults :: !(Maybe (Textual Word32)) } deriving (Eq,Show,Data,Typeable,Generic) -- | Creates a value of 'TableDataList'' with the minimum fields required to make a request.@@ -86,6 +89,8 @@ -- -- * 'tProjectId' --+-- * 'tSelectedFields'+-- -- * 'tTableId' -- -- * 'tStartIndex'@@ -101,6 +106,7 @@ { _tDataSetId = pTDataSetId_ , _tPageToken = Nothing , _tProjectId = pTProjectId_+ , _tSelectedFields = Nothing , _tTableId = pTTableId_ , _tStartIndex = Nothing , _tMaxResults = Nothing@@ -123,6 +129,13 @@ tProjectId = lens _tProjectId (\ s a -> s{_tProjectId = a}) +-- | List of fields to return (comma-separated). If unspecified, all fields+-- are returned+tSelectedFields :: Lens' TableDataList' (Maybe Text)+tSelectedFields+ = lens _tSelectedFields+ (\ s a -> s{_tSelectedFields = a})+ -- | Table ID of the table to read tTableId :: Lens' TableDataList' Text tTableId = lens _tTableId (\ s a -> s{_tTableId = a})@@ -147,6 +160,7 @@ "https://www.googleapis.com/auth/cloud-platform.read-only"] requestClient TableDataList''{..} = go _tProjectId _tDataSetId _tTableId _tPageToken+ _tSelectedFields _tStartIndex _tMaxResults (Just AltJSON)
gen/Network/Google/Resource/BigQuery/Tables/Get.hs view
@@ -37,6 +37,7 @@ -- * Request Lenses , tgDataSetId , tgProjectId+ , tgSelectedFields , tgTableId ) where @@ -54,7 +55,8 @@ Capture "datasetId" Text :> "tables" :> Capture "tableId" Text :>- QueryParam "alt" AltJSON :> Get '[JSON] Table+ QueryParam "selectedFields" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Table -- | Gets the specified table resource by table ID. This method does not -- return the data in the table, it only returns the table resource, which@@ -62,9 +64,10 @@ -- -- /See:/ 'tablesGet' smart constructor. data TablesGet = TablesGet'- { _tgDataSetId :: !Text- , _tgProjectId :: !Text- , _tgTableId :: !Text+ { _tgDataSetId :: !Text+ , _tgProjectId :: !Text+ , _tgSelectedFields :: !(Maybe Text)+ , _tgTableId :: !Text } deriving (Eq,Show,Data,Typeable,Generic) -- | Creates a value of 'TablesGet' with the minimum fields required to make a request.@@ -75,6 +78,8 @@ -- -- * 'tgProjectId' --+-- * 'tgSelectedFields'+-- -- * 'tgTableId' tablesGet :: Text -- ^ 'tgDataSetId'@@ -85,6 +90,7 @@ TablesGet' { _tgDataSetId = pTgDataSetId_ , _tgProjectId = pTgProjectId_+ , _tgSelectedFields = Nothing , _tgTableId = pTgTableId_ } @@ -98,6 +104,13 @@ tgProjectId = lens _tgProjectId (\ s a -> s{_tgProjectId = a}) +-- | List of fields to return (comma-separated). If unspecified, all fields+-- are returned+tgSelectedFields :: Lens' TablesGet (Maybe Text)+tgSelectedFields+ = lens _tgSelectedFields+ (\ s a -> s{_tgSelectedFields = a})+ -- | Table ID of the requested table tgTableId :: Lens' TablesGet Text tgTableId@@ -111,6 +124,7 @@ "https://www.googleapis.com/auth/cloud-platform.read-only"] requestClient TablesGet'{..} = go _tgProjectId _tgDataSetId _tgTableId+ _tgSelectedFields (Just AltJSON) bigQueryService where go
gogol-bigquery.cabal view
@@ -1,5 +1,5 @@ name: gogol-bigquery-version: 0.3.0+version: 0.4.0 synopsis: Google BigQuery SDK. homepage: https://github.com/brendanhay/gogol bug-reports: https://github.com/brendanhay/gogol/issues@@ -47,6 +47,7 @@ , Network.Google.Resource.BigQuery.Jobs.Insert , Network.Google.Resource.BigQuery.Jobs.List , Network.Google.Resource.BigQuery.Jobs.Query+ , Network.Google.Resource.BigQuery.Projects.GetServiceAccount , Network.Google.Resource.BigQuery.Projects.List , Network.Google.Resource.BigQuery.TableData.InsertAll , Network.Google.Resource.BigQuery.TableData.List@@ -62,5 +63,5 @@ , Network.Google.BigQuery.Types.Sum build-depends:- gogol-core == 0.3.0.*+ gogol-core == 0.4.0.* , base >= 4.7 && < 5