{-# 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.MigrationHubOrchestrator.GetWorkflow
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Get migration workflow.
module Amazonka.MigrationHubOrchestrator.GetWorkflow
  ( -- * Creating a Request
    GetWorkflow (..),
    newGetWorkflow,

    -- * Request Lenses
    getWorkflow_id,

    -- * Destructuring the Response
    GetWorkflowResponse (..),
    newGetWorkflowResponse,

    -- * Response Lenses
    getWorkflowResponse_adsApplicationConfigurationId,
    getWorkflowResponse_adsApplicationName,
    getWorkflowResponse_arn,
    getWorkflowResponse_completedSteps,
    getWorkflowResponse_creationTime,
    getWorkflowResponse_description,
    getWorkflowResponse_endTime,
    getWorkflowResponse_id,
    getWorkflowResponse_lastModifiedTime,
    getWorkflowResponse_lastStartTime,
    getWorkflowResponse_lastStopTime,
    getWorkflowResponse_name,
    getWorkflowResponse_status,
    getWorkflowResponse_statusMessage,
    getWorkflowResponse_tags,
    getWorkflowResponse_templateId,
    getWorkflowResponse_tools,
    getWorkflowResponse_totalSteps,
    getWorkflowResponse_workflowBucket,
    getWorkflowResponse_workflowInputs,
    getWorkflowResponse_httpStatus,
  )
where

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

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

-- |
-- Create a value of 'GetWorkflow' 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', 'getWorkflow_id' - The ID of the migration workflow.
newGetWorkflow ::
  -- | 'id'
  Prelude.Text ->
  GetWorkflow
newGetWorkflow :: Text -> GetWorkflow
newGetWorkflow Text
pId_ = GetWorkflow' {$sel:id:GetWorkflow' :: Text
id = Text
pId_}

-- | The ID of the migration workflow.
getWorkflow_id :: Lens.Lens' GetWorkflow Prelude.Text
getWorkflow_id :: Lens' GetWorkflow Text
getWorkflow_id = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflow' {Text
id :: Text
$sel:id:GetWorkflow' :: GetWorkflow -> Text
id} -> Text
id) (\s :: GetWorkflow
s@GetWorkflow' {} Text
a -> GetWorkflow
s {$sel:id:GetWorkflow' :: Text
id = Text
a} :: GetWorkflow)

instance Core.AWSRequest GetWorkflow where
  type AWSResponse GetWorkflow = GetWorkflowResponse
  request :: (Service -> Service) -> GetWorkflow -> Request GetWorkflow
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 GetWorkflow
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse GetWorkflow)))
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 Text
-> Maybe Text
-> Maybe Text
-> Maybe Int
-> Maybe POSIX
-> Maybe Text
-> Maybe POSIX
-> Maybe Text
-> Maybe POSIX
-> Maybe POSIX
-> Maybe POSIX
-> Maybe Text
-> Maybe MigrationWorkflowStatusEnum
-> Maybe Text
-> Maybe (HashMap Text Text)
-> Maybe Text
-> Maybe [Tool]
-> Maybe Int
-> Maybe Text
-> Maybe (Sensitive (HashMap Text StepInput))
-> Int
-> GetWorkflowResponse
GetWorkflowResponse'
            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
"adsApplicationConfigurationId")
            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
"adsApplicationName")
            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
"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 (Maybe a)
Data..?> Key
"completedSteps")
            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
"description")
            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
"endTime")
            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
"id")
            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
"lastModifiedTime")
            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
"lastStartTime")
            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
"lastStopTime")
            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
"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
"tags" forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty)
            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
"templateId")
            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
"tools" forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty)
            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
"totalSteps")
            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
"workflowBucket")
            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
"workflowInputs" forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty)
            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 GetWorkflow where
  hashWithSalt :: Int -> GetWorkflow -> Int
hashWithSalt Int
_salt GetWorkflow' {Text
id :: Text
$sel:id:GetWorkflow' :: GetWorkflow -> Text
..} =
    Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
id

instance Prelude.NFData GetWorkflow where
  rnf :: GetWorkflow -> ()
rnf GetWorkflow' {Text
id :: Text
$sel:id:GetWorkflow' :: GetWorkflow -> Text
..} = forall a. NFData a => a -> ()
Prelude.rnf Text
id

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

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

