{-# 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 #-}

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

-- |
-- Module      : Amazonka.Omics.GetRunTask
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Gets information about a workflow run task.
module Amazonka.Omics.GetRunTask
  ( -- * Creating a Request
    GetRunTask (..),
    newGetRunTask,

    -- * Request Lenses
    getRunTask_id,
    getRunTask_taskId,

    -- * Destructuring the Response
    GetRunTaskResponse (..),
    newGetRunTaskResponse,

    -- * Response Lenses
    getRunTaskResponse_cpus,
    getRunTaskResponse_creationTime,
    getRunTaskResponse_logStream,
    getRunTaskResponse_memory,
    getRunTaskResponse_name,
    getRunTaskResponse_startTime,
    getRunTaskResponse_status,
    getRunTaskResponse_statusMessage,
    getRunTaskResponse_stopTime,
    getRunTaskResponse_taskId,
    getRunTaskResponse_httpStatus,
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Omics.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response

-- | /See:/ 'newGetRunTask' smart constructor.
data GetRunTask = GetRunTask'
  { -- | The task\'s ID.
    GetRunTask -> Text
id :: Prelude.Text,
    -- | The task\'s ID.
    GetRunTask -> Text
taskId :: Prelude.Text
  }
  deriving (GetRunTask -> GetRunTask -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetRunTask -> GetRunTask -> Bool
$c/= :: GetRunTask -> GetRunTask -> Bool
== :: GetRunTask -> GetRunTask -> Bool
$c== :: GetRunTask -> GetRunTask -> Bool
Prelude.Eq, ReadPrec [GetRunTask]
ReadPrec GetRunTask
Int -> ReadS GetRunTask
ReadS [GetRunTask]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetRunTask]
$creadListPrec :: ReadPrec [GetRunTask]
readPrec :: ReadPrec GetRunTask
$creadPrec :: ReadPrec GetRunTask
readList :: ReadS [GetRunTask]
$creadList :: ReadS [GetRunTask]
readsPrec :: Int -> ReadS GetRunTask
$creadsPrec :: Int -> ReadS GetRunTask
Prelude.Read, Int -> GetRunTask -> ShowS
[GetRunTask] -> ShowS
GetRunTask -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetRunTask] -> ShowS
$cshowList :: [GetRunTask] -> ShowS
show :: GetRunTask -> String
$cshow :: GetRunTask -> String
showsPrec :: Int -> GetRunTask -> ShowS
$cshowsPrec :: Int -> GetRunTask -> ShowS
Prelude.Show, forall x. Rep GetRunTask x -> GetRunTask
forall x. GetRunTask -> Rep GetRunTask x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetRunTask x -> GetRunTask
$cfrom :: forall x. GetRunTask -> Rep GetRunTask x
Prelude.Generic)

-- |
-- Create a value of 'GetRunTask' 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:
--
-- 'id', 'getRunTask_id' - The task\'s ID.
--
-- 'taskId', 'getRunTask_taskId' - The task\'s ID.
newGetRunTask ::
  -- | 'id'
  Prelude.Text ->
  -- | 'taskId'
  Prelude.Text ->
  GetRunTask
newGetRunTask :: Text -> Text -> GetRunTask
newGetRunTask Text
pId_ Text
pTaskId_ =
  GetRunTask' {$sel:id:GetRunTask' :: Text
id = Text
pId_, $sel:taskId:GetRunTask' :: Text
taskId = Text
pTaskId_}

-- | The task\'s ID.
getRunTask_id :: Lens.Lens' GetRunTask Prelude.Text
getRunTask_id :: Lens' GetRunTask Text
getRunTask_id = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTask' {Text
id :: Text
$sel:id:GetRunTask' :: GetRunTask -> Text
id} -> Text
id) (\s :: GetRunTask
s@GetRunTask' {} Text
a -> GetRunTask
s {$sel:id:GetRunTask' :: Text
id = Text
a} :: GetRunTask)

-- | The task\'s ID.
getRunTask_taskId :: Lens.Lens' GetRunTask Prelude.Text
getRunTask_taskId :: Lens' GetRunTask Text
getRunTask_taskId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTask' {Text
taskId :: Text
$sel:taskId:GetRunTask' :: GetRunTask -> Text
taskId} -> Text
taskId) (\s :: GetRunTask
s@GetRunTask' {} Text
a -> GetRunTask
s {$sel:taskId:GetRunTask' :: Text
taskId = Text
a} :: GetRunTask)

