{-# 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.MigrationHubStrategy.Types.ImportFileTaskInformation
-- 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.MigrationHubStrategy.Types.ImportFileTaskInformation where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.MigrationHubStrategy.Types.ImportFileTaskStatus
import qualified Amazonka.Prelude as Prelude

-- | Information about the import file tasks you request.
--
-- /See:/ 'newImportFileTaskInformation' smart constructor.
data ImportFileTaskInformation = ImportFileTaskInformation'
  { -- | The time that the import task completes.
    ImportFileTaskInformation -> Maybe POSIX
completionTime :: Prelude.Maybe Data.POSIX,
    -- | The ID of the import file task.
    ImportFileTaskInformation -> Maybe Text
id :: Prelude.Maybe Prelude.Text,
    -- | The name of the import task given in @StartImportFileTask@.
    ImportFileTaskInformation -> Maybe Text
importName :: Prelude.Maybe Prelude.Text,
    -- | The S3 bucket where the import file is located.
    ImportFileTaskInformation -> Maybe Text
inputS3Bucket :: Prelude.Maybe Prelude.Text,
    -- | The Amazon S3 key name of the import file.
    ImportFileTaskInformation -> Maybe Text
inputS3Key :: Prelude.Maybe Prelude.Text,
    -- | The number of records that failed to be imported.
    ImportFileTaskInformation -> Maybe Int
numberOfRecordsFailed :: Prelude.Maybe Prelude.Int,
    -- | The number of records successfully imported.
    ImportFileTaskInformation -> Maybe Int
numberOfRecordsSuccess :: Prelude.Maybe Prelude.Int,
    -- | Start time of the import task.
    ImportFileTaskInformation -> Maybe POSIX
startTime :: Prelude.Maybe Data.POSIX,
    -- | Status of import file task.
    ImportFileTaskInformation -> Maybe ImportFileTaskStatus
status :: Prelude.Maybe ImportFileTaskStatus,
    -- | The S3 bucket name for status report of import task.
    ImportFileTaskInformation -> Maybe Text
statusReportS3Bucket :: Prelude.Maybe Prelude.Text,
    -- | The Amazon S3 key name for status report of import task. The report
    -- contains details about whether each record imported successfully or why
    -- it did not.
    ImportFileTaskInformation -> Maybe Text
statusReportS3Key :: Prelude.Maybe Prelude.Text
  }
  deriving (ImportFileTaskInformation -> ImportFileTaskInformation -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ImportFileTaskInformation -> ImportFileTaskInformation -> Bool
$c/= :: ImportFileTaskInformation -> ImportFileTaskInformation -> Bool
== :: ImportFileTaskInformation -> ImportFileTaskInformation -> Bool
$c== :: ImportFileTaskInformation -> ImportFileTaskInformation -> Bool
Prelude.Eq, ReadPrec [ImportFileTaskInformation]
ReadPrec ImportFileTaskInformation
Int -> ReadS ImportFileTaskInformation
ReadS [ImportFileTaskInformation]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ImportFileTaskInformation]
$creadListPrec :: ReadPrec [ImportFileTaskInformation]
readPrec :: ReadPrec ImportFileTaskInformation
$creadPrec :: ReadPrec ImportFileTaskInformation
readList :: ReadS [ImportFileTaskInformation]
$creadList :: ReadS [ImportFileTaskInformation]
readsPrec :: Int -> ReadS ImportFileTaskInformation
$creadsPrec :: Int -> ReadS ImportFileTaskInformation
Prelude.Read, Int -> ImportFileTaskInformation -> ShowS
[ImportFileTaskInformation] -> ShowS
ImportFileTaskInformation -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ImportFileTaskInformation] -> ShowS
$cshowList :: [ImportFileTaskInformation] -> ShowS
show :: ImportFileTaskInformation -> String
$cshow :: ImportFileTaskInformation -> String
showsPrec :: Int -> ImportFileTaskInformation -> ShowS
$cshowsPrec :: Int -> ImportFileTaskInformation -> ShowS
Prelude.Show, forall x.
Rep ImportFileTaskInformation x -> ImportFileTaskInformation
forall x.
ImportFileTaskInformation -> Rep ImportFileTaskInformation x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ImportFileTaskInformation x -> ImportFileTaskInformation
$cfrom :: forall x.
ImportFileTaskInformation -> Rep ImportFileTaskInformation x
Prelude.Generic)