-- | /See:/ 'newGetWorkflowResponse' smart constructor.
data GetWorkflowResponse = GetWorkflowResponse'
  { -- | The configuration ID of the application configured in Application
    -- Discovery Service.
    GetWorkflowResponse -> Maybe Text
adsApplicationConfigurationId :: Prelude.Maybe Prelude.Text,
    -- | The name of the application configured in Application Discovery Service.
    GetWorkflowResponse -> Maybe Text
adsApplicationName :: Prelude.Maybe Prelude.Text,
    -- | The Amazon Resource Name (ARN) of the migration workflow.
    GetWorkflowResponse -> Maybe Text
arn :: Prelude.Maybe Prelude.Text,
    -- | Get a list of completed steps in the migration workflow.
    GetWorkflowResponse -> Maybe Int
completedSteps :: Prelude.Maybe Prelude.Int,
    -- | The time at which the migration workflow was created.
    GetWorkflowResponse -> Maybe POSIX
creationTime :: Prelude.Maybe Data.POSIX,
    -- | The description of the migration workflow.
    GetWorkflowResponse -> Maybe Text
description :: Prelude.Maybe Prelude.Text,
    -- | The time at which the migration workflow ended.
    GetWorkflowResponse -> Maybe POSIX
endTime :: Prelude.Maybe Data.POSIX,
    -- | The ID of the migration workflow.
    GetWorkflowResponse -> Maybe Text
id :: Prelude.Maybe Prelude.Text,
    -- | The time at which the migration workflow was last modified.
    GetWorkflowResponse -> Maybe POSIX
lastModifiedTime :: Prelude.Maybe Data.POSIX,
    -- | The time at which the migration workflow was last started.
    GetWorkflowResponse -> Maybe POSIX
lastStartTime :: Prelude.Maybe Data.POSIX,
    -- | The time at which the migration workflow was last stopped.
    GetWorkflowResponse -> Maybe POSIX
lastStopTime :: Prelude.Maybe Data.POSIX,
    -- | The name of the migration workflow.
    GetWorkflowResponse -> Maybe Text
name :: Prelude.Maybe Prelude.Text,
    -- | The status of the migration workflow.
    GetWorkflowResponse -> Maybe MigrationWorkflowStatusEnum
status :: Prelude.Maybe MigrationWorkflowStatusEnum,
    -- | The status message of the migration workflow.
    GetWorkflowResponse -> Maybe Text
statusMessage :: Prelude.Maybe Prelude.Text,
    -- | The tags added to the migration workflow.
    GetWorkflowResponse -> Maybe (HashMap Text Text)
tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),
    -- | The ID of the template.
    GetWorkflowResponse -> Maybe Text
templateId :: Prelude.Maybe Prelude.Text,
    -- | List of AWS services utilized in a migration workflow.
    GetWorkflowResponse -> Maybe [Tool]
tools :: Prelude.Maybe [Tool],
    -- | The total number of steps in the migration workflow.
    GetWorkflowResponse -> Maybe Int
totalSteps :: Prelude.Maybe Prelude.Int,
    -- | The Amazon S3 bucket where the migration logs are stored.
    GetWorkflowResponse -> Maybe Text
workflowBucket :: Prelude.Maybe Prelude.Text,
    -- | The inputs required for creating the migration workflow.
    GetWorkflowResponse -> Maybe (Sensitive (HashMap Text StepInput))
workflowInputs :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text StepInput)),
    -- | The response's http status code.
    GetWorkflowResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (GetWorkflowResponse -> GetWorkflowResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetWorkflowResponse -> GetWorkflowResponse -> Bool
$c/= :: GetWorkflowResponse -> GetWorkflowResponse -> Bool
== :: GetWorkflowResponse -> GetWorkflowResponse -> Bool
$c== :: GetWorkflowResponse -> GetWorkflowResponse -> Bool
Prelude.Eq, Int -> GetWorkflowResponse -> ShowS
[GetWorkflowResponse] -> ShowS
GetWorkflowResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetWorkflowResponse] -> ShowS
$cshowList :: [GetWorkflowResponse] -> ShowS
show :: GetWorkflowResponse -> String
$cshow :: GetWorkflowResponse -> String
showsPrec :: Int -> GetWorkflowResponse -> ShowS
$cshowsPrec :: Int -> GetWorkflowResponse -> ShowS
Prelude.Show, forall x. Rep GetWorkflowResponse x -> GetWorkflowResponse
forall x. GetWorkflowResponse -> Rep GetWorkflowResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetWorkflowResponse x -> GetWorkflowResponse
$cfrom :: forall x. GetWorkflowResponse -> Rep GetWorkflowResponse x
Prelude.Generic)