instance Core.AWSRequest GetRunTask where
  type AWSResponse GetRunTask = GetRunTaskResponse
  request :: (Service -> Service) -> GetRunTask -> Request GetRunTask
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 GetRunTask
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse GetRunTask)))
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 ->
          Maybe Natural
-> Maybe ISO8601
-> Maybe Text
-> Maybe Natural
-> Maybe Text
-> Maybe ISO8601
-> Maybe TaskStatus
-> Maybe Text
-> Maybe ISO8601
-> Maybe Text
-> Int
-> GetRunTaskResponse
GetRunTaskResponse'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"cpus")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"creationTime")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"logStream")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"memory")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"name")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (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 -> Either String (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 -> Either String (Maybe a)
Data..?> Key
"statusMessage")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"stopTime")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"taskId")
            forall (f :: * -> *) a b. Applicative f => 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))
      )

instance Prelude.Hashable GetRunTask where
  hashWithSalt :: Int -> GetRunTask -> Int
hashWithSalt Int
_salt GetRunTask' {Text
taskId :: Text
id :: Text
$sel:taskId:GetRunTask' :: GetRunTask -> Text
$sel:id:GetRunTask' :: GetRunTask -> Text
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
id
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
taskId

instance Prelude.NFData GetRunTask where
  rnf :: GetRunTask -> ()
rnf GetRunTask' {Text
taskId :: Text
id :: Text
$sel:taskId:GetRunTask' :: GetRunTask -> Text
$sel:id:GetRunTask' :: GetRunTask -> Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Text
id seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
taskId

instance Data.ToHeaders GetRunTask where
  toHeaders :: GetRunTask -> 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 GetRunTask where
  toPath :: GetRunTask -> ByteString
toPath GetRunTask' {Text
taskId :: Text
id :: Text
$sel:taskId:GetRunTask' :: GetRunTask -> Text
$sel:id:GetRunTask' :: GetRunTask -> Text
..} =
    forall a. Monoid a => [a] -> a
Prelude.mconcat
      [ByteString
"/run/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
id, ByteString
"/task/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
taskId]

instance Data.ToQuery GetRunTask where
  toQuery :: GetRunTask -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty

-- | /See:/ 'newGetRunTaskResponse' smart constructor.
data GetRunTaskResponse = GetRunTaskResponse'
  { -- | The task\'s CPU usage.
    GetRunTaskResponse -> Maybe Natural
cpus :: Prelude.Maybe Prelude.Natural,
    -- | When the task was created.
    GetRunTaskResponse -> Maybe ISO8601
creationTime :: Prelude.Maybe Data.ISO8601,
    -- | The task\'s log stream.
    GetRunTaskResponse -> Maybe Text
logStream :: Prelude.Maybe Prelude.Text,
    -- | The task\'s memory setting.
    GetRunTaskResponse -> Maybe Natural
memory :: Prelude.Maybe Prelude.Natural,
    -- | The task\'s name.
    GetRunTaskResponse -> Maybe Text
name :: Prelude.Maybe Prelude.Text,
    -- | The task\'s start time.
    GetRunTaskResponse -> Maybe ISO8601
startTime :: Prelude.Maybe Data.ISO8601,
    -- | The task\'s status.
    GetRunTaskResponse -> Maybe TaskStatus
status :: Prelude.Maybe TaskStatus,
    -- | The task\'s status message.
    GetRunTaskResponse -> Maybe Text
statusMessage :: Prelude.Maybe Prelude.Text,
    -- | The task\'s stop time.
    GetRunTaskResponse -> Maybe ISO8601
stopTime :: Prelude.Maybe Data.ISO8601,
    -- | The task\'s ID.
    GetRunTaskResponse -> Maybe Text
taskId :: Prelude.Maybe Prelude.Text,
    -- | The response's http status code.
    GetRunTaskResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (GetRunTaskResponse -> GetRunTaskResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetRunTaskResponse -> GetRunTaskResponse -> Bool
$c/= :: GetRunTaskResponse -> GetRunTaskResponse -> Bool
== :: GetRunTaskResponse -> GetRunTaskResponse -> Bool
$c== :: GetRunTaskResponse -> GetRunTaskResponse -> Bool
Prelude.Eq, ReadPrec [GetRunTaskResponse]
ReadPrec GetRunTaskResponse
Int -> ReadS GetRunTaskResponse
ReadS [GetRunTaskResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetRunTaskResponse]
$creadListPrec :: ReadPrec [GetRunTaskResponse]
readPrec :: ReadPrec GetRunTaskResponse
$creadPrec :: ReadPrec GetRunTaskResponse
readList :: ReadS [GetRunTaskResponse]
$creadList :: ReadS [GetRunTaskResponse]
readsPrec :: Int -> ReadS GetRunTaskResponse
$creadsPrec :: Int -> ReadS GetRunTaskResponse
Prelude.Read, Int -> GetRunTaskResponse -> ShowS
[GetRunTaskResponse] -> ShowS
GetRunTaskResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetRunTaskResponse] -> ShowS
$cshowList :: [GetRunTaskResponse] -> ShowS
show :: GetRunTaskResponse -> String
$cshow :: GetRunTaskResponse -> String
showsPrec :: Int -> GetRunTaskResponse -> ShowS
$cshowsPrec :: Int -> GetRunTaskResponse -> ShowS
Prelude.Show, forall x. Rep GetRunTaskResponse x -> GetRunTaskResponse
forall x. GetRunTaskResponse -> Rep GetRunTaskResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetRunTaskResponse x -> GetRunTaskResponse
$cfrom :: forall x. GetRunTaskResponse -> Rep GetRunTaskResponse x
Prelude.Generic)