-- |
-- Create a value of 'ImportFileTaskInformation' 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:
--
-- 'completionTime', 'importFileTaskInformation_completionTime' - The time that the import task completes.
--
-- 'id', 'importFileTaskInformation_id' - The ID of the import file task.
--
-- 'importName', 'importFileTaskInformation_importName' - The name of the import task given in @StartImportFileTask@.
--
-- 'inputS3Bucket', 'importFileTaskInformation_inputS3Bucket' - The S3 bucket where the import file is located.
--
-- 'inputS3Key', 'importFileTaskInformation_inputS3Key' - The Amazon S3 key name of the import file.
--
-- 'numberOfRecordsFailed', 'importFileTaskInformation_numberOfRecordsFailed' - The number of records that failed to be imported.
--
-- 'numberOfRecordsSuccess', 'importFileTaskInformation_numberOfRecordsSuccess' - The number of records successfully imported.
--
-- 'startTime', 'importFileTaskInformation_startTime' - Start time of the import task.
--
-- 'status', 'importFileTaskInformation_status' - Status of import file task.
--
-- 'statusReportS3Bucket', 'importFileTaskInformation_statusReportS3Bucket' - The S3 bucket name for status report of import task.
--
-- 'statusReportS3Key', 'importFileTaskInformation_statusReportS3Key' - The Amazon S3 key name for status report of import task. The report
-- contains details about whether each record imported successfully or why
-- it did not.
newImportFileTaskInformation ::
  ImportFileTaskInformation
newImportFileTaskInformation :: ImportFileTaskInformation
newImportFileTaskInformation =
  ImportFileTaskInformation'
    { $sel:completionTime:ImportFileTaskInformation' :: Maybe POSIX
completionTime =
        forall a. Maybe a
Prelude.Nothing,
      $sel:id:ImportFileTaskInformation' :: Maybe Text
id = forall a. Maybe a
Prelude.Nothing,
      $sel:importName:ImportFileTaskInformation' :: Maybe Text
importName = forall a. Maybe a
Prelude.Nothing,
      $sel:inputS3Bucket:ImportFileTaskInformation' :: Maybe Text
inputS3Bucket = forall a. Maybe a
Prelude.Nothing,
      $sel:inputS3Key:ImportFileTaskInformation' :: Maybe Text
inputS3Key = forall a. Maybe a
Prelude.Nothing,
      $sel:numberOfRecordsFailed:ImportFileTaskInformation' :: Maybe Int
numberOfRecordsFailed = forall a. Maybe a
Prelude.Nothing,
      $sel:numberOfRecordsSuccess:ImportFileTaskInformation' :: Maybe Int
numberOfRecordsSuccess = forall a. Maybe a
Prelude.Nothing,
      $sel:startTime:ImportFileTaskInformation' :: Maybe POSIX
startTime = forall a. Maybe a
Prelude.Nothing,
      $sel:status:ImportFileTaskInformation' :: Maybe ImportFileTaskStatus
status = forall a. Maybe a
Prelude.Nothing,
      $sel:statusReportS3Bucket:ImportFileTaskInformation' :: Maybe Text
statusReportS3Bucket = forall a. Maybe a
Prelude.Nothing,
      $sel:statusReportS3Key:ImportFileTaskInformation' :: Maybe Text
statusReportS3Key = forall a. Maybe a
Prelude.Nothing
    }

-- | The time that the import task completes.
importFileTaskInformation_completionTime :: Lens.Lens' ImportFileTaskInformation (Prelude.Maybe Prelude.UTCTime)
importFileTaskInformation_completionTime :: Lens' ImportFileTaskInformation (Maybe UTCTime)
importFileTaskInformation_completionTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportFileTaskInformation' {Maybe POSIX
completionTime :: Maybe POSIX
$sel:completionTime:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe POSIX
completionTime} -> Maybe POSIX
completionTime) (\s :: ImportFileTaskInformation
s@ImportFileTaskInformation' {} Maybe POSIX
a -> ImportFileTaskInformation
s {$sel:completionTime:ImportFileTaskInformation' :: Maybe POSIX
completionTime = Maybe POSIX
a} :: ImportFileTaskInformation) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall (a :: Format). Iso' (Time a) UTCTime
Data._Time

-- | The ID of the import file task.
importFileTaskInformation_id :: Lens.Lens' ImportFileTaskInformation (Prelude.Maybe Prelude.Text)
importFileTaskInformation_id :: Lens' ImportFileTaskInformation (Maybe Text)
importFileTaskInformation_id = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportFileTaskInformation' {Maybe Text
id :: Maybe Text
$sel:id:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
id} -> Maybe Text
id) (\s :: ImportFileTaskInformation
s@ImportFileTaskInformation' {} Maybe Text
a -> ImportFileTaskInformation
s {$sel:id:ImportFileTaskInformation' :: Maybe Text
id = Maybe Text
a} :: ImportFileTaskInformation)

-- | The name of the import task given in @StartImportFileTask@.
importFileTaskInformation_importName :: Lens.Lens' ImportFileTaskInformation (Prelude.Maybe Prelude.Text)
importFileTaskInformation_importName :: Lens' ImportFileTaskInformation (Maybe Text)
importFileTaskInformation_importName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportFileTaskInformation' {Maybe Text
importName :: Maybe Text
$sel:importName:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
importName} -> Maybe Text
importName) (\s :: ImportFileTaskInformation
s@ImportFileTaskInformation' {} Maybe Text
a -> ImportFileTaskInformation
s {$sel:importName:ImportFileTaskInformation' :: Maybe Text
importName = Maybe Text
a} :: ImportFileTaskInformation)

-- | The S3 bucket where the import file is located.
importFileTaskInformation_inputS3Bucket :: Lens.Lens' ImportFileTaskInformation (Prelude.Maybe Prelude.Text)
importFileTaskInformation_inputS3Bucket :: Lens' ImportFileTaskInformation (Maybe Text)
importFileTaskInformation_inputS3Bucket = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportFileTaskInformation' {Maybe Text
inputS3Bucket :: Maybe Text
$sel:inputS3Bucket:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
inputS3Bucket} -> Maybe Text
inputS3Bucket) (\s :: ImportFileTaskInformation
s@ImportFileTaskInformation' {} Maybe Text
a -> ImportFileTaskInformation
s {$sel:inputS3Bucket:ImportFileTaskInformation' :: Maybe Text
inputS3Bucket = Maybe Text
a} :: ImportFileTaskInformation)

-- | The Amazon S3 key name of the import file.
importFileTaskInformation_inputS3Key :: Lens.Lens' ImportFileTaskInformation (Prelude.Maybe Prelude.Text)
importFileTaskInformation_inputS3Key :: Lens' ImportFileTaskInformation (Maybe Text)
importFileTaskInformation_inputS3Key = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportFileTaskInformation' {Maybe Text
inputS3Key :: Maybe Text
$sel:inputS3Key:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
inputS3Key} -> Maybe Text
inputS3Key) (\s :: ImportFileTaskInformation
s@ImportFileTaskInformation' {} Maybe Text
a -> ImportFileTaskInformation
s {$sel:inputS3Key:ImportFileTaskInformation' :: Maybe Text
inputS3Key = Maybe Text
a} :: ImportFileTaskInformation)

-- | The number of records that failed to be imported.
importFileTaskInformation_numberOfRecordsFailed :: Lens.Lens' ImportFileTaskInformation (Prelude.Maybe Prelude.Int)
importFileTaskInformation_numberOfRecordsFailed :: Lens' ImportFileTaskInformation (Maybe Int)
importFileTaskInformation_numberOfRecordsFailed = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportFileTaskInformation' {Maybe Int
numberOfRecordsFailed :: Maybe Int
$sel:numberOfRecordsFailed:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Int
numberOfRecordsFailed} -> Maybe Int
numberOfRecordsFailed) (\s :: ImportFileTaskInformation
s@ImportFileTaskInformation' {} Maybe Int
a -> ImportFileTaskInformation
s {$sel:numberOfRecordsFailed:ImportFileTaskInformation' :: Maybe Int
numberOfRecordsFailed = Maybe Int
a} :: ImportFileTaskInformation)