-- |
-- Create a value of 'GetWorkflowResponse' 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:
--
-- 'adsApplicationConfigurationId', 'getWorkflowResponse_adsApplicationConfigurationId' - The configuration ID of the application configured in Application
-- Discovery Service.
--
-- 'adsApplicationName', 'getWorkflowResponse_adsApplicationName' - The name of the application configured in Application Discovery Service.
--
-- 'arn', 'getWorkflowResponse_arn' - The Amazon Resource Name (ARN) of the migration workflow.
--
-- 'completedSteps', 'getWorkflowResponse_completedSteps' - Get a list of completed steps in the migration workflow.
--
-- 'creationTime', 'getWorkflowResponse_creationTime' - The time at which the migration workflow was created.
--
-- 'description', 'getWorkflowResponse_description' - The description of the migration workflow.
--
-- 'endTime', 'getWorkflowResponse_endTime' - The time at which the migration workflow ended.
--
-- 'id', 'getWorkflowResponse_id' - The ID of the migration workflow.
--
-- 'lastModifiedTime', 'getWorkflowResponse_lastModifiedTime' - The time at which the migration workflow was last modified.
--
-- 'lastStartTime', 'getWorkflowResponse_lastStartTime' - The time at which the migration workflow was last started.
--
-- 'lastStopTime', 'getWorkflowResponse_lastStopTime' - The time at which the migration workflow was last stopped.
--
-- 'name', 'getWorkflowResponse_name' - The name of the migration workflow.
--
-- 'status', 'getWorkflowResponse_status' - The status of the migration workflow.
--
-- 'statusMessage', 'getWorkflowResponse_statusMessage' - The status message of the migration workflow.
--
-- 'tags', 'getWorkflowResponse_tags' - The tags added to the migration workflow.
--
-- 'templateId', 'getWorkflowResponse_templateId' - The ID of the template.
--
-- 'tools', 'getWorkflowResponse_tools' - List of AWS services utilized in a migration workflow.
--
-- 'totalSteps', 'getWorkflowResponse_totalSteps' - The total number of steps in the migration workflow.
--
-- 'workflowBucket', 'getWorkflowResponse_workflowBucket' - The Amazon S3 bucket where the migration logs are stored.
--
-- 'workflowInputs', 'getWorkflowResponse_workflowInputs' - The inputs required for creating the migration workflow.
--
-- 'httpStatus', 'getWorkflowResponse_httpStatus' - The response's http status code.
newGetWorkflowResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  GetWorkflowResponse
newGetWorkflowResponse :: Int -> GetWorkflowResponse
newGetWorkflowResponse Int
pHttpStatus_ =
  GetWorkflowResponse'
    { $sel:adsApplicationConfigurationId:GetWorkflowResponse' :: Maybe Text
adsApplicationConfigurationId =
        forall a. Maybe a
Prelude.Nothing,
      $sel:adsApplicationName:GetWorkflowResponse' :: Maybe Text
adsApplicationName = forall a. Maybe a
Prelude.Nothing,
      $sel:arn:GetWorkflowResponse' :: Maybe Text
arn = forall a. Maybe a
Prelude.Nothing,
      $sel:completedSteps:GetWorkflowResponse' :: Maybe Int
completedSteps = forall a. Maybe a
Prelude.Nothing,
      $sel:creationTime:GetWorkflowResponse' :: Maybe POSIX
creationTime = forall a. Maybe a
Prelude.Nothing,
      $sel:description:GetWorkflowResponse' :: Maybe Text
description = forall a. Maybe a
Prelude.Nothing,
      $sel:endTime:GetWorkflowResponse' :: Maybe POSIX
endTime = forall a. Maybe a
Prelude.Nothing,
      $sel:id:GetWorkflowResponse' :: Maybe Text
id = forall a. Maybe a
Prelude.Nothing,
      $sel:lastModifiedTime:GetWorkflowResponse' :: Maybe POSIX
lastModifiedTime = forall a. Maybe a
Prelude.Nothing,
      $sel:lastStartTime:GetWorkflowResponse' :: Maybe POSIX
lastStartTime = forall a. Maybe a
Prelude.Nothing,
      $sel:lastStopTime:GetWorkflowResponse' :: Maybe POSIX
lastStopTime = forall a. Maybe a
Prelude.Nothing,
      $sel:name:GetWorkflowResponse' :: Maybe Text
name = forall a. Maybe a
Prelude.Nothing,
      $sel:status:GetWorkflowResponse' :: Maybe MigrationWorkflowStatusEnum
status = forall a. Maybe a
Prelude.Nothing,
      $sel:statusMessage:GetWorkflowResponse' :: Maybe Text
statusMessage = forall a. Maybe a
Prelude.Nothing,
      $sel:tags:GetWorkflowResponse' :: Maybe (HashMap Text Text)
tags = forall a. Maybe a
Prelude.Nothing,
      $sel:templateId:GetWorkflowResponse' :: Maybe Text
templateId = forall a. Maybe a
Prelude.Nothing,
      $sel:tools:GetWorkflowResponse' :: Maybe [Tool]
tools = forall a. Maybe a
Prelude.Nothing,
      $sel:totalSteps:GetWorkflowResponse' :: Maybe Int
totalSteps = forall a. Maybe a
Prelude.Nothing,
      $sel:workflowBucket:GetWorkflowResponse' :: Maybe Text
workflowBucket = forall a. Maybe a
Prelude.Nothing,
      $sel:workflowInputs:GetWorkflowResponse' :: Maybe (Sensitive (HashMap Text StepInput))
workflowInputs = forall a. Maybe a
Prelude.Nothing,
      $sel:httpStatus:GetWorkflowResponse' :: Int
httpStatus = Int
pHttpStatus_
    }

-- | The configuration ID of the application configured in Application
-- Discovery Service.
getWorkflowResponse_adsApplicationConfigurationId :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.Text)
getWorkflowResponse_adsApplicationConfigurationId :: Lens' GetWorkflowResponse (Maybe Text)
getWorkflowResponse_adsApplicationConfigurationId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe Text
adsApplicationConfigurationId :: Maybe Text
$sel:adsApplicationConfigurationId:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
adsApplicationConfigurationId} -> Maybe Text
adsApplicationConfigurationId) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe Text
a -> GetWorkflowResponse
s {$sel:adsApplicationConfigurationId:GetWorkflowResponse' :: Maybe Text
adsApplicationConfigurationId = Maybe Text
a} :: GetWorkflowResponse)

-- | The name of the application configured in Application Discovery Service.
getWorkflowResponse_adsApplicationName :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.Text)
getWorkflowResponse_adsApplicationName :: Lens' GetWorkflowResponse (Maybe Text)
getWorkflowResponse_adsApplicationName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe Text
adsApplicationName :: Maybe Text
$sel:adsApplicationName:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
adsApplicationName} -> Maybe Text
adsApplicationName) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe Text
a -> GetWorkflowResponse
s {$sel:adsApplicationName:GetWorkflowResponse' :: Maybe Text
adsApplicationName = Maybe Text
a} :: GetWorkflowResponse)

-- | The Amazon Resource Name (ARN) of the migration workflow.
getWorkflowResponse_arn :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.Text)
getWorkflowResponse_arn :: Lens' GetWorkflowResponse (Maybe Text)
getWorkflowResponse_arn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe Text
arn :: Maybe Text
$sel:arn:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
arn} -> Maybe Text
arn) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe Text
a -> GetWorkflowResponse
s {$sel:arn:GetWorkflowResponse' :: Maybe Text
arn = Maybe Text
a} :: GetWorkflowResponse)

-- | Get a list of completed steps in the migration workflow.
getWorkflowResponse_completedSteps :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.Int)
getWorkflowResponse_completedSteps :: Lens' GetWorkflowResponse (Maybe Int)
getWorkflowResponse_completedSteps = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe Int
completedSteps :: Maybe Int
$sel:completedSteps:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Int
completedSteps} -> Maybe Int
completedSteps) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe Int
a -> GetWorkflowResponse
s {$sel:completedSteps:GetWorkflowResponse' :: Maybe Int
completedSteps = Maybe Int
a} :: GetWorkflowResponse)

-- | The time at which the migration workflow was created.
getWorkflowResponse_creationTime :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.UTCTime)
getWorkflowResponse_creationTime :: Lens' GetWorkflowResponse (Maybe UTCTime)
getWorkflowResponse_creationTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe POSIX
creationTime :: Maybe POSIX
$sel:creationTime:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe POSIX
creationTime} -> Maybe POSIX
creationTime) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe POSIX
a -> GetWorkflowResponse
s {$sel:creationTime:GetWorkflowResponse' :: Maybe POSIX
creationTime = Maybe POSIX
a} :: GetWorkflowResponse) 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 description of the migration workflow.
getWorkflowResponse_description :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.Text)
getWorkflowResponse_description :: Lens' GetWorkflowResponse (Maybe Text)
getWorkflowResponse_description = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe Text
description :: Maybe Text
$sel:description:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
description} -> Maybe Text
description) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe Text
a -> GetWorkflowResponse
s {$sel:description:GetWorkflowResponse' :: Maybe Text
description = Maybe Text
a} :: GetWorkflowResponse)

-- | The time at which the migration workflow ended.
getWorkflowResponse_endTime :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.UTCTime)
getWorkflowResponse_endTime :: Lens' GetWorkflowResponse (Maybe UTCTime)
getWorkflowResponse_endTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe POSIX
endTime :: Maybe POSIX
$sel:endTime:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe POSIX
endTime} -> Maybe POSIX
endTime) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe POSIX
a -> GetWorkflowResponse
s {$sel:endTime:GetWorkflowResponse' :: Maybe POSIX
endTime = Maybe POSIX
a} :: GetWorkflowResponse) 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 migration workflow.
getWorkflowResponse_id :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.Text)
getWorkflowResponse_id :: Lens' GetWorkflowResponse (Maybe Text)
getWorkflowResponse_id = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe Text
id :: Maybe Text
$sel:id:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
id} -> Maybe Text
id) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe Text
a -> GetWorkflowResponse
s {$sel:id:GetWorkflowResponse' :: Maybe Text
id = Maybe Text
a} :: GetWorkflowResponse)

-- | The time at which the migration workflow was last modified.
getWorkflowResponse_lastModifiedTime :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.UTCTime)
getWorkflowResponse_lastModifiedTime :: Lens' GetWorkflowResponse (Maybe UTCTime)
getWorkflowResponse_lastModifiedTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe POSIX
lastModifiedTime :: Maybe POSIX
$sel:lastModifiedTime:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe POSIX
lastModifiedTime} -> Maybe POSIX
lastModifiedTime) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe POSIX
a -> GetWorkflowResponse
s {$sel:lastModifiedTime:GetWorkflowResponse' :: Maybe POSIX
lastModifiedTime = Maybe POSIX
a} :: GetWorkflowResponse) 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 time at which the migration workflow was last started.
getWorkflowResponse_lastStartTime :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.UTCTime)
getWorkflowResponse_lastStartTime :: Lens' GetWorkflowResponse (Maybe UTCTime)
getWorkflowResponse_lastStartTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe POSIX
lastStartTime :: Maybe POSIX
$sel:lastStartTime:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe POSIX
lastStartTime} -> Maybe POSIX
lastStartTime) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe POSIX
a -> GetWorkflowResponse
s {$sel:lastStartTime:GetWorkflowResponse' :: Maybe POSIX
lastStartTime = Maybe POSIX
a} :: GetWorkflowResponse) 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 time at which the migration workflow was last stopped.
getWorkflowResponse_lastStopTime :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.UTCTime)
getWorkflowResponse_lastStopTime :: Lens' GetWorkflowResponse (Maybe UTCTime)
getWorkflowResponse_lastStopTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe POSIX
lastStopTime :: Maybe POSIX
$sel:lastStopTime:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe POSIX
lastStopTime} -> Maybe POSIX
lastStopTime) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe POSIX
a -> GetWorkflowResponse
s {$sel:lastStopTime:GetWorkflowResponse' :: Maybe POSIX
lastStopTime = Maybe POSIX
a} :: GetWorkflowResponse) 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 name of the migration workflow.
getWorkflowResponse_name :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.Text)
getWorkflowResponse_name :: Lens' GetWorkflowResponse (Maybe Text)
getWorkflowResponse_name = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe Text
name :: Maybe Text
$sel:name:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
name} -> Maybe Text
name) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe Text
a -> GetWorkflowResponse
s {$sel:name:GetWorkflowResponse' :: Maybe Text
name = Maybe Text
a} :: GetWorkflowResponse)

