{-# LANGUAGE DisambiguateRecordFields #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
-- Derived from AWS service descriptions, licensed under Apache 2.0.
-- |
-- Module : Amazonka.TimeStreamQuery.Types
-- Copyright : (c) 2013-2023 Brendan Hay
-- License : Mozilla Public License, v. 2.0.
-- Maintainer : Brendan Hay
-- Stability : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.TimeStreamQuery.Types
( -- * Service Configuration
defaultService,
-- * Errors
_AccessDeniedException,
_ConflictException,
_InternalServerException,
_InvalidEndpointException,
_QueryExecutionException,
_ResourceNotFoundException,
_ServiceQuotaExceededException,
_ThrottlingException,
_ValidationException,
-- * DimensionValueType
DimensionValueType (..),
-- * MeasureValueType
MeasureValueType (..),
-- * S3EncryptionOption
S3EncryptionOption (..),
-- * ScalarMeasureValueType
ScalarMeasureValueType (..),
-- * ScalarType
ScalarType (..),
-- * ScheduledQueryRunStatus
ScheduledQueryRunStatus (..),
-- * ScheduledQueryState
ScheduledQueryState (..),
-- * ColumnInfo
ColumnInfo (..),
newColumnInfo,
columnInfo_name,
columnInfo_type,
-- * Datum
Datum (..),
newDatum,
datum_arrayValue,
datum_nullValue,
datum_rowValue,
datum_scalarValue,
datum_timeSeriesValue,
-- * DimensionMapping
DimensionMapping (..),
newDimensionMapping,
dimensionMapping_name,
dimensionMapping_dimensionValueType,
-- * Endpoint
Endpoint (..),
newEndpoint,
endpoint_address,
endpoint_cachePeriodInMinutes,
-- * ErrorReportConfiguration
ErrorReportConfiguration (..),
newErrorReportConfiguration,
errorReportConfiguration_s3Configuration,
-- * ErrorReportLocation
ErrorReportLocation (..),
newErrorReportLocation,
errorReportLocation_s3ReportLocation,
-- * ExecutionStats
ExecutionStats (..),
newExecutionStats,
executionStats_bytesMetered,
executionStats_dataWrites,
executionStats_executionTimeInMillis,
executionStats_queryResultRows,
executionStats_recordsIngested,
-- * MixedMeasureMapping
MixedMeasureMapping (..),
newMixedMeasureMapping,
mixedMeasureMapping_measureName,
mixedMeasureMapping_multiMeasureAttributeMappings,
mixedMeasureMapping_sourceColumn,
mixedMeasureMapping_targetMeasureName,
mixedMeasureMapping_measureValueType,
-- * MultiMeasureAttributeMapping
MultiMeasureAttributeMapping (..),
newMultiMeasureAttributeMapping,
multiMeasureAttributeMapping_targetMultiMeasureAttributeName,
multiMeasureAttributeMapping_sourceColumn,
multiMeasureAttributeMapping_measureValueType,
-- * MultiMeasureMappings
MultiMeasureMappings (..),
newMultiMeasureMappings,
multiMeasureMappings_targetMultiMeasureName,
multiMeasureMappings_multiMeasureAttributeMappings,
-- * NotificationConfiguration
NotificationConfiguration (..),
newNotificationConfiguration,
notificationConfiguration_snsConfiguration,
-- * ParameterMapping
ParameterMapping (..),
newParameterMapping,
parameterMapping_name,
parameterMapping_type,
-- * QueryStatus
QueryStatus (..),
newQueryStatus,
queryStatus_cumulativeBytesMetered,
queryStatus_cumulativeBytesScanned,
queryStatus_progressPercentage,
-- * Row
Row (..),
newRow,
row_data,
-- * S3Configuration
S3Configuration (..),
newS3Configuration,
s3Configuration_encryptionOption,
s3Configuration_objectKeyPrefix,
s3Configuration_bucketName,
-- * S3ReportLocation
S3ReportLocation (..),
newS3ReportLocation,
s3ReportLocation_bucketName,
s3ReportLocation_objectKey,
-- * ScheduleConfiguration
ScheduleConfiguration (..),
newScheduleConfiguration,
scheduleConfiguration_scheduleExpression,
-- * ScheduledQuery
ScheduledQuery (..),
newScheduledQuery,
scheduledQuery_creationTime,
scheduledQuery_errorReportConfiguration,
scheduledQuery_lastRunStatus,
scheduledQuery_nextInvocationTime,
scheduledQuery_previousInvocationTime,
scheduledQuery_targetDestination,
scheduledQuery_arn,
scheduledQuery_name,
scheduledQuery_state,
-- * ScheduledQueryDescription
ScheduledQueryDescription (..),
newScheduledQueryDescription,
scheduledQueryDescription_creationTime,
scheduledQueryDescription_errorReportConfiguration,
scheduledQueryDescription_kmsKeyId,
scheduledQueryDescription_lastRunSummary,
scheduledQueryDescription_nextInvocationTime,
scheduledQueryDescription_previousInvocationTime,
scheduledQueryDescription_recentlyFailedRuns,
scheduledQueryDescription_scheduledQueryExecutionRoleArn,
scheduledQueryDescription_targetConfiguration,
scheduledQueryDescription_arn,
scheduledQueryDescription_name,
scheduledQueryDescription_queryString,
scheduledQueryDescription_state,
scheduledQueryDescription_scheduleConfiguration,
scheduledQueryDescription_notificationConfiguration,
-- * ScheduledQueryRunSummary
ScheduledQueryRunSummary (..),
newScheduledQueryRunSummary,
scheduledQueryRunSummary_errorReportLocation,
scheduledQueryRunSummary_executionStats,
scheduledQueryRunSummary_failureReason,
scheduledQueryRunSummary_invocationTime,
scheduledQueryRunSummary_runStatus,
scheduledQueryRunSummary_triggerTime,
-- * SelectColumn
SelectColumn (..),
newSelectColumn,
selectColumn_aliased,
selectColumn_databaseName,
selectColumn_name,
selectColumn_tableName,
selectColumn_type,
-- * SnsConfiguration
SnsConfiguration (..),
newSnsConfiguration,
snsConfiguration_topicArn,
-- * Tag
Tag (..),
newTag,
tag_key,
tag_value,
-- * TargetConfiguration
TargetConfiguration (..),
newTargetConfiguration,
targetConfiguration_timestreamConfiguration,
-- * TargetDestination
TargetDestination (..),
newTargetDestination,
targetDestination_timestreamDestination,
-- * TimeSeriesDataPoint
TimeSeriesDataPoint (..),
newTimeSeriesDataPoint,
timeSeriesDataPoint_time,
timeSeriesDataPoint_value,
-- * TimestreamConfiguration
TimestreamConfiguration (..),
newTimestreamConfiguration,
timestreamConfiguration_measureNameColumn,
timestreamConfiguration_mixedMeasureMappings,
timestreamConfiguration_multiMeasureMappings,
timestreamConfiguration_databaseName,
timestreamConfiguration_tableName,
timestreamConfiguration_timeColumn,
timestreamConfiguration_dimensionMappings,
-- * TimestreamDestination
TimestreamDestination (..),
newTimestreamDestination,
timestreamDestination_databaseName,
timestreamDestination_tableName,
-- * Type
Type (..),
newType,
type_arrayColumnInfo,
type_rowColumnInfo,
type_scalarType,
type_timeSeriesMeasureValueColumnInfo,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Sign.V4 as Sign
import Amazonka.TimeStreamQuery.Types.ColumnInfo
import Amazonka.TimeStreamQuery.Types.Datum
import Amazonka.TimeStreamQuery.Types.DimensionMapping
import Amazonka.TimeStreamQuery.Types.DimensionValueType
import Amazonka.TimeStreamQuery.Types.Endpoint
import Amazonka.TimeStreamQuery.Types.ErrorReportConfiguration
import Amazonka.TimeStreamQuery.Types.ErrorReportLocation
import Amazonka.TimeStreamQuery.Types.ExecutionStats
import Amazonka.TimeStreamQuery.Types.MeasureValueType
import Amazonka.TimeStreamQuery.Types.MixedMeasureMapping
import Amazonka.TimeStreamQuery.Types.MultiMeasureAttributeMapping
import Amazonka.TimeStreamQuery.Types.MultiMeasureMappings
import Amazonka.TimeStreamQuery.Types.NotificationConfiguration
import Amazonka.TimeStreamQuery.Types.ParameterMapping
import Amazonka.TimeStreamQuery.Types.QueryStatus
import Amazonka.TimeStreamQuery.Types.Row
import Amazonka.TimeStreamQuery.Types.S3Configuration
import Amazonka.TimeStreamQuery.Types.S3EncryptionOption
import Amazonka.TimeStreamQuery.Types.S3ReportLocation
import Amazonka.TimeStreamQuery.Types.ScalarMeasureValueType
import Amazonka.TimeStreamQuery.Types.ScalarType
import Amazonka.TimeStreamQuery.Types.ScheduleConfiguration
import Amazonka.TimeStreamQuery.Types.ScheduledQuery
import Amazonka.TimeStreamQuery.Types.ScheduledQueryDescription
import Amazonka.TimeStreamQuery.Types.ScheduledQueryRunStatus
import Amazonka.TimeStreamQuery.Types.ScheduledQueryRunSummary
import Amazonka.TimeStreamQuery.Types.ScheduledQueryState
import Amazonka.TimeStreamQuery.Types.SelectColumn
import Amazonka.TimeStreamQuery.Types.SnsConfiguration
import Amazonka.TimeStreamQuery.Types.Tag
import Amazonka.TimeStreamQuery.Types.TargetConfiguration
import Amazonka.TimeStreamQuery.Types.TargetDestination
import Amazonka.TimeStreamQuery.Types.TimeSeriesDataPoint
import Amazonka.TimeStreamQuery.Types.TimestreamConfiguration
import Amazonka.TimeStreamQuery.Types.TimestreamDestination
import Amazonka.TimeStreamQuery.Types.Type
-- | API version @2018-11-01@ of the Amazon Timestream Query SDK configuration.
defaultService :: Core.Service
defaultService =
Core.Service
{ Core.abbrev = "TimeStreamQuery",
Core.signer = Sign.v4,
Core.endpointPrefix = "query.timestream",
Core.signingName = "timestream",
Core.version = "2018-11-01",
Core.s3AddressingStyle = Core.S3AddressingStyleAuto,
Core.endpoint = Core.defaultEndpoint defaultService,
Core.timeout = Prelude.Just 70,
Core.check = Core.statusSuccess,
Core.error = Core.parseJSONError "TimeStreamQuery",
Core.retry = retry
}
where
retry =
Core.Exponential
{ Core.base = 5.0e-2,
Core.growth = 2,
Core.attempts = 5,
Core.check = check
}
check e
| Lens.has (Core.hasStatus 502) e =
Prelude.Just "bad_gateway"
| Lens.has (Core.hasStatus 504) e =
Prelude.Just "gateway_timeout"
| Lens.has (Core.hasStatus 500) e =
Prelude.Just "general_server_error"
| Lens.has (Core.hasStatus 509) e =
Prelude.Just "limit_exceeded"
| Lens.has
( Core.hasCode "RequestThrottledException"
Prelude.. Core.hasStatus 400
)
e =
Prelude.Just "request_throttled_exception"
| Lens.has (Core.hasStatus 503) e =
Prelude.Just "service_unavailable"
| Lens.has
( Core.hasCode "ThrottledException"
Prelude.. Core.hasStatus 400
)
e =
Prelude.Just "throttled_exception"
| Lens.has
( Core.hasCode "Throttling"
Prelude.. Core.hasStatus 400
)
e =
Prelude.Just "throttling"
| Lens.has
( Core.hasCode "ThrottlingException"
Prelude.. Core.hasStatus 400
)
e =
Prelude.Just "throttling_exception"
| Lens.has
( Core.hasCode
"ProvisionedThroughputExceededException"
Prelude.. Core.hasStatus 400
)
e =
Prelude.Just "throughput_exceeded"
| Lens.has (Core.hasStatus 429) e =
Prelude.Just "too_many_requests"
| Prelude.otherwise = Prelude.Nothing
-- | You are not authorized to perform this action.
_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_AccessDeniedException =
Core._MatchServiceError
defaultService
"AccessDeniedException"
-- | Unable to poll results for a cancelled query.
_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_ConflictException =
Core._MatchServiceError
defaultService
"ConflictException"
-- | Timestream was unable to fully process this request because of an
-- internal server error.
_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_InternalServerException =
Core._MatchServiceError
defaultService
"InternalServerException"
-- | The requested endpoint was not valid.
_InvalidEndpointException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_InvalidEndpointException =
Core._MatchServiceError
defaultService
"InvalidEndpointException"
-- | Timestream was unable to run the query successfully.
_QueryExecutionException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_QueryExecutionException =
Core._MatchServiceError
defaultService
"QueryExecutionException"
-- | The requested resource could not be found.
_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_ResourceNotFoundException =
Core._MatchServiceError
defaultService
"ResourceNotFoundException"
-- | You have exceeded the service quota.
_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_ServiceQuotaExceededException =
Core._MatchServiceError
defaultService
"ServiceQuotaExceededException"
-- | The request was denied due to request throttling.
_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_ThrottlingException =
Core._MatchServiceError
defaultService
"ThrottlingException"
-- | Invalid or malformed request.
_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_ValidationException =
Core._MatchServiceError
defaultService
"ValidationException"