-- |
-- Create a value of 'GetRunTaskResponse' 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:
--
-- 'cpus', 'getRunTaskResponse_cpus' - The task\'s CPU usage.
--
-- 'creationTime', 'getRunTaskResponse_creationTime' - When the task was created.
--
-- 'logStream', 'getRunTaskResponse_logStream' - The task\'s log stream.
--
-- 'memory', 'getRunTaskResponse_memory' - The task\'s memory setting.
--
-- 'name', 'getRunTaskResponse_name' - The task\'s name.
--
-- 'startTime', 'getRunTaskResponse_startTime' - The task\'s start time.
--
-- 'status', 'getRunTaskResponse_status' - The task\'s status.
--
-- 'statusMessage', 'getRunTaskResponse_statusMessage' - The task\'s status message.
--
-- 'stopTime', 'getRunTaskResponse_stopTime' - The task\'s stop time.
--
-- 'taskId', 'getRunTaskResponse_taskId' - The task\'s ID.
--
-- 'httpStatus', 'getRunTaskResponse_httpStatus' - The response's http status code.
newGetRunTaskResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  GetRunTaskResponse
newGetRunTaskResponse :: Int -> GetRunTaskResponse
newGetRunTaskResponse Int
pHttpStatus_ =
  GetRunTaskResponse'
    { $sel:cpus:GetRunTaskResponse' :: Maybe Natural
cpus = forall a. Maybe a
Prelude.Nothing,
      $sel:creationTime:GetRunTaskResponse' :: Maybe ISO8601
creationTime = forall a. Maybe a
Prelude.Nothing,
      $sel:logStream:GetRunTaskResponse' :: Maybe Text
logStream = forall a. Maybe a
Prelude.Nothing,
      $sel:memory:GetRunTaskResponse' :: Maybe Natural
memory = forall a. Maybe a
Prelude.Nothing,
      $sel:name:GetRunTaskResponse' :: Maybe Text
name = forall a. Maybe a
Prelude.Nothing,
      $sel:startTime:GetRunTaskResponse' :: Maybe ISO8601
startTime = forall a. Maybe a
Prelude.Nothing,
      $sel:status:GetRunTaskResponse' :: Maybe TaskStatus
status = forall a. Maybe a
Prelude.Nothing,
      $sel:statusMessage:GetRunTaskResponse' :: Maybe Text
statusMessage = forall a. Maybe a
Prelude.Nothing,
      $sel:stopTime:GetRunTaskResponse' :: Maybe ISO8601
stopTime = forall a. Maybe a
Prelude.Nothing,
      $sel:taskId:GetRunTaskResponse' :: Maybe Text
taskId = forall a. Maybe a
Prelude.Nothing,
      $sel:httpStatus:GetRunTaskResponse' :: Int
httpStatus = Int
pHttpStatus_
    }

-- | The task\'s CPU usage.
getRunTaskResponse_cpus :: Lens.Lens' GetRunTaskResponse (Prelude.Maybe Prelude.Natural)
getRunTaskResponse_cpus :: Lens' GetRunTaskResponse (Maybe Natural)
getRunTaskResponse_cpus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTaskResponse' {Maybe Natural
cpus :: Maybe Natural
$sel:cpus:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe Natural
cpus} -> Maybe Natural
cpus) (\s :: GetRunTaskResponse
s@GetRunTaskResponse' {} Maybe Natural
a -> GetRunTaskResponse
s {$sel:cpus:GetRunTaskResponse' :: Maybe Natural
cpus = Maybe Natural
a} :: GetRunTaskResponse)

-- | When the task was created.
getRunTaskResponse_creationTime :: Lens.Lens' GetRunTaskResponse (Prelude.Maybe Prelude.UTCTime)
getRunTaskResponse_creationTime :: Lens' GetRunTaskResponse (Maybe UTCTime)
getRunTaskResponse_creationTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTaskResponse' {Maybe ISO8601
creationTime :: Maybe ISO8601
$sel:creationTime:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe ISO8601
creationTime} -> Maybe ISO8601
creationTime) (\s :: GetRunTaskResponse
s@GetRunTaskResponse' {} Maybe ISO8601
a -> GetRunTaskResponse
s {$sel:creationTime:GetRunTaskResponse' :: Maybe ISO8601
creationTime = Maybe ISO8601
a} :: GetRunTaskResponse) 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 task\'s log stream.
getRunTaskResponse_logStream :: Lens.Lens' GetRunTaskResponse (Prelude.Maybe Prelude.Text)
getRunTaskResponse_logStream :: Lens' GetRunTaskResponse (Maybe Text)
getRunTaskResponse_logStream = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTaskResponse' {Maybe Text
logStream :: Maybe Text
$sel:logStream:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe Text
logStream} -> Maybe Text
logStream) (\s :: GetRunTaskResponse
s@GetRunTaskResponse' {} Maybe Text
a -> GetRunTaskResponse
s {$sel:logStream:GetRunTaskResponse' :: Maybe Text
logStream = Maybe Text
a} :: GetRunTaskResponse)

-- | The task\'s memory setting.
getRunTaskResponse_memory :: Lens.Lens' GetRunTaskResponse (Prelude.Maybe Prelude.Natural)
getRunTaskResponse_memory :: Lens' GetRunTaskResponse (Maybe Natural)
getRunTaskResponse_memory = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTaskResponse' {Maybe Natural
memory :: Maybe Natural
$sel:memory:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe Natural
memory} -> Maybe Natural
memory) (\s :: GetRunTaskResponse
s@GetRunTaskResponse' {} Maybe Natural
a -> GetRunTaskResponse
s {$sel:memory:GetRunTaskResponse' :: Maybe Natural
memory = Maybe Natural
a} :: GetRunTaskResponse)

-- | The task\'s name.
getRunTaskResponse_name :: Lens.Lens' GetRunTaskResponse (Prelude.Maybe Prelude.Text)
getRunTaskResponse_name :: Lens' GetRunTaskResponse (Maybe Text)
getRunTaskResponse_name = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTaskResponse' {Maybe Text
name :: Maybe Text
$sel:name:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe Text
name} -> Maybe Text
name) (\s :: GetRunTaskResponse
s@GetRunTaskResponse' {} Maybe Text
a -> GetRunTaskResponse
s {$sel:name:GetRunTaskResponse' :: Maybe Text
name = Maybe Text
a} :: GetRunTaskResponse)

-- | The task\'s start time.
getRunTaskResponse_startTime :: Lens.Lens' GetRunTaskResponse (Prelude.Maybe Prelude.UTCTime)
getRunTaskResponse_startTime :: Lens' GetRunTaskResponse (Maybe UTCTime)
getRunTaskResponse_startTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTaskResponse' {Maybe ISO8601
startTime :: Maybe ISO8601
$sel:startTime:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe ISO8601
startTime} -> Maybe ISO8601
startTime) (\s :: GetRunTaskResponse
s@GetRunTaskResponse' {} Maybe ISO8601
a -> GetRunTaskResponse
s {$sel:startTime:GetRunTaskResponse' :: Maybe ISO8601
startTime = Maybe ISO8601
a} :: GetRunTaskResponse) 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 task\'s status.
getRunTaskResponse_status :: Lens.Lens' GetRunTaskResponse (Prelude.Maybe TaskStatus)
getRunTaskResponse_status :: Lens' GetRunTaskResponse (Maybe TaskStatus)
getRunTaskResponse_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTaskResponse' {Maybe TaskStatus
status :: Maybe TaskStatus
$sel:status:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe TaskStatus
status} -> Maybe TaskStatus
status) (\s :: GetRunTaskResponse
s@GetRunTaskResponse' {} Maybe TaskStatus
a -> GetRunTaskResponse
s {$sel:status:GetRunTaskResponse' :: Maybe TaskStatus
status = Maybe TaskStatus
a} :: GetRunTaskResponse)