-- | The status of the migration workflow.
getWorkflowResponse_status :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe MigrationWorkflowStatusEnum)
getWorkflowResponse_status :: Lens' GetWorkflowResponse (Maybe MigrationWorkflowStatusEnum)
getWorkflowResponse_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe MigrationWorkflowStatusEnum
status :: Maybe MigrationWorkflowStatusEnum
$sel:status:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe MigrationWorkflowStatusEnum
status} -> Maybe MigrationWorkflowStatusEnum
status) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe MigrationWorkflowStatusEnum
a -> GetWorkflowResponse
s {$sel:status:GetWorkflowResponse' :: Maybe MigrationWorkflowStatusEnum
status = Maybe MigrationWorkflowStatusEnum
a} :: GetWorkflowResponse)

-- | The status message of the migration workflow.
getWorkflowResponse_statusMessage :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.Text)
getWorkflowResponse_statusMessage :: Lens' GetWorkflowResponse (Maybe Text)
getWorkflowResponse_statusMessage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe Text
statusMessage :: Maybe Text
$sel:statusMessage:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
statusMessage} -> Maybe Text
statusMessage) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe Text
a -> GetWorkflowResponse
s {$sel:statusMessage:GetWorkflowResponse' :: Maybe Text
statusMessage = Maybe Text
a} :: GetWorkflowResponse)

-- | The tags added to the migration workflow.
getWorkflowResponse_tags :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))
getWorkflowResponse_tags :: Lens' GetWorkflowResponse (Maybe (HashMap Text Text))
getWorkflowResponse_tags = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe (HashMap Text Text)
tags :: Maybe (HashMap Text Text)
$sel:tags:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe (HashMap Text Text)
tags} -> Maybe (HashMap Text Text)
tags) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe (HashMap Text Text)
a -> GetWorkflowResponse
s {$sel:tags:GetWorkflowResponse' :: Maybe (HashMap Text Text)
tags = Maybe (HashMap Text Text)
a} :: GetWorkflowResponse) 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 s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced

-- | The ID of the template.
getWorkflowResponse_templateId :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.Text)
getWorkflowResponse_templateId :: Lens' GetWorkflowResponse (Maybe Text)
getWorkflowResponse_templateId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe Text
templateId :: Maybe Text
$sel:templateId:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
templateId} -> Maybe Text
templateId) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe Text
a -> GetWorkflowResponse
s {$sel:templateId:GetWorkflowResponse' :: Maybe Text
templateId = Maybe Text
a} :: GetWorkflowResponse)

-- | List of AWS services utilized in a migration workflow.
getWorkflowResponse_tools :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe [Tool])
getWorkflowResponse_tools :: Lens' GetWorkflowResponse (Maybe [Tool])
getWorkflowResponse_tools = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe [Tool]
tools :: Maybe [Tool]
$sel:tools:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe [Tool]
tools} -> Maybe [Tool]
tools) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe [Tool]
a -> GetWorkflowResponse
s {$sel:tools:GetWorkflowResponse' :: Maybe [Tool]
tools = Maybe [Tool]
a} :: GetWorkflowResponse) 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 s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced

-- | The total number of steps in the migration workflow.
getWorkflowResponse_totalSteps :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.Int)
getWorkflowResponse_totalSteps :: Lens' GetWorkflowResponse (Maybe Int)
getWorkflowResponse_totalSteps = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe Int
totalSteps :: Maybe Int
$sel:totalSteps:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Int
totalSteps} -> Maybe Int
totalSteps) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe Int
a -> GetWorkflowResponse
s {$sel:totalSteps:GetWorkflowResponse' :: Maybe Int
totalSteps = Maybe Int
a} :: GetWorkflowResponse)

