{-# 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.SSM.GetMaintenanceWindowExecutionTask
-- Copyright   : (c) 2013-2021 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Retrieves the details about a specific task run as part of a maintenance
-- window execution.
module Amazonka.SSM.GetMaintenanceWindowExecutionTask
  ( -- * Creating a Request
    GetMaintenanceWindowExecutionTask (..),
    newGetMaintenanceWindowExecutionTask,

    -- * Request Lenses
    getMaintenanceWindowExecutionTask_windowExecutionId,
    getMaintenanceWindowExecutionTask_taskId,

    -- * Destructuring the Response
    GetMaintenanceWindowExecutionTaskResponse (..),
    newGetMaintenanceWindowExecutionTaskResponse,

    -- * Response Lenses
    getMaintenanceWindowExecutionTaskResponse_status,
    getMaintenanceWindowExecutionTaskResponse_taskParameters,
    getMaintenanceWindowExecutionTaskResponse_taskExecutionId,
    getMaintenanceWindowExecutionTaskResponse_priority,
    getMaintenanceWindowExecutionTaskResponse_startTime,
    getMaintenanceWindowExecutionTaskResponse_taskArn,
    getMaintenanceWindowExecutionTaskResponse_windowExecutionId,
    getMaintenanceWindowExecutionTaskResponse_statusDetails,
    getMaintenanceWindowExecutionTaskResponse_maxErrors,
    getMaintenanceWindowExecutionTaskResponse_endTime,
    getMaintenanceWindowExecutionTaskResponse_type,
    getMaintenanceWindowExecutionTaskResponse_maxConcurrency,
    getMaintenanceWindowExecutionTaskResponse_serviceRole,
    getMaintenanceWindowExecutionTaskResponse_httpStatus,
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
import Amazonka.SSM.Types

-- | /See:/ 'newGetMaintenanceWindowExecutionTask' smart constructor.
data GetMaintenanceWindowExecutionTask = GetMaintenanceWindowExecutionTask'
  { -- | The ID of the maintenance window execution that includes the task.
    GetMaintenanceWindowExecutionTask -> Text
windowExecutionId :: Prelude.Text,
    -- | The ID of the specific task execution in the maintenance window task
    -- that should be retrieved.
    GetMaintenanceWindowExecutionTask -> Text
taskId :: Prelude.Text
  }
  deriving (GetMaintenanceWindowExecutionTask
-> GetMaintenanceWindowExecutionTask -> Bool
(GetMaintenanceWindowExecutionTask
 -> GetMaintenanceWindowExecutionTask -> Bool)
-> (GetMaintenanceWindowExecutionTask
    -> GetMaintenanceWindowExecutionTask -> Bool)
-> Eq GetMaintenanceWindowExecutionTask
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetMaintenanceWindowExecutionTask
-> GetMaintenanceWindowExecutionTask -> Bool
$c/= :: GetMaintenanceWindowExecutionTask
-> GetMaintenanceWindowExecutionTask -> Bool
== :: GetMaintenanceWindowExecutionTask
-> GetMaintenanceWindowExecutionTask -> Bool
$c== :: GetMaintenanceWindowExecutionTask
-> GetMaintenanceWindowExecutionTask -> Bool
Prelude.Eq, ReadPrec [GetMaintenanceWindowExecutionTask]
ReadPrec GetMaintenanceWindowExecutionTask
Int -> ReadS GetMaintenanceWindowExecutionTask
ReadS [GetMaintenanceWindowExecutionTask]
(Int -> ReadS GetMaintenanceWindowExecutionTask)
-> ReadS [GetMaintenanceWindowExecutionTask]
-> ReadPrec GetMaintenanceWindowExecutionTask
-> ReadPrec [GetMaintenanceWindowExecutionTask]
-> Read GetMaintenanceWindowExecutionTask
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetMaintenanceWindowExecutionTask]
$creadListPrec :: ReadPrec [GetMaintenanceWindowExecutionTask]
readPrec :: ReadPrec GetMaintenanceWindowExecutionTask
$creadPrec :: ReadPrec GetMaintenanceWindowExecutionTask
readList :: ReadS [GetMaintenanceWindowExecutionTask]
$creadList :: ReadS [GetMaintenanceWindowExecutionTask]
readsPrec :: Int -> ReadS GetMaintenanceWindowExecutionTask
$creadsPrec :: Int -> ReadS GetMaintenanceWindowExecutionTask
Prelude.Read, Int -> GetMaintenanceWindowExecutionTask -> ShowS
[GetMaintenanceWindowExecutionTask] -> ShowS
GetMaintenanceWindowExecutionTask -> String
(Int -> GetMaintenanceWindowExecutionTask -> ShowS)
-> (GetMaintenanceWindowExecutionTask -> String)
-> ([GetMaintenanceWindowExecutionTask] -> ShowS)
-> Show GetMaintenanceWindowExecutionTask
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetMaintenanceWindowExecutionTask] -> ShowS
$cshowList :: [GetMaintenanceWindowExecutionTask] -> ShowS
show :: GetMaintenanceWindowExecutionTask -> String
$cshow :: GetMaintenanceWindowExecutionTask -> String
showsPrec :: Int -> GetMaintenanceWindowExecutionTask -> ShowS
$cshowsPrec :: Int -> GetMaintenanceWindowExecutionTask -> ShowS
Prelude.Show, (forall x.
 GetMaintenanceWindowExecutionTask
 -> Rep GetMaintenanceWindowExecutionTask x)
-> (forall x.
    Rep GetMaintenanceWindowExecutionTask x
    -> GetMaintenanceWindowExecutionTask)
-> Generic GetMaintenanceWindowExecutionTask
forall x.
Rep GetMaintenanceWindowExecutionTask x
-> GetMaintenanceWindowExecutionTask
forall x.
GetMaintenanceWindowExecutionTask
-> Rep GetMaintenanceWindowExecutionTask x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetMaintenanceWindowExecutionTask x
-> GetMaintenanceWindowExecutionTask
$cfrom :: forall x.
GetMaintenanceWindowExecutionTask
-> Rep GetMaintenanceWindowExecutionTask x
Prelude.Generic)

-- |
-- Create a value of 'GetMaintenanceWindowExecutionTask' 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:
--
-- 'windowExecutionId', 'getMaintenanceWindowExecutionTask_windowExecutionId' - The ID of the maintenance window execution that includes the task.
--
-- 'taskId', 'getMaintenanceWindowExecutionTask_taskId' - The ID of the specific task execution in the maintenance window task
-- that should be retrieved.
newGetMaintenanceWindowExecutionTask ::
  -- | 'windowExecutionId'
  Prelude.Text ->
  -- | 'taskId'
  Prelude.Text ->
  GetMaintenanceWindowExecutionTask
newGetMaintenanceWindowExecutionTask :: Text -> Text -> GetMaintenanceWindowExecutionTask
newGetMaintenanceWindowExecutionTask
  Text
pWindowExecutionId_
  Text
pTaskId_ =
    GetMaintenanceWindowExecutionTask' :: Text -> Text -> GetMaintenanceWindowExecutionTask
GetMaintenanceWindowExecutionTask'
      { $sel:windowExecutionId:GetMaintenanceWindowExecutionTask' :: Text
windowExecutionId =
          Text
pWindowExecutionId_,
        $sel:taskId:GetMaintenanceWindowExecutionTask' :: Text
taskId = Text
pTaskId_
      }

-- | The ID of the maintenance window execution that includes the task.
getMaintenanceWindowExecutionTask_windowExecutionId :: Lens.Lens' GetMaintenanceWindowExecutionTask Prelude.Text
getMaintenanceWindowExecutionTask_windowExecutionId :: (Text -> f Text)
-> GetMaintenanceWindowExecutionTask
-> f GetMaintenanceWindowExecutionTask
getMaintenanceWindowExecutionTask_windowExecutionId = (GetMaintenanceWindowExecutionTask -> Text)
-> (GetMaintenanceWindowExecutionTask
    -> Text -> GetMaintenanceWindowExecutionTask)
-> Lens
     GetMaintenanceWindowExecutionTask
     GetMaintenanceWindowExecutionTask
     Text
     Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTask' {Text
windowExecutionId :: Text
$sel:windowExecutionId:GetMaintenanceWindowExecutionTask' :: GetMaintenanceWindowExecutionTask -> Text
windowExecutionId} -> Text
windowExecutionId) (\s :: GetMaintenanceWindowExecutionTask
s@GetMaintenanceWindowExecutionTask' {} Text
a -> GetMaintenanceWindowExecutionTask
s {$sel:windowExecutionId:GetMaintenanceWindowExecutionTask' :: Text
windowExecutionId = Text
a} :: GetMaintenanceWindowExecutionTask)

-- | The ID of the specific task execution in the maintenance window task
-- that should be retrieved.
getMaintenanceWindowExecutionTask_taskId :: Lens.Lens' GetMaintenanceWindowExecutionTask Prelude.Text
getMaintenanceWindowExecutionTask_taskId :: (Text -> f Text)
-> GetMaintenanceWindowExecutionTask
-> f GetMaintenanceWindowExecutionTask
getMaintenanceWindowExecutionTask_taskId = (GetMaintenanceWindowExecutionTask -> Text)
-> (GetMaintenanceWindowExecutionTask
    -> Text -> GetMaintenanceWindowExecutionTask)
-> Lens
     GetMaintenanceWindowExecutionTask
     GetMaintenanceWindowExecutionTask
     Text
     Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTask' {Text
taskId :: Text
$sel:taskId:GetMaintenanceWindowExecutionTask' :: GetMaintenanceWindowExecutionTask -> Text
taskId} -> Text
taskId) (\s :: GetMaintenanceWindowExecutionTask
s@GetMaintenanceWindowExecutionTask' {} Text
a -> GetMaintenanceWindowExecutionTask
s {$sel:taskId:GetMaintenanceWindowExecutionTask' :: Text
taskId = Text
a} :: GetMaintenanceWindowExecutionTask)

instance
  Core.AWSRequest
    GetMaintenanceWindowExecutionTask
  where
  type
    AWSResponse GetMaintenanceWindowExecutionTask =
      GetMaintenanceWindowExecutionTaskResponse
  request :: GetMaintenanceWindowExecutionTask
-> Request GetMaintenanceWindowExecutionTask
request = Service
-> GetMaintenanceWindowExecutionTask
-> Request GetMaintenanceWindowExecutionTask
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON Service
defaultService
  response :: Logger
-> Service
-> Proxy GetMaintenanceWindowExecutionTask
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse (AWSResponse GetMaintenanceWindowExecutionTask)))
response =
    (Int
 -> ResponseHeaders
 -> Object
 -> Either String (AWSResponse GetMaintenanceWindowExecutionTask))
-> Logger
-> Service
-> Proxy GetMaintenanceWindowExecutionTask
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse (AWSResponse GetMaintenanceWindowExecutionTask)))
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> Logger
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
      ( \Int
s ResponseHeaders
h Object
x ->
          Maybe MaintenanceWindowExecutionStatus
-> Maybe
     (Sensitive
        [Sensitive
           (HashMap
              Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
-> Maybe Text
-> Maybe Natural
-> Maybe POSIX
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe POSIX
-> Maybe MaintenanceWindowTaskType
-> Maybe Text
-> Maybe Text
-> Int
-> GetMaintenanceWindowExecutionTaskResponse
GetMaintenanceWindowExecutionTaskResponse'
            (Maybe MaintenanceWindowExecutionStatus
 -> Maybe
      (Sensitive
         [Sensitive
            (HashMap
               Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
 -> Maybe Text
 -> Maybe Natural
 -> Maybe POSIX
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe Text
 -> Maybe POSIX
 -> Maybe MaintenanceWindowTaskType
 -> Maybe Text
 -> Maybe Text
 -> Int
 -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String (Maybe MaintenanceWindowExecutionStatus)
-> Either
     String
     (Maybe
        (Sensitive
           [Sensitive
              (HashMap
                 Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
      -> Maybe Text
      -> Maybe Natural
      -> Maybe POSIX
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe POSIX
      -> Maybe MaintenanceWindowTaskType
      -> Maybe Text
      -> Maybe Text
      -> Int
      -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object
-> Text -> Either String (Maybe MaintenanceWindowExecutionStatus)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"Status")
              Either
  String
  (Maybe
     (Sensitive
        [Sensitive
           (HashMap
              Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
   -> Maybe Text
   -> Maybe Natural
   -> Maybe POSIX
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe POSIX
   -> Maybe MaintenanceWindowTaskType
   -> Maybe Text
   -> Maybe Text
   -> Int
   -> GetMaintenanceWindowExecutionTaskResponse)
-> Either
     String
     (Maybe
        (Sensitive
           [Sensitive
              (HashMap
                 Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]))
-> Either
     String
     (Maybe Text
      -> Maybe Natural
      -> Maybe POSIX
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe POSIX
      -> Maybe MaintenanceWindowTaskType
      -> Maybe Text
      -> Maybe Text
      -> Int
      -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object
-> Text
-> Either
     String
     (Maybe
        (Maybe
           (Sensitive
              [Sensitive
                 (HashMap
                    Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])))
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"TaskParameters" Either
  String
  (Maybe
     (Maybe
        (Sensitive
           [Sensitive
              (HashMap
                 Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])))
-> Maybe
     (Sensitive
        [Sensitive
           (HashMap
              Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
-> Either
     String
     (Maybe
        (Sensitive
           [Sensitive
              (HashMap
                 Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]))
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
forall a. Monoid a => a
Prelude.mempty)
              Either
  String
  (Maybe Text
   -> Maybe Natural
   -> Maybe POSIX
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe POSIX
   -> Maybe MaintenanceWindowTaskType
   -> Maybe Text
   -> Maybe Text
   -> Int
   -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe Natural
      -> Maybe POSIX
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe POSIX
      -> Maybe MaintenanceWindowTaskType
      -> Maybe Text
      -> Maybe Text
      -> Int
      -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"TaskExecutionId")
              Either
  String
  (Maybe Natural
   -> Maybe POSIX
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe POSIX
   -> Maybe MaintenanceWindowTaskType
   -> Maybe Text
   -> Maybe Text
   -> Int
   -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String (Maybe Natural)
-> Either
     String
     (Maybe POSIX
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe POSIX
      -> Maybe MaintenanceWindowTaskType
      -> Maybe Text
      -> Maybe Text
      -> Int
      -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Natural)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"Priority")
              Either
  String
  (Maybe POSIX
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe POSIX
   -> Maybe MaintenanceWindowTaskType
   -> Maybe Text
   -> Maybe Text
   -> Int
   -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String (Maybe POSIX)
-> Either
     String
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe POSIX
      -> Maybe MaintenanceWindowTaskType
      -> Maybe Text
      -> Maybe Text
      -> Int
      -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe POSIX)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"StartTime")
              Either
  String
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe POSIX
   -> Maybe MaintenanceWindowTaskType
   -> Maybe Text
   -> Maybe Text
   -> Int
   -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe Text
      -> Maybe Text
      -> Maybe Text
      -> Maybe POSIX
      -> Maybe MaintenanceWindowTaskType
      -> Maybe Text
      -> Maybe Text
      -> Int
      -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"TaskArn")
              Either
  String
  (Maybe Text
   -> Maybe Text
   -> Maybe Text
   -> Maybe POSIX
   -> Maybe MaintenanceWindowTaskType
   -> Maybe Text
   -> Maybe Text
   -> Int
   -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe Text
      -> Maybe Text
      -> Maybe POSIX
      -> Maybe MaintenanceWindowTaskType
      -> Maybe Text
      -> Maybe Text
      -> Int
      -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"WindowExecutionId")
              Either
  String
  (Maybe Text
   -> Maybe Text
   -> Maybe POSIX
   -> Maybe MaintenanceWindowTaskType
   -> Maybe Text
   -> Maybe Text
   -> Int
   -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe Text
      -> Maybe POSIX
      -> Maybe MaintenanceWindowTaskType
      -> Maybe Text
      -> Maybe Text
      -> Int
      -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"StatusDetails")
              Either
  String
  (Maybe Text
   -> Maybe POSIX
   -> Maybe MaintenanceWindowTaskType
   -> Maybe Text
   -> Maybe Text
   -> Int
   -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe POSIX
      -> Maybe MaintenanceWindowTaskType
      -> Maybe Text
      -> Maybe Text
      -> Int
      -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"MaxErrors")
              Either
  String
  (Maybe POSIX
   -> Maybe MaintenanceWindowTaskType
   -> Maybe Text
   -> Maybe Text
   -> Int
   -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String (Maybe POSIX)
-> Either
     String
     (Maybe MaintenanceWindowTaskType
      -> Maybe Text
      -> Maybe Text
      -> Int
      -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe POSIX)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"EndTime")
              Either
  String
  (Maybe MaintenanceWindowTaskType
   -> Maybe Text
   -> Maybe Text
   -> Int
   -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String (Maybe MaintenanceWindowTaskType)
-> Either
     String
     (Maybe Text
      -> Maybe Text -> Int -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe MaintenanceWindowTaskType)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"Type")
              Either
  String
  (Maybe Text
   -> Maybe Text -> Int -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe Text -> Int -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"MaxConcurrency")
              Either
  String
  (Maybe Text -> Int -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String (Maybe Text)
-> Either String (Int -> GetMaintenanceWindowExecutionTaskResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"ServiceRole")
              Either String (Int -> GetMaintenanceWindowExecutionTaskResponse)
-> Either String Int
-> Either String GetMaintenanceWindowExecutionTaskResponse
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Int -> Either String Int
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (Int -> Int
forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
      )

instance
  Prelude.Hashable
    GetMaintenanceWindowExecutionTask

instance
  Prelude.NFData
    GetMaintenanceWindowExecutionTask

instance
  Core.ToHeaders
    GetMaintenanceWindowExecutionTask
  where
  toHeaders :: GetMaintenanceWindowExecutionTask -> ResponseHeaders
toHeaders =
    ResponseHeaders
-> GetMaintenanceWindowExecutionTask -> ResponseHeaders
forall a b. a -> b -> a
Prelude.const
      ( [ResponseHeaders] -> ResponseHeaders
forall a. Monoid a => [a] -> a
Prelude.mconcat
          [ HeaderName
"X-Amz-Target"
              HeaderName -> ByteString -> ResponseHeaders
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Core.=# ( ByteString
"AmazonSSM.GetMaintenanceWindowExecutionTask" ::
                          Prelude.ByteString
                      ),
            HeaderName
"Content-Type"
              HeaderName -> ByteString -> ResponseHeaders
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Core.=# ( ByteString
"application/x-amz-json-1.1" ::
                          Prelude.ByteString
                      )
          ]
      )

instance
  Core.ToJSON
    GetMaintenanceWindowExecutionTask
  where
  toJSON :: GetMaintenanceWindowExecutionTask -> Value
toJSON GetMaintenanceWindowExecutionTask' {Text
taskId :: Text
windowExecutionId :: Text
$sel:taskId:GetMaintenanceWindowExecutionTask' :: GetMaintenanceWindowExecutionTask -> Text
$sel:windowExecutionId:GetMaintenanceWindowExecutionTask' :: GetMaintenanceWindowExecutionTask -> Text
..} =
    [Pair] -> Value
Core.object
      ( [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ Pair -> Maybe Pair
forall a. a -> Maybe a
Prelude.Just
              (Text
"WindowExecutionId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..= Text
windowExecutionId),
            Pair -> Maybe Pair
forall a. a -> Maybe a
Prelude.Just (Text
"TaskId" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..= Text
taskId)
          ]
      )

instance
  Core.ToPath
    GetMaintenanceWindowExecutionTask
  where
  toPath :: GetMaintenanceWindowExecutionTask -> ByteString
toPath = ByteString -> GetMaintenanceWindowExecutionTask -> ByteString
forall a b. a -> b -> a
Prelude.const ByteString
"/"

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

-- | /See:/ 'newGetMaintenanceWindowExecutionTaskResponse' smart constructor.
data GetMaintenanceWindowExecutionTaskResponse = GetMaintenanceWindowExecutionTaskResponse'
  { -- | The status of the task.
    GetMaintenanceWindowExecutionTaskResponse
-> Maybe MaintenanceWindowExecutionStatus
status :: Prelude.Maybe MaintenanceWindowExecutionStatus,
    -- | The parameters passed to the task when it was run.
    --
    -- @TaskParameters@ has been deprecated. To specify parameters to pass to a
    -- task when it runs, instead use the @Parameters@ option in the
    -- @TaskInvocationParameters@ structure. For information about how Systems
    -- Manager handles these options for the supported maintenance window task
    -- types, see MaintenanceWindowTaskInvocationParameters.
    --
    -- The map has the following format:
    --
    -- -   @Key@: string, between 1 and 255 characters
    --
    -- -   @Value@: an array of strings, each between 1 and 255 characters
    GetMaintenanceWindowExecutionTaskResponse
-> Maybe
     (Sensitive
        [Sensitive
           (HashMap
              Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
taskParameters :: Prelude.Maybe (Core.Sensitive [Core.Sensitive (Prelude.HashMap Prelude.Text (Core.Sensitive MaintenanceWindowTaskParameterValueExpression))]),
    -- | The ID of the specific task execution in the maintenance window task
    -- that was retrieved.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
taskExecutionId :: Prelude.Maybe Prelude.Text,
    -- | The priority of the task.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Natural
priority :: Prelude.Maybe Prelude.Natural,
    -- | The time the task execution started.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe POSIX
startTime :: Prelude.Maybe Core.POSIX,
    -- | The Amazon Resource Name (ARN) of the task that ran.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
taskArn :: Prelude.Maybe Prelude.Text,
    -- | The ID of the maintenance window execution that includes the task.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
windowExecutionId :: Prelude.Maybe Prelude.Text,
    -- | The details explaining the status. Not available for all status values.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
statusDetails :: Prelude.Maybe Prelude.Text,
    -- | The defined maximum number of task execution errors allowed before
    -- scheduling of the task execution would have been stopped.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
maxErrors :: Prelude.Maybe Prelude.Text,
    -- | The time the task execution completed.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe POSIX
endTime :: Prelude.Maybe Core.POSIX,
    -- | The type of task that was run.
    GetMaintenanceWindowExecutionTaskResponse
-> Maybe MaintenanceWindowTaskType
type' :: Prelude.Maybe MaintenanceWindowTaskType,
    -- | The defined maximum number of task executions that could be run in
    -- parallel.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
maxConcurrency :: Prelude.Maybe Prelude.Text,
    -- | The role that was assumed when running the task.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
serviceRole :: Prelude.Maybe Prelude.Text,
    -- | The response's http status code.
    GetMaintenanceWindowExecutionTaskResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (GetMaintenanceWindowExecutionTaskResponse
-> GetMaintenanceWindowExecutionTaskResponse -> Bool
(GetMaintenanceWindowExecutionTaskResponse
 -> GetMaintenanceWindowExecutionTaskResponse -> Bool)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> GetMaintenanceWindowExecutionTaskResponse -> Bool)
-> Eq GetMaintenanceWindowExecutionTaskResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetMaintenanceWindowExecutionTaskResponse
-> GetMaintenanceWindowExecutionTaskResponse -> Bool
$c/= :: GetMaintenanceWindowExecutionTaskResponse
-> GetMaintenanceWindowExecutionTaskResponse -> Bool
== :: GetMaintenanceWindowExecutionTaskResponse
-> GetMaintenanceWindowExecutionTaskResponse -> Bool
$c== :: GetMaintenanceWindowExecutionTaskResponse
-> GetMaintenanceWindowExecutionTaskResponse -> Bool
Prelude.Eq, Int -> GetMaintenanceWindowExecutionTaskResponse -> ShowS
[GetMaintenanceWindowExecutionTaskResponse] -> ShowS
GetMaintenanceWindowExecutionTaskResponse -> String
(Int -> GetMaintenanceWindowExecutionTaskResponse -> ShowS)
-> (GetMaintenanceWindowExecutionTaskResponse -> String)
-> ([GetMaintenanceWindowExecutionTaskResponse] -> ShowS)
-> Show GetMaintenanceWindowExecutionTaskResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetMaintenanceWindowExecutionTaskResponse] -> ShowS
$cshowList :: [GetMaintenanceWindowExecutionTaskResponse] -> ShowS
show :: GetMaintenanceWindowExecutionTaskResponse -> String
$cshow :: GetMaintenanceWindowExecutionTaskResponse -> String
showsPrec :: Int -> GetMaintenanceWindowExecutionTaskResponse -> ShowS
$cshowsPrec :: Int -> GetMaintenanceWindowExecutionTaskResponse -> ShowS
Prelude.Show, (forall x.
 GetMaintenanceWindowExecutionTaskResponse
 -> Rep GetMaintenanceWindowExecutionTaskResponse x)
-> (forall x.
    Rep GetMaintenanceWindowExecutionTaskResponse x
    -> GetMaintenanceWindowExecutionTaskResponse)
-> Generic GetMaintenanceWindowExecutionTaskResponse
forall x.
Rep GetMaintenanceWindowExecutionTaskResponse x
-> GetMaintenanceWindowExecutionTaskResponse
forall x.
GetMaintenanceWindowExecutionTaskResponse
-> Rep GetMaintenanceWindowExecutionTaskResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetMaintenanceWindowExecutionTaskResponse x
-> GetMaintenanceWindowExecutionTaskResponse
$cfrom :: forall x.
GetMaintenanceWindowExecutionTaskResponse
-> Rep GetMaintenanceWindowExecutionTaskResponse x
Prelude.Generic)

-- |
-- Create a value of 'GetMaintenanceWindowExecutionTaskResponse' 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:
--
-- 'status', 'getMaintenanceWindowExecutionTaskResponse_status' - The status of the task.
--
-- 'taskParameters', 'getMaintenanceWindowExecutionTaskResponse_taskParameters' - The parameters passed to the task when it was run.
--
-- @TaskParameters@ has been deprecated. To specify parameters to pass to a
-- task when it runs, instead use the @Parameters@ option in the
-- @TaskInvocationParameters@ structure. For information about how Systems
-- Manager handles these options for the supported maintenance window task
-- types, see MaintenanceWindowTaskInvocationParameters.
--
-- The map has the following format:
--
-- -   @Key@: string, between 1 and 255 characters
--
-- -   @Value@: an array of strings, each between 1 and 255 characters
--
-- 'taskExecutionId', 'getMaintenanceWindowExecutionTaskResponse_taskExecutionId' - The ID of the specific task execution in the maintenance window task
-- that was retrieved.
--
-- 'priority', 'getMaintenanceWindowExecutionTaskResponse_priority' - The priority of the task.
--
-- 'startTime', 'getMaintenanceWindowExecutionTaskResponse_startTime' - The time the task execution started.
--
-- 'taskArn', 'getMaintenanceWindowExecutionTaskResponse_taskArn' - The Amazon Resource Name (ARN) of the task that ran.
--
-- 'windowExecutionId', 'getMaintenanceWindowExecutionTaskResponse_windowExecutionId' - The ID of the maintenance window execution that includes the task.
--
-- 'statusDetails', 'getMaintenanceWindowExecutionTaskResponse_statusDetails' - The details explaining the status. Not available for all status values.
--
-- 'maxErrors', 'getMaintenanceWindowExecutionTaskResponse_maxErrors' - The defined maximum number of task execution errors allowed before
-- scheduling of the task execution would have been stopped.
--
-- 'endTime', 'getMaintenanceWindowExecutionTaskResponse_endTime' - The time the task execution completed.
--
-- 'type'', 'getMaintenanceWindowExecutionTaskResponse_type' - The type of task that was run.
--
-- 'maxConcurrency', 'getMaintenanceWindowExecutionTaskResponse_maxConcurrency' - The defined maximum number of task executions that could be run in
-- parallel.
--
-- 'serviceRole', 'getMaintenanceWindowExecutionTaskResponse_serviceRole' - The role that was assumed when running the task.
--
-- 'httpStatus', 'getMaintenanceWindowExecutionTaskResponse_httpStatus' - The response's http status code.
newGetMaintenanceWindowExecutionTaskResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  GetMaintenanceWindowExecutionTaskResponse
newGetMaintenanceWindowExecutionTaskResponse :: Int -> GetMaintenanceWindowExecutionTaskResponse
newGetMaintenanceWindowExecutionTaskResponse
  Int
pHttpStatus_ =
    GetMaintenanceWindowExecutionTaskResponse' :: Maybe MaintenanceWindowExecutionStatus
-> Maybe
     (Sensitive
        [Sensitive
           (HashMap
              Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
-> Maybe Text
-> Maybe Natural
-> Maybe POSIX
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe POSIX
-> Maybe MaintenanceWindowTaskType
-> Maybe Text
-> Maybe Text
-> Int
-> GetMaintenanceWindowExecutionTaskResponse
GetMaintenanceWindowExecutionTaskResponse'
      { $sel:status:GetMaintenanceWindowExecutionTaskResponse' :: Maybe MaintenanceWindowExecutionStatus
status =
          Maybe MaintenanceWindowExecutionStatus
forall a. Maybe a
Prelude.Nothing,
        $sel:taskParameters:GetMaintenanceWindowExecutionTaskResponse' :: Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
taskParameters = Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
forall a. Maybe a
Prelude.Nothing,
        $sel:taskExecutionId:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
taskExecutionId =
          Maybe Text
forall a. Maybe a
Prelude.Nothing,
        $sel:priority:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Natural
priority = Maybe Natural
forall a. Maybe a
Prelude.Nothing,
        $sel:startTime:GetMaintenanceWindowExecutionTaskResponse' :: Maybe POSIX
startTime = Maybe POSIX
forall a. Maybe a
Prelude.Nothing,
        $sel:taskArn:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
taskArn = Maybe Text
forall a. Maybe a
Prelude.Nothing,
        $sel:windowExecutionId:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
windowExecutionId =
          Maybe Text
forall a. Maybe a
Prelude.Nothing,
        $sel:statusDetails:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
statusDetails = Maybe Text
forall a. Maybe a
Prelude.Nothing,
        $sel:maxErrors:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
maxErrors = Maybe Text
forall a. Maybe a
Prelude.Nothing,
        $sel:endTime:GetMaintenanceWindowExecutionTaskResponse' :: Maybe POSIX
endTime = Maybe POSIX
forall a. Maybe a
Prelude.Nothing,
        $sel:type':GetMaintenanceWindowExecutionTaskResponse' :: Maybe MaintenanceWindowTaskType
type' = Maybe MaintenanceWindowTaskType
forall a. Maybe a
Prelude.Nothing,
        $sel:maxConcurrency:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
maxConcurrency = Maybe Text
forall a. Maybe a
Prelude.Nothing,
        $sel:serviceRole:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
serviceRole = Maybe Text
forall a. Maybe a
Prelude.Nothing,
        $sel:httpStatus:GetMaintenanceWindowExecutionTaskResponse' :: Int
httpStatus = Int
pHttpStatus_
      }

-- | The status of the task.
getMaintenanceWindowExecutionTaskResponse_status :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe MaintenanceWindowExecutionStatus)
getMaintenanceWindowExecutionTaskResponse_status :: (Maybe MaintenanceWindowExecutionStatus
 -> f (Maybe MaintenanceWindowExecutionStatus))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_status = (GetMaintenanceWindowExecutionTaskResponse
 -> Maybe MaintenanceWindowExecutionStatus)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe MaintenanceWindowExecutionStatus
    -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe MaintenanceWindowExecutionStatus)
     (Maybe MaintenanceWindowExecutionStatus)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe MaintenanceWindowExecutionStatus
status :: Maybe MaintenanceWindowExecutionStatus
$sel:status:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse
-> Maybe MaintenanceWindowExecutionStatus
status} -> Maybe MaintenanceWindowExecutionStatus
status) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe MaintenanceWindowExecutionStatus
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:status:GetMaintenanceWindowExecutionTaskResponse' :: Maybe MaintenanceWindowExecutionStatus
status = Maybe MaintenanceWindowExecutionStatus
a} :: GetMaintenanceWindowExecutionTaskResponse)

-- | The parameters passed to the task when it was run.
--
-- @TaskParameters@ has been deprecated. To specify parameters to pass to a
-- task when it runs, instead use the @Parameters@ option in the
-- @TaskInvocationParameters@ structure. For information about how Systems
-- Manager handles these options for the supported maintenance window task
-- types, see MaintenanceWindowTaskInvocationParameters.
--
-- The map has the following format:
--
-- -   @Key@: string, between 1 and 255 characters
--
-- -   @Value@: an array of strings, each between 1 and 255 characters
getMaintenanceWindowExecutionTaskResponse_taskParameters :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe [Prelude.HashMap Prelude.Text MaintenanceWindowTaskParameterValueExpression])
getMaintenanceWindowExecutionTaskResponse_taskParameters :: (Maybe [HashMap Text MaintenanceWindowTaskParameterValueExpression]
 -> f (Maybe
         [HashMap Text MaintenanceWindowTaskParameterValueExpression]))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_taskParameters = (GetMaintenanceWindowExecutionTaskResponse
 -> Maybe
      (Sensitive
         [Sensitive
            (HashMap
               Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]))
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe
         (Sensitive
            [Sensitive
               (HashMap
                  Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
    -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe
        (Sensitive
           [Sensitive
              (HashMap
                 Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]))
     (Maybe
        (Sensitive
           [Sensitive
              (HashMap
                 Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]))
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
taskParameters :: Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
$sel:taskParameters:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse
-> Maybe
     (Sensitive
        [Sensitive
           (HashMap
              Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
taskParameters} -> Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
taskParameters) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:taskParameters:GetMaintenanceWindowExecutionTaskResponse' :: Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
taskParameters = Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
a} :: GetMaintenanceWindowExecutionTaskResponse) ((Maybe
    (Sensitive
       [Sensitive
          (HashMap
             Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
  -> f (Maybe
          (Sensitive
             [Sensitive
                (HashMap
                   Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])))
 -> GetMaintenanceWindowExecutionTaskResponse
 -> f GetMaintenanceWindowExecutionTaskResponse)
-> ((Maybe
       [HashMap Text MaintenanceWindowTaskParameterValueExpression]
     -> f (Maybe
             [HashMap Text MaintenanceWindowTaskParameterValueExpression]))
    -> Maybe
         (Sensitive
            [Sensitive
               (HashMap
                  Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
    -> f (Maybe
            (Sensitive
               [Sensitive
                  (HashMap
                     Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])))
-> (Maybe
      [HashMap Text MaintenanceWindowTaskParameterValueExpression]
    -> f (Maybe
            [HashMap Text MaintenanceWindowTaskParameterValueExpression]))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
  [HashMap Text MaintenanceWindowTaskParameterValueExpression]
  [HashMap Text MaintenanceWindowTaskParameterValueExpression]
-> Iso
     (Maybe
        (Sensitive
           [Sensitive
              (HashMap
                 Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]))
     (Maybe
        (Sensitive
           [Sensitive
              (HashMap
                 Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]))
     (Maybe
        [HashMap Text MaintenanceWindowTaskParameterValueExpression])
     (Maybe
        [HashMap Text MaintenanceWindowTaskParameterValueExpression])
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 (Exchange
  [HashMap Text MaintenanceWindowTaskParameterValueExpression]
  [HashMap Text MaintenanceWindowTaskParameterValueExpression]
  [Sensitive
     (HashMap
        Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]
  (Identity
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
-> Exchange
     [HashMap Text MaintenanceWindowTaskParameterValueExpression]
     [HashMap Text MaintenanceWindowTaskParameterValueExpression]
     (Sensitive
        [Sensitive
           (HashMap
              Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
     (Identity
        (Sensitive
           [Sensitive
              (HashMap
                 Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]))
forall a. Iso' (Sensitive a) a
Core._Sensitive (Exchange
   [HashMap Text MaintenanceWindowTaskParameterValueExpression]
   [HashMap Text MaintenanceWindowTaskParameterValueExpression]
   [Sensitive
      (HashMap
         Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]
   (Identity
      [Sensitive
         (HashMap
            Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
 -> Exchange
      [HashMap Text MaintenanceWindowTaskParameterValueExpression]
      [HashMap Text MaintenanceWindowTaskParameterValueExpression]
      (Sensitive
         [Sensitive
            (HashMap
               Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
      (Identity
         (Sensitive
            [Sensitive
               (HashMap
                  Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])))
-> (Exchange
      [HashMap Text MaintenanceWindowTaskParameterValueExpression]
      [HashMap Text MaintenanceWindowTaskParameterValueExpression]
      [HashMap Text MaintenanceWindowTaskParameterValueExpression]
      (Identity
         [HashMap Text MaintenanceWindowTaskParameterValueExpression])
    -> Exchange
         [HashMap Text MaintenanceWindowTaskParameterValueExpression]
         [HashMap Text MaintenanceWindowTaskParameterValueExpression]
         [Sensitive
            (HashMap
               Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]
         (Identity
            [Sensitive
               (HashMap
                  Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]))
-> AnIso
     (Sensitive
        [Sensitive
           (HashMap
              Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
     (Sensitive
        [Sensitive
           (HashMap
              Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
     [HashMap Text MaintenanceWindowTaskParameterValueExpression]
     [HashMap Text MaintenanceWindowTaskParameterValueExpression]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Exchange
  [HashMap Text MaintenanceWindowTaskParameterValueExpression]
  [HashMap Text MaintenanceWindowTaskParameterValueExpression]
  [HashMap Text MaintenanceWindowTaskParameterValueExpression]
  (Identity
     [HashMap Text MaintenanceWindowTaskParameterValueExpression])
-> Exchange
     [HashMap Text MaintenanceWindowTaskParameterValueExpression]
     [HashMap Text MaintenanceWindowTaskParameterValueExpression]
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))]
     (Identity
        [Sensitive
           (HashMap
              Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced)

-- | The ID of the specific task execution in the maintenance window task
-- that was retrieved.
getMaintenanceWindowExecutionTaskResponse_taskExecutionId :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_taskExecutionId :: (Maybe Text -> f (Maybe Text))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_taskExecutionId = (GetMaintenanceWindowExecutionTaskResponse -> Maybe Text)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe Text -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe Text
taskExecutionId :: Maybe Text
$sel:taskExecutionId:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
taskExecutionId} -> Maybe Text
taskExecutionId) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe Text
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:taskExecutionId:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
taskExecutionId = Maybe Text
a} :: GetMaintenanceWindowExecutionTaskResponse)

-- | The priority of the task.
getMaintenanceWindowExecutionTaskResponse_priority :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Natural)
getMaintenanceWindowExecutionTaskResponse_priority :: (Maybe Natural -> f (Maybe Natural))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_priority = (GetMaintenanceWindowExecutionTaskResponse -> Maybe Natural)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe Natural -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe Natural)
     (Maybe Natural)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe Natural
priority :: Maybe Natural
$sel:priority:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Natural
priority} -> Maybe Natural
priority) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe Natural
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:priority:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Natural
priority = Maybe Natural
a} :: GetMaintenanceWindowExecutionTaskResponse)

-- | The time the task execution started.
getMaintenanceWindowExecutionTaskResponse_startTime :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.UTCTime)
getMaintenanceWindowExecutionTaskResponse_startTime :: (Maybe UTCTime -> f (Maybe UTCTime))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_startTime = (GetMaintenanceWindowExecutionTaskResponse -> Maybe POSIX)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe POSIX -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe POSIX)
     (Maybe POSIX)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe POSIX
startTime :: Maybe POSIX
$sel:startTime:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe POSIX
startTime} -> Maybe POSIX
startTime) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe POSIX
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:startTime:GetMaintenanceWindowExecutionTaskResponse' :: Maybe POSIX
startTime = Maybe POSIX
a} :: GetMaintenanceWindowExecutionTaskResponse) ((Maybe POSIX -> f (Maybe POSIX))
 -> GetMaintenanceWindowExecutionTaskResponse
 -> f GetMaintenanceWindowExecutionTaskResponse)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
    -> Maybe POSIX -> f (Maybe POSIX))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso POSIX POSIX UTCTime UTCTime
-> Iso (Maybe POSIX) (Maybe POSIX) (Maybe UTCTime) (Maybe UTCTime)
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 AnIso POSIX POSIX UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time

-- | The Amazon Resource Name (ARN) of the task that ran.
getMaintenanceWindowExecutionTaskResponse_taskArn :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_taskArn :: (Maybe Text -> f (Maybe Text))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_taskArn = (GetMaintenanceWindowExecutionTaskResponse -> Maybe Text)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe Text -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe Text
taskArn :: Maybe Text
$sel:taskArn:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
taskArn} -> Maybe Text
taskArn) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe Text
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:taskArn:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
taskArn = Maybe Text
a} :: GetMaintenanceWindowExecutionTaskResponse)

-- | The ID of the maintenance window execution that includes the task.
getMaintenanceWindowExecutionTaskResponse_windowExecutionId :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_windowExecutionId :: (Maybe Text -> f (Maybe Text))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_windowExecutionId = (GetMaintenanceWindowExecutionTaskResponse -> Maybe Text)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe Text -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe Text
windowExecutionId :: Maybe Text
$sel:windowExecutionId:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
windowExecutionId} -> Maybe Text
windowExecutionId) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe Text
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:windowExecutionId:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
windowExecutionId = Maybe Text
a} :: GetMaintenanceWindowExecutionTaskResponse)

-- | The details explaining the status. Not available for all status values.
getMaintenanceWindowExecutionTaskResponse_statusDetails :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_statusDetails :: (Maybe Text -> f (Maybe Text))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_statusDetails = (GetMaintenanceWindowExecutionTaskResponse -> Maybe Text)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe Text -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe Text
statusDetails :: Maybe Text
$sel:statusDetails:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
statusDetails} -> Maybe Text
statusDetails) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe Text
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:statusDetails:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
statusDetails = Maybe Text
a} :: GetMaintenanceWindowExecutionTaskResponse)

-- | The defined maximum number of task execution errors allowed before
-- scheduling of the task execution would have been stopped.
getMaintenanceWindowExecutionTaskResponse_maxErrors :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_maxErrors :: (Maybe Text -> f (Maybe Text))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_maxErrors = (GetMaintenanceWindowExecutionTaskResponse -> Maybe Text)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe Text -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe Text
maxErrors :: Maybe Text
$sel:maxErrors:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
maxErrors} -> Maybe Text
maxErrors) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe Text
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:maxErrors:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
maxErrors = Maybe Text
a} :: GetMaintenanceWindowExecutionTaskResponse)

-- | The time the task execution completed.
getMaintenanceWindowExecutionTaskResponse_endTime :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.UTCTime)
getMaintenanceWindowExecutionTaskResponse_endTime :: (Maybe UTCTime -> f (Maybe UTCTime))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_endTime = (GetMaintenanceWindowExecutionTaskResponse -> Maybe POSIX)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe POSIX -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe POSIX)
     (Maybe POSIX)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe POSIX
endTime :: Maybe POSIX
$sel:endTime:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe POSIX
endTime} -> Maybe POSIX
endTime) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe POSIX
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:endTime:GetMaintenanceWindowExecutionTaskResponse' :: Maybe POSIX
endTime = Maybe POSIX
a} :: GetMaintenanceWindowExecutionTaskResponse) ((Maybe POSIX -> f (Maybe POSIX))
 -> GetMaintenanceWindowExecutionTaskResponse
 -> f GetMaintenanceWindowExecutionTaskResponse)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
    -> Maybe POSIX -> f (Maybe POSIX))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso POSIX POSIX UTCTime UTCTime
-> Iso (Maybe POSIX) (Maybe POSIX) (Maybe UTCTime) (Maybe UTCTime)
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 AnIso POSIX POSIX UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time

-- | The type of task that was run.
getMaintenanceWindowExecutionTaskResponse_type :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe MaintenanceWindowTaskType)
getMaintenanceWindowExecutionTaskResponse_type :: (Maybe MaintenanceWindowTaskType
 -> f (Maybe MaintenanceWindowTaskType))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_type = (GetMaintenanceWindowExecutionTaskResponse
 -> Maybe MaintenanceWindowTaskType)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe MaintenanceWindowTaskType
    -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe MaintenanceWindowTaskType)
     (Maybe MaintenanceWindowTaskType)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe MaintenanceWindowTaskType
type' :: Maybe MaintenanceWindowTaskType
$sel:type':GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse
-> Maybe MaintenanceWindowTaskType
type'} -> Maybe MaintenanceWindowTaskType
type') (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe MaintenanceWindowTaskType
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:type':GetMaintenanceWindowExecutionTaskResponse' :: Maybe MaintenanceWindowTaskType
type' = Maybe MaintenanceWindowTaskType
a} :: GetMaintenanceWindowExecutionTaskResponse)

-- | The defined maximum number of task executions that could be run in
-- parallel.
getMaintenanceWindowExecutionTaskResponse_maxConcurrency :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_maxConcurrency :: (Maybe Text -> f (Maybe Text))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_maxConcurrency = (GetMaintenanceWindowExecutionTaskResponse -> Maybe Text)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe Text -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe Text
maxConcurrency :: Maybe Text
$sel:maxConcurrency:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
maxConcurrency} -> Maybe Text
maxConcurrency) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe Text
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:maxConcurrency:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
maxConcurrency = Maybe Text
a} :: GetMaintenanceWindowExecutionTaskResponse)

-- | The role that was assumed when running the task.
getMaintenanceWindowExecutionTaskResponse_serviceRole :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_serviceRole :: (Maybe Text -> f (Maybe Text))
-> GetMaintenanceWindowExecutionTaskResponse
-> f GetMaintenanceWindowExecutionTaskResponse
getMaintenanceWindowExecutionTaskResponse_serviceRole = (GetMaintenanceWindowExecutionTaskResponse -> Maybe Text)
-> (GetMaintenanceWindowExecutionTaskResponse
    -> Maybe Text -> GetMaintenanceWindowExecutionTaskResponse)
-> Lens
     GetMaintenanceWindowExecutionTaskResponse
     GetMaintenanceWindowExecutionTaskResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe Text
serviceRole :: Maybe Text
$sel:serviceRole:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
serviceRole} -> Maybe Text
serviceRole) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe Text
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:serviceRole:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
serviceRole = Maybe Text
a} :: GetMaintenanceWindowExecutionTaskResponse)

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

instance
  Prelude.NFData
    GetMaintenanceWindowExecutionTaskResponse