-- | The task\'s status message.
getRunTaskResponse_statusMessage :: Lens.Lens' GetRunTaskResponse (Prelude.Maybe Prelude.Text)
getRunTaskResponse_statusMessage :: Lens' GetRunTaskResponse (Maybe Text)
getRunTaskResponse_statusMessage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTaskResponse' {Maybe Text
statusMessage :: Maybe Text
$sel:statusMessage:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe Text
statusMessage} -> Maybe Text
statusMessage) (\s :: GetRunTaskResponse
s@GetRunTaskResponse' {} Maybe Text
a -> GetRunTaskResponse
s {$sel:statusMessage:GetRunTaskResponse' :: Maybe Text
statusMessage = Maybe Text
a} :: GetRunTaskResponse)

-- | The task\'s stop time.
getRunTaskResponse_stopTime :: Lens.Lens' GetRunTaskResponse (Prelude.Maybe Prelude.UTCTime)
getRunTaskResponse_stopTime :: Lens' GetRunTaskResponse (Maybe UTCTime)
getRunTaskResponse_stopTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTaskResponse' {Maybe ISO8601
stopTime :: Maybe ISO8601
$sel:stopTime:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe ISO8601
stopTime} -> Maybe ISO8601
stopTime) (\s :: GetRunTaskResponse
s@GetRunTaskResponse' {} Maybe ISO8601
a -> GetRunTaskResponse
s {$sel:stopTime:GetRunTaskResponse' :: Maybe ISO8601
stopTime = Maybe ISO8601
a} :: GetRunTaskResponse) 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 task\'s ID.
getRunTaskResponse_taskId :: Lens.Lens' GetRunTaskResponse (Prelude.Maybe Prelude.Text)
getRunTaskResponse_taskId :: Lens' GetRunTaskResponse (Maybe Text)
getRunTaskResponse_taskId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTaskResponse' {Maybe Text
taskId :: Maybe Text
$sel:taskId:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe Text
taskId} -> Maybe Text
taskId) (\s :: GetRunTaskResponse
s@GetRunTaskResponse' {} Maybe Text
a -> GetRunTaskResponse
s {$sel:taskId:GetRunTaskResponse' :: Maybe Text
taskId = Maybe Text
a} :: GetRunTaskResponse)

-- | The response's http status code.
getRunTaskResponse_httpStatus :: Lens.Lens' GetRunTaskResponse Prelude.Int
getRunTaskResponse_httpStatus :: Lens' GetRunTaskResponse Int
getRunTaskResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetRunTaskResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetRunTaskResponse' :: GetRunTaskResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetRunTaskResponse
s@GetRunTaskResponse' {} Int
a -> GetRunTaskResponse
s {$sel:httpStatus:GetRunTaskResponse' :: Int
httpStatus = Int
a} :: GetRunTaskResponse)

instance Prelude.NFData GetRunTaskResponse where
  rnf :: GetRunTaskResponse -> ()
rnf GetRunTaskResponse' {Int
Maybe Natural
Maybe Text
Maybe ISO8601
Maybe TaskStatus
httpStatus :: Int
taskId :: Maybe Text
stopTime :: Maybe ISO8601
statusMessage :: Maybe Text
status :: Maybe TaskStatus
startTime :: Maybe ISO8601
name :: Maybe Text
memory :: Maybe Natural
logStream :: Maybe Text
creationTime :: Maybe ISO8601
cpus :: Maybe Natural
$sel:httpStatus:GetRunTaskResponse' :: GetRunTaskResponse -> Int
$sel:taskId:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe Text
$sel:stopTime:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe ISO8601
$sel:statusMessage:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe Text
$sel:status:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe TaskStatus
$sel:startTime:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe ISO8601
$sel:name:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe Text
$sel:memory:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe Natural
$sel:logStream:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe Text
$sel:creationTime:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe ISO8601
$sel:cpus:GetRunTaskResponse' :: GetRunTaskResponse -> Maybe Natural
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
cpus
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ISO8601
creationTime
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
logStream
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
memory
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
name
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ISO8601
startTime
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe TaskStatus
status
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
statusMessage
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ISO8601
stopTime
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
taskId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus