{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.DMS.Types
-- Copyright   : (c) 2013-2021 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.DMS.Types
  ( -- * Service Configuration
    defaultService,

    -- * Errors
    _KMSAccessDeniedFault,
    _KMSDisabledFault,
    _KMSFault,
    _InvalidSubnet,
    _KMSKeyNotAccessibleFault,
    _ReplicationSubnetGroupDoesNotCoverEnoughAZs,
    _S3ResourceNotFoundFault,
    _InvalidResourceStateFault,
    _InvalidCertificateFault,
    _SNSNoAuthorizationFault,
    _ResourceAlreadyExistsFault,
    _InsufficientResourceCapacityFault,
    _S3AccessDeniedFault,
    _SNSInvalidTopicFault,
    _KMSNotFoundFault,
    _KMSThrottlingFault,
    _ResourceQuotaExceededFault,
    _UpgradeDependencyFailureFault,
    _ResourceNotFoundFault,
    _StorageQuotaExceededFault,
    _AccessDeniedFault,
    _SubnetAlreadyInUse,
    _KMSInvalidStateFault,

    -- * AuthMechanismValue
    AuthMechanismValue (..),

    -- * AuthTypeValue
    AuthTypeValue (..),

    -- * CannedAclForObjectsValue
    CannedAclForObjectsValue (..),

    -- * CharLengthSemantics
    CharLengthSemantics (..),

    -- * CompressionTypeValue
    CompressionTypeValue (..),

    -- * DataFormatValue
    DataFormatValue (..),

    -- * DatePartitionDelimiterValue
    DatePartitionDelimiterValue (..),

    -- * DatePartitionSequenceValue
    DatePartitionSequenceValue (..),

    -- * DmsSslModeValue
    DmsSslModeValue (..),

    -- * EncodingTypeValue
    EncodingTypeValue (..),

    -- * EncryptionModeValue
    EncryptionModeValue (..),

    -- * EndpointSettingTypeValue
    EndpointSettingTypeValue (..),

    -- * KafkaSecurityProtocol
    KafkaSecurityProtocol (..),

    -- * MessageFormatValue
    MessageFormatValue (..),

    -- * MigrationTypeValue
    MigrationTypeValue (..),

    -- * NestingLevelValue
    NestingLevelValue (..),

    -- * ParquetVersionValue
    ParquetVersionValue (..),

    -- * PluginNameValue
    PluginNameValue (..),

    -- * RedisAuthTypeValue
    RedisAuthTypeValue (..),

    -- * RefreshSchemasStatusTypeValue
    RefreshSchemasStatusTypeValue (..),

    -- * ReleaseStatusValues
    ReleaseStatusValues (..),

    -- * ReloadOptionValue
    ReloadOptionValue (..),

    -- * ReplicationEndpointTypeValue
    ReplicationEndpointTypeValue (..),

    -- * SafeguardPolicy
    SafeguardPolicy (..),

    -- * SourceType
    SourceType (..),

    -- * SslSecurityProtocolValue
    SslSecurityProtocolValue (..),

    -- * StartReplicationTaskTypeValue
    StartReplicationTaskTypeValue (..),

    -- * TargetDbType
    TargetDbType (..),

    -- * AccountQuota
    AccountQuota (..),
    newAccountQuota,
    accountQuota_max,
    accountQuota_used,
    accountQuota_accountQuotaName,

    -- * AvailabilityZone
    AvailabilityZone (..),
    newAvailabilityZone,
    availabilityZone_name,

    -- * Certificate
    Certificate (..),
    newCertificate,
    certificate_certificateOwner,
    certificate_signingAlgorithm,
    certificate_validFromDate,
    certificate_certificatePem,
    certificate_certificateArn,
    certificate_certificateCreationDate,
    certificate_certificateIdentifier,
    certificate_certificateWallet,
    certificate_keyLength,
    certificate_validToDate,

    -- * Connection
    Connection (..),
    newConnection,
    connection_status,
    connection_replicationInstanceArn,
    connection_endpointIdentifier,
    connection_replicationInstanceIdentifier,
    connection_endpointArn,
    connection_lastFailureMessage,

    -- * DmsTransferSettings
    DmsTransferSettings (..),
    newDmsTransferSettings,
    dmsTransferSettings_serviceAccessRoleArn,
    dmsTransferSettings_bucketName,

    -- * DocDbSettings
    DocDbSettings (..),
    newDocDbSettings,
    docDbSettings_serverName,
    docDbSettings_secretsManagerAccessRoleArn,
    docDbSettings_username,
    docDbSettings_kmsKeyId,
    docDbSettings_password,
    docDbSettings_nestingLevel,
    docDbSettings_databaseName,
    docDbSettings_docsToInvestigate,
    docDbSettings_secretsManagerSecretId,
    docDbSettings_extractDocId,
    docDbSettings_port,

    -- * DynamoDbSettings
    DynamoDbSettings (..),
    newDynamoDbSettings,
    dynamoDbSettings_serviceAccessRoleArn,

    -- * ElasticsearchSettings
    ElasticsearchSettings (..),
    newElasticsearchSettings,
    elasticsearchSettings_fullLoadErrorPercentage,
    elasticsearchSettings_errorRetryDuration,
    elasticsearchSettings_serviceAccessRoleArn,
    elasticsearchSettings_endpointUri,

    -- * Endpoint
    Endpoint (..),
    newEndpoint,
    endpoint_status,
    endpoint_dmsTransferSettings,
    endpoint_mySQLSettings,
    endpoint_serverName,
    endpoint_microsoftSQLServerSettings,
    endpoint_certificateArn,
    endpoint_serviceAccessRoleArn,
    endpoint_docDbSettings,
    endpoint_engineDisplayName,
    endpoint_postgreSQLSettings,
    endpoint_extraConnectionAttributes,
    endpoint_kafkaSettings,
    endpoint_oracleSettings,
    endpoint_endpointType,
    endpoint_redshiftSettings,
    endpoint_elasticsearchSettings,
    endpoint_username,
    endpoint_externalTableDefinition,
    endpoint_engineName,
    endpoint_redisSettings,
    endpoint_neptuneSettings,
    endpoint_iBMDb2Settings,
    endpoint_kmsKeyId,
    endpoint_mongoDbSettings,
    endpoint_sslMode,
    endpoint_sybaseSettings,
    endpoint_databaseName,
    endpoint_s3Settings,
    endpoint_kinesisSettings,
    endpoint_endpointIdentifier,
    endpoint_externalId,
    endpoint_dynamoDbSettings,
    endpoint_endpointArn,
    endpoint_port,

    -- * EndpointSetting
    EndpointSetting (..),
    newEndpointSetting,
    endpointSetting_sensitive,
    endpointSetting_intValueMax,
    endpointSetting_applicability,
    endpointSetting_name,
    endpointSetting_intValueMin,
    endpointSetting_units,
    endpointSetting_defaultValue,
    endpointSetting_type,
    endpointSetting_enumValues,

    -- * Event
    Event (..),
    newEvent,
    event_sourceType,
    event_sourceIdentifier,
    event_date,
    event_eventCategories,
    event_message,

    -- * EventCategoryGroup
    EventCategoryGroup (..),
    newEventCategoryGroup,
    eventCategoryGroup_sourceType,
    eventCategoryGroup_eventCategories,

    -- * EventSubscription
    EventSubscription (..),
    newEventSubscription,
    eventSubscription_status,
    eventSubscription_customerAwsId,
    eventSubscription_custSubscriptionId,
    eventSubscription_snsTopicArn,
    eventSubscription_enabled,
    eventSubscription_sourceType,
    eventSubscription_subscriptionCreationTime,
    eventSubscription_eventCategoriesList,
    eventSubscription_sourceIdsList,

    -- * Filter
    Filter (..),
    newFilter,
    filter_name,
    filter_values,

    -- * IBMDb2Settings
    IBMDb2Settings (..),
    newIBMDb2Settings,
    iBMDb2Settings_serverName,
    iBMDb2Settings_currentLsn,
    iBMDb2Settings_setDataCaptureChanges,
    iBMDb2Settings_secretsManagerAccessRoleArn,
    iBMDb2Settings_username,
    iBMDb2Settings_password,
    iBMDb2Settings_databaseName,
    iBMDb2Settings_secretsManagerSecretId,
    iBMDb2Settings_maxKBytesPerRead,
    iBMDb2Settings_port,

    -- * KafkaSettings
    KafkaSettings (..),
    newKafkaSettings,
    kafkaSettings_sslClientKeyArn,
    kafkaSettings_includeTransactionDetails,
    kafkaSettings_includeTableAlterOperations,
    kafkaSettings_sslClientCertificateArn,
    kafkaSettings_sslCaCertificateArn,
    kafkaSettings_partitionIncludeSchemaTable,
    kafkaSettings_topic,
    kafkaSettings_includeControlDetails,
    kafkaSettings_noHexPrefix,
    kafkaSettings_saslPassword,
    kafkaSettings_sslClientKeyPassword,
    kafkaSettings_includePartitionValue,
    kafkaSettings_messageFormat,
    kafkaSettings_securityProtocol,
    kafkaSettings_saslUsername,
    kafkaSettings_broker,
    kafkaSettings_messageMaxBytes,
    kafkaSettings_includeNullAndEmpty,

    -- * KinesisSettings
    KinesisSettings (..),
    newKinesisSettings,
    kinesisSettings_includeTransactionDetails,
    kinesisSettings_includeTableAlterOperations,
    kinesisSettings_serviceAccessRoleArn,
    kinesisSettings_partitionIncludeSchemaTable,
    kinesisSettings_streamArn,
    kinesisSettings_includeControlDetails,
    kinesisSettings_noHexPrefix,
    kinesisSettings_includePartitionValue,
    kinesisSettings_messageFormat,
    kinesisSettings_includeNullAndEmpty,

    -- * MicrosoftSQLServerSettings
    MicrosoftSQLServerSettings (..),
    newMicrosoftSQLServerSettings,
    microsoftSQLServerSettings_bcpPacketSize,
    microsoftSQLServerSettings_useBcpFullLoad,
    microsoftSQLServerSettings_serverName,
    microsoftSQLServerSettings_querySingleAlwaysOnNode,
    microsoftSQLServerSettings_secretsManagerAccessRoleArn,
    microsoftSQLServerSettings_username,
    microsoftSQLServerSettings_safeguardPolicy,
    microsoftSQLServerSettings_password,
    microsoftSQLServerSettings_databaseName,
    microsoftSQLServerSettings_secretsManagerSecretId,
    microsoftSQLServerSettings_readBackupOnly,
    microsoftSQLServerSettings_useThirdPartyBackupDevice,
    microsoftSQLServerSettings_controlTablesFileGroup,
    microsoftSQLServerSettings_port,

    -- * MongoDbSettings
    MongoDbSettings (..),
    newMongoDbSettings,
    mongoDbSettings_serverName,
    mongoDbSettings_secretsManagerAccessRoleArn,
    mongoDbSettings_authMechanism,
    mongoDbSettings_username,
    mongoDbSettings_kmsKeyId,
    mongoDbSettings_password,
    mongoDbSettings_nestingLevel,
    mongoDbSettings_databaseName,
    mongoDbSettings_docsToInvestigate,
    mongoDbSettings_authSource,
    mongoDbSettings_secretsManagerSecretId,
    mongoDbSettings_extractDocId,
    mongoDbSettings_authType,
    mongoDbSettings_port,

    -- * MySQLSettings
    MySQLSettings (..),
    newMySQLSettings,
    mySQLSettings_maxFileSize,
    mySQLSettings_targetDbType,
    mySQLSettings_serverName,
    mySQLSettings_cleanSourceMetadataOnMismatch,
    mySQLSettings_parallelLoadThreads,
    mySQLSettings_secretsManagerAccessRoleArn,
    mySQLSettings_username,
    mySQLSettings_password,
    mySQLSettings_eventsPollInterval,
    mySQLSettings_databaseName,
    mySQLSettings_afterConnectScript,
    mySQLSettings_secretsManagerSecretId,
    mySQLSettings_serverTimezone,
    mySQLSettings_port,

    -- * NeptuneSettings
    NeptuneSettings (..),
    newNeptuneSettings,
    neptuneSettings_maxFileSize,
    neptuneSettings_maxRetryCount,
    neptuneSettings_serviceAccessRoleArn,
    neptuneSettings_iamAuthEnabled,
    neptuneSettings_errorRetryDuration,
    neptuneSettings_s3BucketName,
    neptuneSettings_s3BucketFolder,

    -- * OracleSettings
    OracleSettings (..),
    newOracleSettings,
    oracleSettings_useBFile,
    oracleSettings_standbyDelayTime,
    oracleSettings_failTasksOnLobTruncation,
    oracleSettings_serverName,
    oracleSettings_directPathNoLog,
    oracleSettings_extraArchivedLogDestIds,
    oracleSettings_securityDbEncryptionName,
    oracleSettings_oraclePathPrefix,
    oracleSettings_secretsManagerAccessRoleArn,
    oracleSettings_useDirectPathFullLoad,
    oracleSettings_username,
    oracleSettings_allowSelectNestedTables,
    oracleSettings_readAheadBlocks,
    oracleSettings_archivedLogDestId,
    oracleSettings_replacePathPrefix,
    oracleSettings_accessAlternateDirectly,
    oracleSettings_secretsManagerOracleAsmSecretId,
    oracleSettings_securityDbEncryption,
    oracleSettings_useLogminerReader,
    oracleSettings_readTableSpaceName,
    oracleSettings_retryInterval,
    oracleSettings_password,
    oracleSettings_spatialDataOptionToGeoJsonFunctionName,
    oracleSettings_databaseName,
    oracleSettings_addSupplementalLogging,
    oracleSettings_secretsManagerOracleAsmAccessRoleArn,
    oracleSettings_asmServer,
    oracleSettings_charLengthSemantics,
    oracleSettings_archivedLogsOnly,
    oracleSettings_directPathParallelLoad,
    oracleSettings_secretsManagerSecretId,
    oracleSettings_additionalArchivedLogDestId,
    oracleSettings_asmPassword,
    oracleSettings_enableHomogenousTablespace,
    oracleSettings_parallelAsmReadThreads,
    oracleSettings_numberDatatypeScale,
    oracleSettings_usePathPrefix,
    oracleSettings_asmUser,
    oracleSettings_useAlternateFolderForOnline,
    oracleSettings_port,

    -- * OrderableReplicationInstance
    OrderableReplicationInstance (..),
    newOrderableReplicationInstance,
    orderableReplicationInstance_engineVersion,
    orderableReplicationInstance_minAllocatedStorage,
    orderableReplicationInstance_releaseStatus,
    orderableReplicationInstance_includedAllocatedStorage,
    orderableReplicationInstance_availabilityZones,
    orderableReplicationInstance_maxAllocatedStorage,
    orderableReplicationInstance_replicationInstanceClass,
    orderableReplicationInstance_defaultAllocatedStorage,
    orderableReplicationInstance_storageType,

    -- * PendingMaintenanceAction
    PendingMaintenanceAction (..),
    newPendingMaintenanceAction,
    pendingMaintenanceAction_autoAppliedAfterDate,
    pendingMaintenanceAction_action,
    pendingMaintenanceAction_optInStatus,
    pendingMaintenanceAction_description,
    pendingMaintenanceAction_forcedApplyDate,
    pendingMaintenanceAction_currentApplyDate,

    -- * PostgreSQLSettings
    PostgreSQLSettings (..),
    newPostgreSQLSettings,
    postgreSQLSettings_executeTimeout,
    postgreSQLSettings_maxFileSize,
    postgreSQLSettings_failTasksOnLobTruncation,
    postgreSQLSettings_serverName,
    postgreSQLSettings_ddlArtifactsSchema,
    postgreSQLSettings_slotName,
    postgreSQLSettings_secretsManagerAccessRoleArn,
    postgreSQLSettings_username,
    postgreSQLSettings_heartbeatFrequency,
    postgreSQLSettings_password,
    postgreSQLSettings_databaseName,
    postgreSQLSettings_afterConnectScript,
    postgreSQLSettings_secretsManagerSecretId,
    postgreSQLSettings_captureDdls,
    postgreSQLSettings_pluginName,
    postgreSQLSettings_port,
    postgreSQLSettings_heartbeatSchema,
    postgreSQLSettings_heartbeatEnable,

    -- * RedisSettings
    RedisSettings (..),
    newRedisSettings,
    redisSettings_sslSecurityProtocol,
    redisSettings_authUserName,
    redisSettings_sslCaCertificateArn,
    redisSettings_authPassword,
    redisSettings_authType,
    redisSettings_serverName,
    redisSettings_port,

    -- * RedshiftSettings
    RedshiftSettings (..),
    newRedshiftSettings,
    redshiftSettings_emptyAsNull,
    redshiftSettings_caseSensitiveNames,
    redshiftSettings_maxFileSize,
    redshiftSettings_replaceChars,
    redshiftSettings_serverName,
    redshiftSettings_connectionTimeout,
    redshiftSettings_loadTimeout,
    redshiftSettings_serviceAccessRoleArn,
    redshiftSettings_explicitIds,
    redshiftSettings_bucketFolder,
    redshiftSettings_truncateColumns,
    redshiftSettings_secretsManagerAccessRoleArn,
    redshiftSettings_replaceInvalidChars,
    redshiftSettings_username,
    redshiftSettings_bucketName,
    redshiftSettings_encryptionMode,
    redshiftSettings_dateFormat,
    redshiftSettings_removeQuotes,
    redshiftSettings_password,
    redshiftSettings_databaseName,
    redshiftSettings_acceptAnyDate,
    redshiftSettings_afterConnectScript,
    redshiftSettings_secretsManagerSecretId,
    redshiftSettings_writeBufferSize,
    redshiftSettings_compUpdate,
    redshiftSettings_trimBlanks,
    redshiftSettings_timeFormat,
    redshiftSettings_serverSideEncryptionKmsKeyId,
    redshiftSettings_port,
    redshiftSettings_fileTransferUploadStreams,

    -- * RefreshSchemasStatus
    RefreshSchemasStatus (..),
    newRefreshSchemasStatus,
    refreshSchemasStatus_status,
    refreshSchemasStatus_lastRefreshDate,
    refreshSchemasStatus_replicationInstanceArn,
    refreshSchemasStatus_endpointArn,
    refreshSchemasStatus_lastFailureMessage,

    -- * ReplicationInstance
    ReplicationInstance (..),
    newReplicationInstance,
    replicationInstance_engineVersion,
    replicationInstance_publiclyAccessible,
    replicationInstance_autoMinorVersionUpgrade,
    replicationInstance_replicationInstancePublicIpAddresses,
    replicationInstance_replicationSubnetGroup,
    replicationInstance_instanceCreateTime,
    replicationInstance_freeUntil,
    replicationInstance_replicationInstanceStatus,
    replicationInstance_replicationInstancePrivateIpAddresses,
    replicationInstance_preferredMaintenanceWindow,
    replicationInstance_replicationInstancePrivateIpAddress,
    replicationInstance_kmsKeyId,
    replicationInstance_availabilityZone,
    replicationInstance_vpcSecurityGroups,
    replicationInstance_multiAZ,
    replicationInstance_secondaryAvailabilityZone,
    replicationInstance_replicationInstanceArn,
    replicationInstance_allocatedStorage,
    replicationInstance_dnsNameServers,
    replicationInstance_replicationInstancePublicIpAddress,
    replicationInstance_replicationInstanceClass,
    replicationInstance_replicationInstanceIdentifier,
    replicationInstance_pendingModifiedValues,

    -- * ReplicationInstanceTaskLog
    ReplicationInstanceTaskLog (..),
    newReplicationInstanceTaskLog,
    replicationInstanceTaskLog_replicationTaskName,
    replicationInstanceTaskLog_replicationTaskArn,
    replicationInstanceTaskLog_replicationInstanceTaskLogSize,

    -- * ReplicationPendingModifiedValues
    ReplicationPendingModifiedValues (..),
    newReplicationPendingModifiedValues,
    replicationPendingModifiedValues_engineVersion,
    replicationPendingModifiedValues_multiAZ,
    replicationPendingModifiedValues_allocatedStorage,
    replicationPendingModifiedValues_replicationInstanceClass,

    -- * ReplicationSubnetGroup
    ReplicationSubnetGroup (..),
    newReplicationSubnetGroup,
    replicationSubnetGroup_vpcId,
    replicationSubnetGroup_subnets,
    replicationSubnetGroup_replicationSubnetGroupIdentifier,
    replicationSubnetGroup_subnetGroupStatus,
    replicationSubnetGroup_replicationSubnetGroupDescription,

    -- * ReplicationTask
    ReplicationTask (..),
    newReplicationTask,
    replicationTask_replicationTaskSettings,
    replicationTask_status,
    replicationTask_stopReason,
    replicationTask_targetEndpointArn,
    replicationTask_replicationTaskIdentifier,
    replicationTask_cdcStartPosition,
    replicationTask_replicationTaskStartDate,
    replicationTask_sourceEndpointArn,
    replicationTask_recoveryCheckpoint,
    replicationTask_tableMappings,
    replicationTask_targetReplicationInstanceArn,
    replicationTask_replicationTaskCreationDate,
    replicationTask_migrationType,
    replicationTask_replicationTaskArn,
    replicationTask_taskData,
    replicationTask_cdcStopPosition,
    replicationTask_replicationTaskStats,
    replicationTask_replicationInstanceArn,
    replicationTask_lastFailureMessage,

    -- * ReplicationTaskAssessmentResult
    ReplicationTaskAssessmentResult (..),
    newReplicationTaskAssessmentResult,
    replicationTaskAssessmentResult_assessmentResults,
    replicationTaskAssessmentResult_assessmentResultsFile,
    replicationTaskAssessmentResult_replicationTaskIdentifier,
    replicationTaskAssessmentResult_assessmentStatus,
    replicationTaskAssessmentResult_s3ObjectUrl,
    replicationTaskAssessmentResult_replicationTaskLastAssessmentDate,
    replicationTaskAssessmentResult_replicationTaskArn,

    -- * ReplicationTaskAssessmentRun
    ReplicationTaskAssessmentRun (..),
    newReplicationTaskAssessmentRun,
    replicationTaskAssessmentRun_status,
    replicationTaskAssessmentRun_serviceAccessRoleArn,
    replicationTaskAssessmentRun_replicationTaskAssessmentRunCreationDate,
    replicationTaskAssessmentRun_assessmentProgress,
    replicationTaskAssessmentRun_resultKmsKeyArn,
    replicationTaskAssessmentRun_replicationTaskArn,
    replicationTaskAssessmentRun_resultLocationBucket,
    replicationTaskAssessmentRun_resultLocationFolder,
    replicationTaskAssessmentRun_resultEncryptionMode,
    replicationTaskAssessmentRun_assessmentRunName,
    replicationTaskAssessmentRun_replicationTaskAssessmentRunArn,
    replicationTaskAssessmentRun_lastFailureMessage,

    -- * ReplicationTaskAssessmentRunProgress
    ReplicationTaskAssessmentRunProgress (..),
    newReplicationTaskAssessmentRunProgress,
    replicationTaskAssessmentRunProgress_individualAssessmentCount,
    replicationTaskAssessmentRunProgress_individualAssessmentCompletedCount,

    -- * ReplicationTaskIndividualAssessment
    ReplicationTaskIndividualAssessment (..),
    newReplicationTaskIndividualAssessment,
    replicationTaskIndividualAssessment_status,
    replicationTaskIndividualAssessment_replicationTaskIndividualAssessmentStartDate,
    replicationTaskIndividualAssessment_individualAssessmentName,
    replicationTaskIndividualAssessment_replicationTaskIndividualAssessmentArn,
    replicationTaskIndividualAssessment_replicationTaskAssessmentRunArn,

    -- * ReplicationTaskStats
    ReplicationTaskStats (..),
    newReplicationTaskStats,
    replicationTaskStats_stopDate,
    replicationTaskStats_fullLoadProgressPercent,
    replicationTaskStats_fullLoadStartDate,
    replicationTaskStats_elapsedTimeMillis,
    replicationTaskStats_startDate,
    replicationTaskStats_tablesErrored,
    replicationTaskStats_fullLoadFinishDate,
    replicationTaskStats_tablesLoaded,
    replicationTaskStats_tablesQueued,
    replicationTaskStats_tablesLoading,
    replicationTaskStats_freshStartDate,

    -- * ResourcePendingMaintenanceActions
    ResourcePendingMaintenanceActions (..),
    newResourcePendingMaintenanceActions,
    resourcePendingMaintenanceActions_pendingMaintenanceActionDetails,
    resourcePendingMaintenanceActions_resourceIdentifier,

    -- * S3Settings
    S3Settings (..),
    newS3Settings,
    s3Settings_parquetVersion,
    s3Settings_preserveTransactions,
    s3Settings_maxFileSize,
    s3Settings_csvNoSupValue,
    s3Settings_rfc4180,
    s3Settings_parquetTimestampInMillisecond,
    s3Settings_includeOpForFullLoad,
    s3Settings_cdcMinFileSize,
    s3Settings_csvDelimiter,
    s3Settings_serviceAccessRoleArn,
    s3Settings_bucketFolder,
    s3Settings_dataFormat,
    s3Settings_datePartitionEnabled,
    s3Settings_encodingType,
    s3Settings_cdcMaxBatchInterval,
    s3Settings_ignoreHeaderRows,
    s3Settings_externalTableDefinition,
    s3Settings_dictPageSizeLimit,
    s3Settings_bucketName,
    s3Settings_encryptionMode,
    s3Settings_enableStatistics,
    s3Settings_cdcInsertsOnly,
    s3Settings_timestampColumnName,
    s3Settings_csvRowDelimiter,
    s3Settings_datePartitionDelimiter,
    s3Settings_addColumnName,
    s3Settings_cannedAclForObjects,
    s3Settings_compressionType,
    s3Settings_csvNullValue,
    s3Settings_serverSideEncryptionKmsKeyId,
    s3Settings_dataPageSize,
    s3Settings_useCsvNoSupValue,
    s3Settings_cdcInsertsAndUpdates,
    s3Settings_datePartitionSequence,
    s3Settings_rowGroupLength,
    s3Settings_cdcPath,

    -- * Subnet
    Subnet (..),
    newSubnet,
    subnet_subnetStatus,
    subnet_subnetIdentifier,
    subnet_subnetAvailabilityZone,

    -- * SupportedEndpointType
    SupportedEndpointType (..),
    newSupportedEndpointType,
    supportedEndpointType_engineDisplayName,
    supportedEndpointType_endpointType,
    supportedEndpointType_engineName,
    supportedEndpointType_replicationInstanceEngineMinimumVersion,
    supportedEndpointType_supportsCDC,

    -- * SybaseSettings
    SybaseSettings (..),
    newSybaseSettings,
    sybaseSettings_serverName,
    sybaseSettings_secretsManagerAccessRoleArn,
    sybaseSettings_username,
    sybaseSettings_password,
    sybaseSettings_databaseName,
    sybaseSettings_secretsManagerSecretId,
    sybaseSettings_port,

    -- * TableStatistics
    TableStatistics (..),
    newTableStatistics,
    tableStatistics_validationState,
    tableStatistics_fullLoadRows,
    tableStatistics_inserts,
    tableStatistics_fullLoadEndTime,
    tableStatistics_fullLoadCondtnlChkFailedRows,
    tableStatistics_fullLoadReloaded,
    tableStatistics_validationFailedRecords,
    tableStatistics_validationSuspendedRecords,
    tableStatistics_schemaName,
    tableStatistics_validationStateDetails,
    tableStatistics_tableState,
    tableStatistics_fullLoadErrorRows,
    tableStatistics_ddls,
    tableStatistics_deletes,
    tableStatistics_updates,
    tableStatistics_validationPendingRecords,
    tableStatistics_fullLoadStartTime,
    tableStatistics_lastUpdateTime,
    tableStatistics_tableName,

    -- * TableToReload
    TableToReload (..),
    newTableToReload,
    tableToReload_schemaName,
    tableToReload_tableName,

    -- * Tag
    Tag (..),
    newTag,
    tag_value,
    tag_resourceArn,
    tag_key,

    -- * VpcSecurityGroupMembership
    VpcSecurityGroupMembership (..),
    newVpcSecurityGroupMembership,
    vpcSecurityGroupMembership_status,
    vpcSecurityGroupMembership_vpcSecurityGroupId,
  )
where

import qualified Amazonka.Core as Core
import Amazonka.DMS.Types.AccountQuota
import Amazonka.DMS.Types.AuthMechanismValue
import Amazonka.DMS.Types.AuthTypeValue
import Amazonka.DMS.Types.AvailabilityZone
import Amazonka.DMS.Types.CannedAclForObjectsValue
import Amazonka.DMS.Types.Certificate
import Amazonka.DMS.Types.CharLengthSemantics
import Amazonka.DMS.Types.CompressionTypeValue
import Amazonka.DMS.Types.Connection
import Amazonka.DMS.Types.DataFormatValue
import Amazonka.DMS.Types.DatePartitionDelimiterValue
import Amazonka.DMS.Types.DatePartitionSequenceValue
import Amazonka.DMS.Types.DmsSslModeValue
import Amazonka.DMS.Types.DmsTransferSettings
import Amazonka.DMS.Types.DocDbSettings
import Amazonka.DMS.Types.DynamoDbSettings
import Amazonka.DMS.Types.ElasticsearchSettings
import Amazonka.DMS.Types.EncodingTypeValue
import Amazonka.DMS.Types.EncryptionModeValue
import Amazonka.DMS.Types.Endpoint
import Amazonka.DMS.Types.EndpointSetting
import Amazonka.DMS.Types.EndpointSettingTypeValue
import Amazonka.DMS.Types.Event
import Amazonka.DMS.Types.EventCategoryGroup
import Amazonka.DMS.Types.EventSubscription
import Amazonka.DMS.Types.Filter
import Amazonka.DMS.Types.IBMDb2Settings
import Amazonka.DMS.Types.KafkaSecurityProtocol
import Amazonka.DMS.Types.KafkaSettings
import Amazonka.DMS.Types.KinesisSettings
import Amazonka.DMS.Types.MessageFormatValue
import Amazonka.DMS.Types.MicrosoftSQLServerSettings
import Amazonka.DMS.Types.MigrationTypeValue
import Amazonka.DMS.Types.MongoDbSettings
import Amazonka.DMS.Types.MySQLSettings
import Amazonka.DMS.Types.NeptuneSettings
import Amazonka.DMS.Types.NestingLevelValue
import Amazonka.DMS.Types.OracleSettings
import Amazonka.DMS.Types.OrderableReplicationInstance
import Amazonka.DMS.Types.ParquetVersionValue
import Amazonka.DMS.Types.PendingMaintenanceAction
import Amazonka.DMS.Types.PluginNameValue
import Amazonka.DMS.Types.PostgreSQLSettings
import Amazonka.DMS.Types.RedisAuthTypeValue
import Amazonka.DMS.Types.RedisSettings
import Amazonka.DMS.Types.RedshiftSettings
import Amazonka.DMS.Types.RefreshSchemasStatus
import Amazonka.DMS.Types.RefreshSchemasStatusTypeValue
import Amazonka.DMS.Types.ReleaseStatusValues
import Amazonka.DMS.Types.ReloadOptionValue
import Amazonka.DMS.Types.ReplicationEndpointTypeValue
import Amazonka.DMS.Types.ReplicationInstance
import Amazonka.DMS.Types.ReplicationInstanceTaskLog
import Amazonka.DMS.Types.ReplicationPendingModifiedValues
import Amazonka.DMS.Types.ReplicationSubnetGroup
import Amazonka.DMS.Types.ReplicationTask
import Amazonka.DMS.Types.ReplicationTaskAssessmentResult
import Amazonka.DMS.Types.ReplicationTaskAssessmentRun
import Amazonka.DMS.Types.ReplicationTaskAssessmentRunProgress
import Amazonka.DMS.Types.ReplicationTaskIndividualAssessment
import Amazonka.DMS.Types.ReplicationTaskStats
import Amazonka.DMS.Types.ResourcePendingMaintenanceActions
import Amazonka.DMS.Types.S3Settings
import Amazonka.DMS.Types.SafeguardPolicy
import Amazonka.DMS.Types.SourceType
import Amazonka.DMS.Types.SslSecurityProtocolValue
import Amazonka.DMS.Types.StartReplicationTaskTypeValue
import Amazonka.DMS.Types.Subnet
import Amazonka.DMS.Types.SupportedEndpointType
import Amazonka.DMS.Types.SybaseSettings
import Amazonka.DMS.Types.TableStatistics
import Amazonka.DMS.Types.TableToReload
import Amazonka.DMS.Types.Tag
import Amazonka.DMS.Types.TargetDbType
import Amazonka.DMS.Types.VpcSecurityGroupMembership
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Sign.V4 as Sign

-- | API version @2016-01-01@ of the Amazon Database Migration Service SDK configuration.
defaultService :: Core.Service
defaultService :: Service
defaultService =
  Service :: Abbrev
-> Signer
-> ByteString
-> ByteString
-> ByteString
-> (Region -> Endpoint)
-> Maybe Seconds
-> (Status -> Bool)
-> (Status -> [Header] -> ByteStringLazy -> Error)
-> Retry
-> Service
Core.Service
    { $sel:_serviceAbbrev:Service :: Abbrev
Core._serviceAbbrev = Abbrev
"DMS",
      $sel:_serviceSigner:Service :: Signer
Core._serviceSigner = Signer
Sign.v4,
      $sel:_serviceEndpointPrefix:Service :: ByteString
Core._serviceEndpointPrefix = ByteString
"dms",
      $sel:_serviceSigningName:Service :: ByteString
Core._serviceSigningName = ByteString
"dms",
      $sel:_serviceVersion:Service :: ByteString
Core._serviceVersion = ByteString
"2016-01-01",
      $sel:_serviceEndpoint:Service :: Region -> Endpoint
Core._serviceEndpoint =
        Service -> Region -> Endpoint
Core.defaultEndpoint Service
defaultService,
      $sel:_serviceTimeout:Service :: Maybe Seconds
Core._serviceTimeout = Seconds -> Maybe Seconds
forall a. a -> Maybe a
Prelude.Just Seconds
70,
      $sel:_serviceCheck:Service :: Status -> Bool
Core._serviceCheck = Status -> Bool
Core.statusSuccess,
      $sel:_serviceError:Service :: Status -> [Header] -> ByteStringLazy -> Error
Core._serviceError = Abbrev -> Status -> [Header] -> ByteStringLazy -> Error
Core.parseJSONError Abbrev
"DMS",
      $sel:_serviceRetry:Service :: Retry
Core._serviceRetry = Retry
retry
    }
  where
    retry :: Retry
retry =
      Exponential :: Double -> Int -> Int -> (ServiceError -> Maybe Text) -> Retry
Core.Exponential
        { $sel:_retryBase:Exponential :: Double
Core._retryBase = Double
5.0e-2,
          $sel:_retryGrowth:Exponential :: Int
Core._retryGrowth = Int
2,
          $sel:_retryAttempts:Exponential :: Int
Core._retryAttempts = Int
5,
          $sel:_retryCheck:Exponential :: ServiceError -> Maybe Text
Core._retryCheck = ServiceError -> Maybe Text
forall a. IsString a => ServiceError -> Maybe a
check
        }
    check :: ServiceError -> Maybe a
check ServiceError
e
      | Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has
          ( ErrorCode -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode ErrorCode
"ThrottledException"
              Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
          )
          ServiceError
e =
        a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"throttled_exception"
      | Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has (Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
429) ServiceError
e =
        a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"too_many_requests"
      | Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has
          ( ErrorCode -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode ErrorCode
"ThrottlingException"
              Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
          )
          ServiceError
e =
        a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"throttling_exception"
      | Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has
          ( ErrorCode -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode ErrorCode
"Throttling"
              Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
          )
          ServiceError
e =
        a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"throttling"
      | Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has
          ( ErrorCode -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode
              ErrorCode
"ProvisionedThroughputExceededException"
              Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
          )
          ServiceError
e =
        a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"throughput_exceeded"
      | Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has (Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
504) ServiceError
e =
        a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"gateway_timeout"
      | Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has
          ( ErrorCode -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode ErrorCode
"RequestThrottledException"
              Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
-> Getting Any ServiceError ServiceError
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
          )
          ServiceError
e =
        a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"request_throttled_exception"
      | Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has (Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
502) ServiceError
e =
        a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"bad_gateway"
      | Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has (Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
503) ServiceError
e =
        a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"service_unavailable"
      | Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has (Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
500) ServiceError
e =
        a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"general_server_error"
      | Getting Any ServiceError ServiceError -> ServiceError -> Bool
forall s a. Getting Any s a -> s -> Bool
Lens.has (Int -> Getting Any ServiceError ServiceError
forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
509) ServiceError
e =
        a -> Maybe a
forall a. a -> Maybe a
Prelude.Just a
"limit_exceeded"
      | Bool
Prelude.otherwise = Maybe a
forall a. Maybe a
Prelude.Nothing

-- | The ciphertext references a key that doesn\'t exist or that the DMS
-- account doesn\'t have access to.
_KMSAccessDeniedFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_KMSAccessDeniedFault :: Getting (First ServiceError) a ServiceError
_KMSAccessDeniedFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"KMSAccessDeniedFault"

-- | The specified master key (CMK) isn\'t enabled.
_KMSDisabledFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_KMSDisabledFault :: Getting (First ServiceError) a ServiceError
_KMSDisabledFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"KMSDisabledFault"

-- | An Key Management Service (KMS) error is preventing access to KMS.
_KMSFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_KMSFault :: Getting (First ServiceError) a ServiceError
_KMSFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError Service
defaultService ErrorCode
"KMSFault"

-- | The subnet provided is invalid.
_InvalidSubnet :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_InvalidSubnet :: Getting (First ServiceError) a ServiceError
_InvalidSubnet =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"InvalidSubnet"

-- | DMS cannot access the KMS key.
_KMSKeyNotAccessibleFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_KMSKeyNotAccessibleFault :: Getting (First ServiceError) a ServiceError
_KMSKeyNotAccessibleFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"KMSKeyNotAccessibleFault"

-- | The replication subnet group does not cover enough Availability Zones
-- (AZs). Edit the replication subnet group and add more AZs.
_ReplicationSubnetGroupDoesNotCoverEnoughAZs :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_ReplicationSubnetGroupDoesNotCoverEnoughAZs :: Getting (First ServiceError) a ServiceError
_ReplicationSubnetGroupDoesNotCoverEnoughAZs =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"ReplicationSubnetGroupDoesNotCoverEnoughAZs"

-- | A specified Amazon S3 bucket, bucket folder, or other object can\'t be
-- found.
_S3ResourceNotFoundFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_S3ResourceNotFoundFault :: Getting (First ServiceError) a ServiceError
_S3ResourceNotFoundFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"S3ResourceNotFoundFault"

-- | The resource is in a state that prevents it from being used for database
-- migration.
_InvalidResourceStateFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_InvalidResourceStateFault :: Getting (First ServiceError) a ServiceError
_InvalidResourceStateFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"InvalidResourceStateFault"

-- | The certificate was not valid.
_InvalidCertificateFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_InvalidCertificateFault :: Getting (First ServiceError) a ServiceError
_InvalidCertificateFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"InvalidCertificateFault"

-- | You are not authorized for the SNS subscription.
_SNSNoAuthorizationFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_SNSNoAuthorizationFault :: Getting (First ServiceError) a ServiceError
_SNSNoAuthorizationFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"SNSNoAuthorizationFault"

-- | The resource you are attempting to create already exists.
_ResourceAlreadyExistsFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_ResourceAlreadyExistsFault :: Getting (First ServiceError) a ServiceError
_ResourceAlreadyExistsFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"ResourceAlreadyExistsFault"

-- | There are not enough resources allocated to the database migration.
_InsufficientResourceCapacityFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_InsufficientResourceCapacityFault :: Getting (First ServiceError) a ServiceError
_InsufficientResourceCapacityFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"InsufficientResourceCapacityFault"

-- | Insufficient privileges are preventing access to an Amazon S3 object.
_S3AccessDeniedFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_S3AccessDeniedFault :: Getting (First ServiceError) a ServiceError
_S3AccessDeniedFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"S3AccessDeniedFault"

-- | The SNS topic is invalid.
_SNSInvalidTopicFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_SNSInvalidTopicFault :: Getting (First ServiceError) a ServiceError
_SNSInvalidTopicFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"SNSInvalidTopicFault"

-- | The specified KMS entity or resource can\'t be found.
_KMSNotFoundFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_KMSNotFoundFault :: Getting (First ServiceError) a ServiceError
_KMSNotFoundFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"KMSNotFoundFault"

-- | This request triggered KMS request throttling.
_KMSThrottlingFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_KMSThrottlingFault :: Getting (First ServiceError) a ServiceError
_KMSThrottlingFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"KMSThrottlingFault"

-- | The quota for this resource quota has been exceeded.
_ResourceQuotaExceededFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_ResourceQuotaExceededFault :: Getting (First ServiceError) a ServiceError
_ResourceQuotaExceededFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"ResourceQuotaExceededFault"

-- | An upgrade dependency is preventing the database migration.
_UpgradeDependencyFailureFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_UpgradeDependencyFailureFault :: Getting (First ServiceError) a ServiceError
_UpgradeDependencyFailureFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"UpgradeDependencyFailureFault"

-- | The resource could not be found.
_ResourceNotFoundFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_ResourceNotFoundFault :: Getting (First ServiceError) a ServiceError
_ResourceNotFoundFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"ResourceNotFoundFault"

-- | The storage quota has been exceeded.
_StorageQuotaExceededFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_StorageQuotaExceededFault :: Getting (First ServiceError) a ServiceError
_StorageQuotaExceededFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"StorageQuotaExceededFault"

-- | DMS was denied access to the endpoint. Check that the role is correctly
-- configured.
_AccessDeniedFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_AccessDeniedFault :: Getting (First ServiceError) a ServiceError
_AccessDeniedFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"AccessDeniedFault"

-- | The specified subnet is already in use.
_SubnetAlreadyInUse :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_SubnetAlreadyInUse :: Getting (First ServiceError) a ServiceError
_SubnetAlreadyInUse =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"SubnetAlreadyInUse"

-- | The state of the specified KMS resource isn\'t valid for this request.
_KMSInvalidStateFault :: Core.AsError a => Lens.Getting (Prelude.First Core.ServiceError) a Core.ServiceError
_KMSInvalidStateFault :: Getting (First ServiceError) a ServiceError
_KMSInvalidStateFault =
  Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
forall a.
AsError a =>
Service -> ErrorCode -> Getting (First ServiceError) a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"KMSInvalidStateFault"