amazonka-lookoutequipment-2.0: gen/Amazonka/LookoutEquipment/Types/DataQualitySummary.hs
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
-- Derived from AWS service descriptions, licensed under Apache 2.0.
-- |
-- Module : Amazonka.LookoutEquipment.Types.DataQualitySummary
-- 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.LookoutEquipment.Types.DataQualitySummary where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.LookoutEquipment.Types.DuplicateTimestamps
import Amazonka.LookoutEquipment.Types.InsufficientSensorData
import Amazonka.LookoutEquipment.Types.InvalidSensorData
import Amazonka.LookoutEquipment.Types.MissingSensorData
import Amazonka.LookoutEquipment.Types.UnsupportedTimestamps
import qualified Amazonka.Prelude as Prelude
-- | DataQualitySummary gives aggregated statistics over all the sensors
-- about a completed ingestion job. It primarily gives more information
-- about statistics over different incorrect data like
-- MissingCompleteSensorData, MissingSensorData, UnsupportedDateFormats,
-- InsufficientSensorData, DuplicateTimeStamps.
--
-- /See:/ 'newDataQualitySummary' smart constructor.
data DataQualitySummary = DataQualitySummary'
{ -- | Parameter that gives information about insufficient data for sensors in
-- the dataset. This includes information about those sensors that have
-- complete data missing and those with a short date range.
insufficientSensorData :: InsufficientSensorData,
-- | Parameter that gives information about data that is missing over all the
-- sensors in the input data.
missingSensorData :: MissingSensorData,
-- | Parameter that gives information about data that is invalid over all the
-- sensors in the input data.
invalidSensorData :: InvalidSensorData,
-- | Parameter that gives information about unsupported timestamps in the
-- input data.
unsupportedTimestamps :: UnsupportedTimestamps,
-- | Parameter that gives information about duplicate timestamps in the input
-- data.
duplicateTimestamps :: DuplicateTimestamps
}
deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)
-- |
-- Create a value of 'DataQualitySummary' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'insufficientSensorData', 'dataQualitySummary_insufficientSensorData' - Parameter that gives information about insufficient data for sensors in
-- the dataset. This includes information about those sensors that have
-- complete data missing and those with a short date range.
--
-- 'missingSensorData', 'dataQualitySummary_missingSensorData' - Parameter that gives information about data that is missing over all the
-- sensors in the input data.
--
-- 'invalidSensorData', 'dataQualitySummary_invalidSensorData' - Parameter that gives information about data that is invalid over all the
-- sensors in the input data.
--
-- 'unsupportedTimestamps', 'dataQualitySummary_unsupportedTimestamps' - Parameter that gives information about unsupported timestamps in the
-- input data.
--
-- 'duplicateTimestamps', 'dataQualitySummary_duplicateTimestamps' - Parameter that gives information about duplicate timestamps in the input
-- data.
newDataQualitySummary ::
-- | 'insufficientSensorData'
InsufficientSensorData ->
-- | 'missingSensorData'
MissingSensorData ->
-- | 'invalidSensorData'
InvalidSensorData ->
-- | 'unsupportedTimestamps'
UnsupportedTimestamps ->
-- | 'duplicateTimestamps'
DuplicateTimestamps ->
DataQualitySummary
newDataQualitySummary
pInsufficientSensorData_
pMissingSensorData_
pInvalidSensorData_
pUnsupportedTimestamps_
pDuplicateTimestamps_ =
DataQualitySummary'
{ insufficientSensorData =
pInsufficientSensorData_,
missingSensorData = pMissingSensorData_,
invalidSensorData = pInvalidSensorData_,
unsupportedTimestamps = pUnsupportedTimestamps_,
duplicateTimestamps = pDuplicateTimestamps_
}
-- | Parameter that gives information about insufficient data for sensors in
-- the dataset. This includes information about those sensors that have
-- complete data missing and those with a short date range.
dataQualitySummary_insufficientSensorData :: Lens.Lens' DataQualitySummary InsufficientSensorData
dataQualitySummary_insufficientSensorData = Lens.lens (\DataQualitySummary' {insufficientSensorData} -> insufficientSensorData) (\s@DataQualitySummary' {} a -> s {insufficientSensorData = a} :: DataQualitySummary)
-- | Parameter that gives information about data that is missing over all the
-- sensors in the input data.
dataQualitySummary_missingSensorData :: Lens.Lens' DataQualitySummary MissingSensorData
dataQualitySummary_missingSensorData = Lens.lens (\DataQualitySummary' {missingSensorData} -> missingSensorData) (\s@DataQualitySummary' {} a -> s {missingSensorData = a} :: DataQualitySummary)
-- | Parameter that gives information about data that is invalid over all the
-- sensors in the input data.
dataQualitySummary_invalidSensorData :: Lens.Lens' DataQualitySummary InvalidSensorData
dataQualitySummary_invalidSensorData = Lens.lens (\DataQualitySummary' {invalidSensorData} -> invalidSensorData) (\s@DataQualitySummary' {} a -> s {invalidSensorData = a} :: DataQualitySummary)
-- | Parameter that gives information about unsupported timestamps in the
-- input data.
dataQualitySummary_unsupportedTimestamps :: Lens.Lens' DataQualitySummary UnsupportedTimestamps
dataQualitySummary_unsupportedTimestamps = Lens.lens (\DataQualitySummary' {unsupportedTimestamps} -> unsupportedTimestamps) (\s@DataQualitySummary' {} a -> s {unsupportedTimestamps = a} :: DataQualitySummary)
-- | Parameter that gives information about duplicate timestamps in the input
-- data.
dataQualitySummary_duplicateTimestamps :: Lens.Lens' DataQualitySummary DuplicateTimestamps
dataQualitySummary_duplicateTimestamps = Lens.lens (\DataQualitySummary' {duplicateTimestamps} -> duplicateTimestamps) (\s@DataQualitySummary' {} a -> s {duplicateTimestamps = a} :: DataQualitySummary)
instance Data.FromJSON DataQualitySummary where
parseJSON =
Data.withObject
"DataQualitySummary"
( \x ->
DataQualitySummary'
Prelude.<$> (x Data..: "InsufficientSensorData")
Prelude.<*> (x Data..: "MissingSensorData")
Prelude.<*> (x Data..: "InvalidSensorData")
Prelude.<*> (x Data..: "UnsupportedTimestamps")
Prelude.<*> (x Data..: "DuplicateTimestamps")
)
instance Prelude.Hashable DataQualitySummary where
hashWithSalt _salt DataQualitySummary' {..} =
_salt
`Prelude.hashWithSalt` insufficientSensorData
`Prelude.hashWithSalt` missingSensorData
`Prelude.hashWithSalt` invalidSensorData
`Prelude.hashWithSalt` unsupportedTimestamps
`Prelude.hashWithSalt` duplicateTimestamps
instance Prelude.NFData DataQualitySummary where
rnf DataQualitySummary' {..} =
Prelude.rnf insufficientSensorData
`Prelude.seq` Prelude.rnf missingSensorData
`Prelude.seq` Prelude.rnf invalidSensorData
`Prelude.seq` Prelude.rnf unsupportedTimestamps
`Prelude.seq` Prelude.rnf duplicateTimestamps