{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.IotTwinMaker.GetSyncJob
(
GetSyncJob (..),
newGetSyncJob,
getSyncJob_workspaceId,
getSyncJob_syncSource,
GetSyncJobResponse (..),
newGetSyncJobResponse,
getSyncJobResponse_httpStatus,
getSyncJobResponse_arn,
getSyncJobResponse_workspaceId,
getSyncJobResponse_syncSource,
getSyncJobResponse_syncRole,
getSyncJobResponse_status,
getSyncJobResponse_creationDateTime,
getSyncJobResponse_updateDateTime,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.IotTwinMaker.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data GetSyncJob = GetSyncJob'
{
GetSyncJob -> Maybe Text
workspaceId :: Prelude.Maybe Prelude.Text,
GetSyncJob -> Text
syncSource :: Prelude.Text
}
deriving (GetSyncJob -> GetSyncJob -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetSyncJob -> GetSyncJob -> Bool
$c/= :: GetSyncJob -> GetSyncJob -> Bool
== :: GetSyncJob -> GetSyncJob -> Bool
$c== :: GetSyncJob -> GetSyncJob -> Bool
Prelude.Eq, ReadPrec [GetSyncJob]
ReadPrec GetSyncJob
Int -> ReadS GetSyncJob
ReadS [GetSyncJob]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetSyncJob]
$creadListPrec :: ReadPrec [GetSyncJob]
readPrec :: ReadPrec GetSyncJob
$creadPrec :: ReadPrec GetSyncJob
readList :: ReadS [GetSyncJob]
$creadList :: ReadS [GetSyncJob]
readsPrec :: Int -> ReadS GetSyncJob
$creadsPrec :: Int -> ReadS GetSyncJob
Prelude.Read, Int -> GetSyncJob -> ShowS
[GetSyncJob] -> ShowS
GetSyncJob -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetSyncJob] -> ShowS
$cshowList :: [GetSyncJob] -> ShowS
show :: GetSyncJob -> String
$cshow :: GetSyncJob -> String
showsPrec :: Int -> GetSyncJob -> ShowS
$cshowsPrec :: Int -> GetSyncJob -> ShowS
Prelude.Show, forall x. Rep GetSyncJob x -> GetSyncJob
forall x. GetSyncJob -> Rep GetSyncJob x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetSyncJob x -> GetSyncJob
$cfrom :: forall x. GetSyncJob -> Rep GetSyncJob x
Prelude.Generic)
newGetSyncJob ::
Prelude.Text ->
GetSyncJob
newGetSyncJob :: Text -> GetSyncJob
newGetSyncJob Text
pSyncSource_ =
GetSyncJob'
{ $sel:workspaceId:GetSyncJob' :: Maybe Text
workspaceId = forall a. Maybe a
Prelude.Nothing,
$sel:syncSource:GetSyncJob' :: Text
syncSource = Text
pSyncSource_
}
getSyncJob_workspaceId :: Lens.Lens' GetSyncJob (Prelude.Maybe Prelude.Text)
getSyncJob_workspaceId :: Lens' GetSyncJob (Maybe Text)
getSyncJob_workspaceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSyncJob' {Maybe Text
workspaceId :: Maybe Text
$sel:workspaceId:GetSyncJob' :: GetSyncJob -> Maybe Text
workspaceId} -> Maybe Text
workspaceId) (\s :: GetSyncJob
s@GetSyncJob' {} Maybe Text
a -> GetSyncJob
s {$sel:workspaceId:GetSyncJob' :: Maybe Text
workspaceId = Maybe Text
a} :: GetSyncJob)
getSyncJob_syncSource :: Lens.Lens' GetSyncJob Prelude.Text
getSyncJob_syncSource :: Lens' GetSyncJob Text
getSyncJob_syncSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSyncJob' {Text
syncSource :: Text
$sel:syncSource:GetSyncJob' :: GetSyncJob -> Text
syncSource} -> Text
syncSource) (\s :: GetSyncJob
s@GetSyncJob' {} Text
a -> GetSyncJob
s {$sel:syncSource:GetSyncJob' :: Text
syncSource = Text
a} :: GetSyncJob)
instance Core.AWSRequest GetSyncJob where
type AWSResponse GetSyncJob = GetSyncJobResponse
request :: (Service -> Service) -> GetSyncJob -> Request GetSyncJob
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.get (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetSyncJob
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse GetSyncJob)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Int
-> Text
-> Text
-> Text
-> Text
-> SyncJobStatus
-> POSIX
-> POSIX
-> GetSyncJobResponse
GetSyncJobResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"arn")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"workspaceId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"syncSource")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"syncRole")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String 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 -> Either String a
Data..:> Key
"creationDateTime")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"updateDateTime")
)
instance Prelude.Hashable GetSyncJob where
hashWithSalt :: Int -> GetSyncJob -> Int
hashWithSalt Int
_salt GetSyncJob' {Maybe Text
Text
syncSource :: Text
workspaceId :: Maybe Text
$sel:syncSource:GetSyncJob' :: GetSyncJob -> Text
$sel:workspaceId:GetSyncJob' :: GetSyncJob -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
workspaceId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
syncSource
instance Prelude.NFData GetSyncJob where
rnf :: GetSyncJob -> ()
rnf GetSyncJob' {Maybe Text
Text
syncSource :: Text
workspaceId :: Maybe Text
$sel:syncSource:GetSyncJob' :: GetSyncJob -> Text
$sel:workspaceId:GetSyncJob' :: GetSyncJob -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
workspaceId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
syncSource
instance Data.ToHeaders GetSyncJob where
toHeaders :: GetSyncJob -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToPath GetSyncJob where
toPath :: GetSyncJob -> ByteString
toPath GetSyncJob' {Maybe Text
Text
syncSource :: Text
workspaceId :: Maybe Text
$sel:syncSource:GetSyncJob' :: GetSyncJob -> Text
$sel:workspaceId:GetSyncJob' :: GetSyncJob -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"/sync-jobs/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
syncSource]
instance Data.ToQuery GetSyncJob where
toQuery :: GetSyncJob -> QueryString
toQuery GetSyncJob' {Maybe Text
Text
syncSource :: Text
workspaceId :: Maybe Text
$sel:syncSource:GetSyncJob' :: GetSyncJob -> Text
$sel:workspaceId:GetSyncJob' :: GetSyncJob -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat [ByteString
"workspace" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
workspaceId]
data GetSyncJobResponse = GetSyncJobResponse'
{
GetSyncJobResponse -> Int
httpStatus :: Prelude.Int,
GetSyncJobResponse -> Text
arn :: Prelude.Text,
GetSyncJobResponse -> Text
workspaceId :: Prelude.Text,
GetSyncJobResponse -> Text
syncSource :: Prelude.Text,
GetSyncJobResponse -> Text
syncRole :: Prelude.Text,
GetSyncJobResponse -> SyncJobStatus
status :: SyncJobStatus,
GetSyncJobResponse -> POSIX
creationDateTime :: Data.POSIX,
GetSyncJobResponse -> POSIX
updateDateTime :: Data.POSIX
}
deriving (GetSyncJobResponse -> GetSyncJobResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetSyncJobResponse -> GetSyncJobResponse -> Bool
$c/= :: GetSyncJobResponse -> GetSyncJobResponse -> Bool
== :: GetSyncJobResponse -> GetSyncJobResponse -> Bool
$c== :: GetSyncJobResponse -> GetSyncJobResponse -> Bool
Prelude.Eq, ReadPrec [GetSyncJobResponse]
ReadPrec GetSyncJobResponse
Int -> ReadS GetSyncJobResponse
ReadS [GetSyncJobResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetSyncJobResponse]
$creadListPrec :: ReadPrec [GetSyncJobResponse]
readPrec :: ReadPrec GetSyncJobResponse
$creadPrec :: ReadPrec GetSyncJobResponse
readList :: ReadS [GetSyncJobResponse]
$creadList :: ReadS [GetSyncJobResponse]
readsPrec :: Int -> ReadS GetSyncJobResponse
$creadsPrec :: Int -> ReadS GetSyncJobResponse
Prelude.Read, Int -> GetSyncJobResponse -> ShowS
[GetSyncJobResponse] -> ShowS
GetSyncJobResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetSyncJobResponse] -> ShowS
$cshowList :: [GetSyncJobResponse] -> ShowS
show :: GetSyncJobResponse -> String
$cshow :: GetSyncJobResponse -> String
showsPrec :: Int -> GetSyncJobResponse -> ShowS
$cshowsPrec :: Int -> GetSyncJobResponse -> ShowS
Prelude.Show, forall x. Rep GetSyncJobResponse x -> GetSyncJobResponse
forall x. GetSyncJobResponse -> Rep GetSyncJobResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetSyncJobResponse x -> GetSyncJobResponse
$cfrom :: forall x. GetSyncJobResponse -> Rep GetSyncJobResponse x
Prelude.Generic)
newGetSyncJobResponse ::
Prelude.Int ->
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
SyncJobStatus ->
Prelude.UTCTime ->
Prelude.UTCTime ->
GetSyncJobResponse
newGetSyncJobResponse :: Int
-> Text
-> Text
-> Text
-> Text
-> SyncJobStatus
-> UTCTime
-> UTCTime
-> GetSyncJobResponse
newGetSyncJobResponse
Int
pHttpStatus_
Text
pArn_
Text
pWorkspaceId_
Text
pSyncSource_
Text
pSyncRole_
SyncJobStatus
pStatus_
UTCTime
pCreationDateTime_
UTCTime
pUpdateDateTime_ =
GetSyncJobResponse'
{ $sel:httpStatus:GetSyncJobResponse' :: Int
httpStatus = Int
pHttpStatus_,
$sel:arn:GetSyncJobResponse' :: Text
arn = Text
pArn_,
$sel:workspaceId:GetSyncJobResponse' :: Text
workspaceId = Text
pWorkspaceId_,
$sel:syncSource:GetSyncJobResponse' :: Text
syncSource = Text
pSyncSource_,
$sel:syncRole:GetSyncJobResponse' :: Text
syncRole = Text
pSyncRole_,
$sel:status:GetSyncJobResponse' :: SyncJobStatus
status = SyncJobStatus
pStatus_,
$sel:creationDateTime:GetSyncJobResponse' :: POSIX
creationDateTime =
forall (a :: Format). Iso' (Time a) UTCTime
Data._Time forall t b. AReview t b -> b -> t
Lens.# UTCTime
pCreationDateTime_,
$sel:updateDateTime:GetSyncJobResponse' :: POSIX
updateDateTime = forall (a :: Format). Iso' (Time a) UTCTime
Data._Time forall t b. AReview t b -> b -> t
Lens.# UTCTime
pUpdateDateTime_
}
getSyncJobResponse_httpStatus :: Lens.Lens' GetSyncJobResponse Prelude.Int
getSyncJobResponse_httpStatus :: Lens' GetSyncJobResponse Int
getSyncJobResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSyncJobResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetSyncJobResponse' :: GetSyncJobResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetSyncJobResponse
s@GetSyncJobResponse' {} Int
a -> GetSyncJobResponse
s {$sel:httpStatus:GetSyncJobResponse' :: Int
httpStatus = Int
a} :: GetSyncJobResponse)
getSyncJobResponse_arn :: Lens.Lens' GetSyncJobResponse Prelude.Text
getSyncJobResponse_arn :: Lens' GetSyncJobResponse Text
getSyncJobResponse_arn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSyncJobResponse' {Text
arn :: Text
$sel:arn:GetSyncJobResponse' :: GetSyncJobResponse -> Text
arn} -> Text
arn) (\s :: GetSyncJobResponse
s@GetSyncJobResponse' {} Text
a -> GetSyncJobResponse
s {$sel:arn:GetSyncJobResponse' :: Text
arn = Text
a} :: GetSyncJobResponse)
getSyncJobResponse_workspaceId :: Lens.Lens' GetSyncJobResponse Prelude.Text
getSyncJobResponse_workspaceId :: Lens' GetSyncJobResponse Text
getSyncJobResponse_workspaceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSyncJobResponse' {Text
workspaceId :: Text
$sel:workspaceId:GetSyncJobResponse' :: GetSyncJobResponse -> Text
workspaceId} -> Text
workspaceId) (\s :: GetSyncJobResponse
s@GetSyncJobResponse' {} Text
a -> GetSyncJobResponse
s {$sel:workspaceId:GetSyncJobResponse' :: Text
workspaceId = Text
a} :: GetSyncJobResponse)
getSyncJobResponse_syncSource :: Lens.Lens' GetSyncJobResponse Prelude.Text
getSyncJobResponse_syncSource :: Lens' GetSyncJobResponse Text
getSyncJobResponse_syncSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSyncJobResponse' {Text
syncSource :: Text
$sel:syncSource:GetSyncJobResponse' :: GetSyncJobResponse -> Text
syncSource} -> Text
syncSource) (\s :: GetSyncJobResponse
s@GetSyncJobResponse' {} Text
a -> GetSyncJobResponse
s {$sel:syncSource:GetSyncJobResponse' :: Text
syncSource = Text
a} :: GetSyncJobResponse)
getSyncJobResponse_syncRole :: Lens.Lens' GetSyncJobResponse Prelude.Text
getSyncJobResponse_syncRole :: Lens' GetSyncJobResponse Text
getSyncJobResponse_syncRole = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSyncJobResponse' {Text
syncRole :: Text
$sel:syncRole:GetSyncJobResponse' :: GetSyncJobResponse -> Text
syncRole} -> Text
syncRole) (\s :: GetSyncJobResponse
s@GetSyncJobResponse' {} Text
a -> GetSyncJobResponse
s {$sel:syncRole:GetSyncJobResponse' :: Text
syncRole = Text
a} :: GetSyncJobResponse)
getSyncJobResponse_status :: Lens.Lens' GetSyncJobResponse SyncJobStatus
getSyncJobResponse_status :: Lens' GetSyncJobResponse SyncJobStatus
getSyncJobResponse_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSyncJobResponse' {SyncJobStatus
status :: SyncJobStatus
$sel:status:GetSyncJobResponse' :: GetSyncJobResponse -> SyncJobStatus
status} -> SyncJobStatus
status) (\s :: GetSyncJobResponse
s@GetSyncJobResponse' {} SyncJobStatus
a -> GetSyncJobResponse
s {$sel:status:GetSyncJobResponse' :: SyncJobStatus
status = SyncJobStatus
a} :: GetSyncJobResponse)
getSyncJobResponse_creationDateTime :: Lens.Lens' GetSyncJobResponse Prelude.UTCTime
getSyncJobResponse_creationDateTime :: Lens' GetSyncJobResponse UTCTime
getSyncJobResponse_creationDateTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSyncJobResponse' {POSIX
creationDateTime :: POSIX
$sel:creationDateTime:GetSyncJobResponse' :: GetSyncJobResponse -> POSIX
creationDateTime} -> POSIX
creationDateTime) (\s :: GetSyncJobResponse
s@GetSyncJobResponse' {} POSIX
a -> GetSyncJobResponse
s {$sel:creationDateTime:GetSyncJobResponse' :: POSIX
creationDateTime = POSIX
a} :: GetSyncJobResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (a :: Format). Iso' (Time a) UTCTime
Data._Time
getSyncJobResponse_updateDateTime :: Lens.Lens' GetSyncJobResponse Prelude.UTCTime
getSyncJobResponse_updateDateTime :: Lens' GetSyncJobResponse UTCTime
getSyncJobResponse_updateDateTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSyncJobResponse' {POSIX
updateDateTime :: POSIX
$sel:updateDateTime:GetSyncJobResponse' :: GetSyncJobResponse -> POSIX
updateDateTime} -> POSIX
updateDateTime) (\s :: GetSyncJobResponse
s@GetSyncJobResponse' {} POSIX
a -> GetSyncJobResponse
s {$sel:updateDateTime:GetSyncJobResponse' :: POSIX
updateDateTime = POSIX
a} :: GetSyncJobResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (a :: Format). Iso' (Time a) UTCTime
Data._Time
instance Prelude.NFData GetSyncJobResponse where
rnf :: GetSyncJobResponse -> ()
rnf GetSyncJobResponse' {Int
Text
POSIX
SyncJobStatus
updateDateTime :: POSIX
creationDateTime :: POSIX
status :: SyncJobStatus
syncRole :: Text
syncSource :: Text
workspaceId :: Text
arn :: Text
httpStatus :: Int
$sel:updateDateTime:GetSyncJobResponse' :: GetSyncJobResponse -> POSIX
$sel:creationDateTime:GetSyncJobResponse' :: GetSyncJobResponse -> POSIX
$sel:status:GetSyncJobResponse' :: GetSyncJobResponse -> SyncJobStatus
$sel:syncRole:GetSyncJobResponse' :: GetSyncJobResponse -> Text
$sel:syncSource:GetSyncJobResponse' :: GetSyncJobResponse -> Text
$sel:workspaceId:GetSyncJobResponse' :: GetSyncJobResponse -> Text
$sel:arn:GetSyncJobResponse' :: GetSyncJobResponse -> Text
$sel:httpStatus:GetSyncJobResponse' :: GetSyncJobResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
arn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
workspaceId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
syncSource
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
syncRole
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf SyncJobStatus
status
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf POSIX
creationDateTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf POSIX
updateDateTime