-- | The number of records successfully imported.
importFileTaskInformation_numberOfRecordsSuccess :: Lens.Lens' ImportFileTaskInformation (Prelude.Maybe Prelude.Int)
importFileTaskInformation_numberOfRecordsSuccess :: Lens' ImportFileTaskInformation (Maybe Int)
importFileTaskInformation_numberOfRecordsSuccess = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportFileTaskInformation' {Maybe Int
numberOfRecordsSuccess :: Maybe Int
$sel:numberOfRecordsSuccess:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Int
numberOfRecordsSuccess} -> Maybe Int
numberOfRecordsSuccess) (\s :: ImportFileTaskInformation
s@ImportFileTaskInformation' {} Maybe Int
a -> ImportFileTaskInformation
s {$sel:numberOfRecordsSuccess:ImportFileTaskInformation' :: Maybe Int
numberOfRecordsSuccess = Maybe Int
a} :: ImportFileTaskInformation)

-- | Start time of the import task.
importFileTaskInformation_startTime :: Lens.Lens' ImportFileTaskInformation (Prelude.Maybe Prelude.UTCTime)
importFileTaskInformation_startTime :: Lens' ImportFileTaskInformation (Maybe UTCTime)
importFileTaskInformation_startTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportFileTaskInformation' {Maybe POSIX
startTime :: Maybe POSIX
$sel:startTime:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe POSIX
startTime} -> Maybe POSIX
startTime) (\s :: ImportFileTaskInformation
s@ImportFileTaskInformation' {} Maybe POSIX
a -> ImportFileTaskInformation
s {$sel:startTime:ImportFileTaskInformation' :: Maybe POSIX
startTime = Maybe POSIX
a} :: ImportFileTaskInformation) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall (a :: Format). Iso' (Time a) UTCTime
Data._Time

-- | Status of import file task.
importFileTaskInformation_status :: Lens.Lens' ImportFileTaskInformation (Prelude.Maybe ImportFileTaskStatus)
importFileTaskInformation_status :: Lens' ImportFileTaskInformation (Maybe ImportFileTaskStatus)
importFileTaskInformation_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportFileTaskInformation' {Maybe ImportFileTaskStatus
status :: Maybe ImportFileTaskStatus
$sel:status:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe ImportFileTaskStatus
status} -> Maybe ImportFileTaskStatus
status) (\s :: ImportFileTaskInformation
s@ImportFileTaskInformation' {} Maybe ImportFileTaskStatus
a -> ImportFileTaskInformation
s {$sel:status:ImportFileTaskInformation' :: Maybe ImportFileTaskStatus
status = Maybe ImportFileTaskStatus
a} :: ImportFileTaskInformation)

-- | The S3 bucket name for status report of import task.
importFileTaskInformation_statusReportS3Bucket :: Lens.Lens' ImportFileTaskInformation (Prelude.Maybe Prelude.Text)
importFileTaskInformation_statusReportS3Bucket :: Lens' ImportFileTaskInformation (Maybe Text)
importFileTaskInformation_statusReportS3Bucket = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportFileTaskInformation' {Maybe Text
statusReportS3Bucket :: Maybe Text
$sel:statusReportS3Bucket:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
statusReportS3Bucket} -> Maybe Text
statusReportS3Bucket) (\s :: ImportFileTaskInformation
s@ImportFileTaskInformation' {} Maybe Text
a -> ImportFileTaskInformation
s {$sel:statusReportS3Bucket:ImportFileTaskInformation' :: Maybe Text
statusReportS3Bucket = Maybe Text
a} :: ImportFileTaskInformation)

-- | The Amazon S3 key name for status report of import task. The report
-- contains details about whether each record imported successfully or why
-- it did not.
importFileTaskInformation_statusReportS3Key :: Lens.Lens' ImportFileTaskInformation (Prelude.Maybe Prelude.Text)
importFileTaskInformation_statusReportS3Key :: Lens' ImportFileTaskInformation (Maybe Text)
importFileTaskInformation_statusReportS3Key = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ImportFileTaskInformation' {Maybe Text
statusReportS3Key :: Maybe Text
$sel:statusReportS3Key:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
statusReportS3Key} -> Maybe Text
statusReportS3Key) (\s :: ImportFileTaskInformation
s@ImportFileTaskInformation' {} Maybe Text
a -> ImportFileTaskInformation
s {$sel:statusReportS3Key:ImportFileTaskInformation' :: Maybe Text
statusReportS3Key = Maybe Text
a} :: ImportFileTaskInformation)

instance Data.FromJSON ImportFileTaskInformation where
  parseJSON :: Value -> Parser ImportFileTaskInformation
parseJSON =
    forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
      String
"ImportFileTaskInformation"
      ( \Object
x ->
          Maybe POSIX
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Int
-> Maybe Int
-> Maybe POSIX
-> Maybe ImportFileTaskStatus
-> Maybe Text
-> Maybe Text
-> ImportFileTaskInformation
ImportFileTaskInformation'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"completionTime")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"id")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"importName")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"inputS3Bucket")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"inputS3Key")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"numberOfRecordsFailed")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"numberOfRecordsSuccess")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"startTime")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"status")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"statusReportS3Bucket")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"statusReportS3Key")
      )

instance Prelude.Hashable ImportFileTaskInformation where
  hashWithSalt :: Int -> ImportFileTaskInformation -> Int
hashWithSalt Int
_salt ImportFileTaskInformation' {Maybe Int
Maybe Text
Maybe POSIX
Maybe ImportFileTaskStatus
statusReportS3Key :: Maybe Text
statusReportS3Bucket :: Maybe Text
status :: Maybe ImportFileTaskStatus
startTime :: Maybe POSIX
numberOfRecordsSuccess :: Maybe Int
numberOfRecordsFailed :: Maybe Int
inputS3Key :: Maybe Text
inputS3Bucket :: Maybe Text
importName :: Maybe Text
id :: Maybe Text
completionTime :: Maybe POSIX
$sel:statusReportS3Key:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
$sel:statusReportS3Bucket:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
$sel:status:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe ImportFileTaskStatus
$sel:startTime:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe POSIX
$sel:numberOfRecordsSuccess:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Int
$sel:numberOfRecordsFailed:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Int
$sel:inputS3Key:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
$sel:inputS3Bucket:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
$sel:importName:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
$sel:id:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
$sel:completionTime:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe POSIX
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
completionTime
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
id
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
importName
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
inputS3Bucket
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
inputS3Key
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
numberOfRecordsFailed
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
numberOfRecordsSuccess
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
startTime
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ImportFileTaskStatus
status
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
statusReportS3Bucket
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
statusReportS3Key

instance Prelude.NFData ImportFileTaskInformation where
  rnf :: ImportFileTaskInformation -> ()
rnf ImportFileTaskInformation' {Maybe Int
Maybe Text
Maybe POSIX
Maybe ImportFileTaskStatus
statusReportS3Key :: Maybe Text
statusReportS3Bucket :: Maybe Text
status :: Maybe ImportFileTaskStatus
startTime :: Maybe POSIX
numberOfRecordsSuccess :: Maybe Int
numberOfRecordsFailed :: Maybe Int
inputS3Key :: Maybe Text
inputS3Bucket :: Maybe Text
importName :: Maybe Text
id :: Maybe Text
completionTime :: Maybe POSIX
$sel:statusReportS3Key:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
$sel:statusReportS3Bucket:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
$sel:status:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe ImportFileTaskStatus
$sel:startTime:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe POSIX
$sel:numberOfRecordsSuccess:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Int
$sel:numberOfRecordsFailed:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Int
$sel:inputS3Key:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
$sel:inputS3Bucket:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
$sel:importName:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
$sel:id:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe Text
$sel:completionTime:ImportFileTaskInformation' :: ImportFileTaskInformation -> Maybe POSIX
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
completionTime
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
id
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
importName
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
inputS3Bucket
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
inputS3Key
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
numberOfRecordsFailed
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
numberOfRecordsSuccess
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
startTime
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ImportFileTaskStatus
status
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
statusReportS3Bucket
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
statusReportS3Key