-- | The Amazon S3 bucket where the migration logs are stored.
getWorkflowResponse_workflowBucket :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe Prelude.Text)
getWorkflowResponse_workflowBucket :: Lens' GetWorkflowResponse (Maybe Text)
getWorkflowResponse_workflowBucket = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe Text
workflowBucket :: Maybe Text
$sel:workflowBucket:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
workflowBucket} -> Maybe Text
workflowBucket) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe Text
a -> GetWorkflowResponse
s {$sel:workflowBucket:GetWorkflowResponse' :: Maybe Text
workflowBucket = Maybe Text
a} :: GetWorkflowResponse)

-- | The inputs required for creating the migration workflow.
getWorkflowResponse_workflowInputs :: Lens.Lens' GetWorkflowResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text StepInput))
getWorkflowResponse_workflowInputs :: Lens' GetWorkflowResponse (Maybe (HashMap Text StepInput))
getWorkflowResponse_workflowInputs = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetWorkflowResponse' {Maybe (Sensitive (HashMap Text StepInput))
workflowInputs :: Maybe (Sensitive (HashMap Text StepInput))
$sel:workflowInputs:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe (Sensitive (HashMap Text StepInput))
workflowInputs} -> Maybe (Sensitive (HashMap Text StepInput))
workflowInputs) (\s :: GetWorkflowResponse
s@GetWorkflowResponse' {} Maybe (Sensitive (HashMap Text StepInput))
a -> GetWorkflowResponse
s {$sel:workflowInputs:GetWorkflowResponse' :: Maybe (Sensitive (HashMap Text StepInput))
workflowInputs = Maybe (Sensitive (HashMap Text StepInput))
a} :: GetWorkflowResponse) 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. Iso' (Sensitive a) a
Data._Sensitive forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced)

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

instance Prelude.NFData GetWorkflowResponse where
  rnf :: GetWorkflowResponse -> ()
rnf GetWorkflowResponse' {Int
Maybe Int
Maybe [Tool]
Maybe Text
Maybe (HashMap Text Text)
Maybe (Sensitive (HashMap Text StepInput))
Maybe POSIX
Maybe MigrationWorkflowStatusEnum
httpStatus :: Int
workflowInputs :: Maybe (Sensitive (HashMap Text StepInput))
workflowBucket :: Maybe Text
totalSteps :: Maybe Int
tools :: Maybe [Tool]
templateId :: Maybe Text
tags :: Maybe (HashMap Text Text)
statusMessage :: Maybe Text
status :: Maybe MigrationWorkflowStatusEnum
name :: Maybe Text
lastStopTime :: Maybe POSIX
lastStartTime :: Maybe POSIX
lastModifiedTime :: Maybe POSIX
id :: Maybe Text
endTime :: Maybe POSIX
description :: Maybe Text
creationTime :: Maybe POSIX
completedSteps :: Maybe Int
arn :: Maybe Text
adsApplicationName :: Maybe Text
adsApplicationConfigurationId :: Maybe Text
$sel:httpStatus:GetWorkflowResponse' :: GetWorkflowResponse -> Int
$sel:workflowInputs:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe (Sensitive (HashMap Text StepInput))
$sel:workflowBucket:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
$sel:totalSteps:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Int
$sel:tools:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe [Tool]
$sel:templateId:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
$sel:tags:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe (HashMap Text Text)
$sel:statusMessage:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
$sel:status:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe MigrationWorkflowStatusEnum
$sel:name:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
$sel:lastStopTime:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe POSIX
$sel:lastStartTime:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe POSIX
$sel:lastModifiedTime:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe POSIX
$sel:id:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
$sel:endTime:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe POSIX
$sel:description:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
$sel:creationTime:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe POSIX
$sel:completedSteps:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Int
$sel:arn:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
$sel:adsApplicationName:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
$sel:adsApplicationConfigurationId:GetWorkflowResponse' :: GetWorkflowResponse -> Maybe Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
adsApplicationConfigurationId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
adsApplicationName
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
arn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
completedSteps
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
creationTime
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
description
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
endTime
      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 POSIX
lastModifiedTime
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
lastStartTime
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
lastStopTime
      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 MigrationWorkflowStatusEnum
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 (HashMap Text Text)
tags
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
templateId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Tool]
tools
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
totalSteps
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
workflowBucket
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (Sensitive (HashMap Text StepInput))
workflowInputs
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus