{-# 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-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- 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_alarmConfiguration,
    getMaintenanceWindowExecutionTaskResponse_endTime,
    getMaintenanceWindowExecutionTaskResponse_maxConcurrency,
    getMaintenanceWindowExecutionTaskResponse_maxErrors,
    getMaintenanceWindowExecutionTaskResponse_priority,
    getMaintenanceWindowExecutionTaskResponse_serviceRole,
    getMaintenanceWindowExecutionTaskResponse_startTime,
    getMaintenanceWindowExecutionTaskResponse_status,
    getMaintenanceWindowExecutionTaskResponse_statusDetails,
    getMaintenanceWindowExecutionTaskResponse_taskArn,
    getMaintenanceWindowExecutionTaskResponse_taskExecutionId,
    getMaintenanceWindowExecutionTaskResponse_taskParameters,
    getMaintenanceWindowExecutionTaskResponse_triggeredAlarms,
    getMaintenanceWindowExecutionTaskResponse_type,
    getMaintenanceWindowExecutionTaskResponse_windowExecutionId,
    getMaintenanceWindowExecutionTaskResponse_httpStatus,
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
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
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]
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
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.
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'
      { $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 :: Lens' GetMaintenanceWindowExecutionTask Text
getMaintenanceWindowExecutionTask_windowExecutionId = 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 :: Lens' GetMaintenanceWindowExecutionTask Text
getMaintenanceWindowExecutionTask_taskId = 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 :: (Service -> Service)
-> GetMaintenanceWindowExecutionTask
-> Request GetMaintenanceWindowExecutionTask
request Service -> Service
overrides =
    forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
  response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetMaintenanceWindowExecutionTask
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse (AWSResponse GetMaintenanceWindowExecutionTask)))
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 AlarmConfiguration
-> Maybe POSIX
-> Maybe Text
-> Maybe Text
-> Maybe Natural
-> Maybe Text
-> Maybe POSIX
-> Maybe MaintenanceWindowExecutionStatus
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe
     (Sensitive
        [Sensitive
           (HashMap
              Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
-> Maybe (NonEmpty AlarmStateInformation)
-> Maybe MaintenanceWindowTaskType
-> Maybe Text
-> Int
-> GetMaintenanceWindowExecutionTaskResponse
GetMaintenanceWindowExecutionTaskResponse'
            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
"AlarmConfiguration")
            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
"MaxConcurrency")
            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
"MaxErrors")
            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
"Priority")
            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
"ServiceRole")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"StartTime")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"Status")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"StatusDetails")
            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
"TaskArn")
            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
"TaskExecutionId")
            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
"TaskParameters" 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
"TriggeredAlarms")
            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
"Type")
            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
"WindowExecutionId")
            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
    GetMaintenanceWindowExecutionTask
  where
  hashWithSalt :: Int -> GetMaintenanceWindowExecutionTask -> Int
hashWithSalt
    Int
_salt
    GetMaintenanceWindowExecutionTask' {Text
taskId :: Text
windowExecutionId :: Text
$sel:taskId:GetMaintenanceWindowExecutionTask' :: GetMaintenanceWindowExecutionTask -> Text
$sel:windowExecutionId:GetMaintenanceWindowExecutionTask' :: GetMaintenanceWindowExecutionTask -> Text
..} =
      Int
_salt
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
windowExecutionId
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
taskId

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

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

instance
  Data.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
Data.object
      ( forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ forall a. a -> Maybe a
Prelude.Just
              (Key
"WindowExecutionId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
windowExecutionId),
            forall a. a -> Maybe a
Prelude.Just (Key
"TaskId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
taskId)
          ]
      )

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

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

-- | /See:/ 'newGetMaintenanceWindowExecutionTaskResponse' smart constructor.
data GetMaintenanceWindowExecutionTaskResponse = GetMaintenanceWindowExecutionTaskResponse'
  { -- | The details for the CloudWatch alarm you applied to your maintenance
    -- window task.
    GetMaintenanceWindowExecutionTaskResponse
-> Maybe AlarmConfiguration
alarmConfiguration :: Prelude.Maybe AlarmConfiguration,
    -- | The time the task execution completed.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe POSIX
endTime :: Prelude.Maybe Data.POSIX,
    -- | The defined maximum number of task executions that could be run in
    -- parallel.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
maxConcurrency :: 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 priority of the task.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Natural
priority :: Prelude.Maybe Prelude.Natural,
    -- | The role that was assumed when running the task.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
serviceRole :: Prelude.Maybe Prelude.Text,
    -- | The time the task execution started.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe POSIX
startTime :: Prelude.Maybe Data.POSIX,
    -- | The status of the task.
    GetMaintenanceWindowExecutionTaskResponse
-> Maybe MaintenanceWindowExecutionStatus
status :: Prelude.Maybe MaintenanceWindowExecutionStatus,
    -- | The details explaining the status. Not available for all status values.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
statusDetails :: Prelude.Maybe Prelude.Text,
    -- | The Amazon Resource Name (ARN) of the task that ran.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
taskArn :: Prelude.Maybe Prelude.Text,
    -- | The ID of the specific task execution in the maintenance window task
    -- that was retrieved.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
taskExecutionId :: Prelude.Maybe Prelude.Text,
    -- | 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 (Data.Sensitive [Data.Sensitive (Prelude.HashMap Prelude.Text (Data.Sensitive MaintenanceWindowTaskParameterValueExpression))]),
    -- | The CloudWatch alarms that were invoked by the maintenance window task.
    GetMaintenanceWindowExecutionTaskResponse
-> Maybe (NonEmpty AlarmStateInformation)
triggeredAlarms :: Prelude.Maybe (Prelude.NonEmpty AlarmStateInformation),
    -- | The type of task that was run.
    GetMaintenanceWindowExecutionTaskResponse
-> Maybe MaintenanceWindowTaskType
type' :: Prelude.Maybe MaintenanceWindowTaskType,
    -- | The ID of the maintenance window execution that includes the task.
    GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
windowExecutionId :: Prelude.Maybe Prelude.Text,
    -- | The response's http status code.
    GetMaintenanceWindowExecutionTaskResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (GetMaintenanceWindowExecutionTaskResponse
-> GetMaintenanceWindowExecutionTaskResponse -> Bool
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
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.
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:
--
-- 'alarmConfiguration', 'getMaintenanceWindowExecutionTaskResponse_alarmConfiguration' - The details for the CloudWatch alarm you applied to your maintenance
-- window task.
--
-- 'endTime', 'getMaintenanceWindowExecutionTaskResponse_endTime' - The time the task execution completed.
--
-- 'maxConcurrency', 'getMaintenanceWindowExecutionTaskResponse_maxConcurrency' - The defined maximum number of task executions that could be run in
-- parallel.
--
-- 'maxErrors', 'getMaintenanceWindowExecutionTaskResponse_maxErrors' - The defined maximum number of task execution errors allowed before
-- scheduling of the task execution would have been stopped.
--
-- 'priority', 'getMaintenanceWindowExecutionTaskResponse_priority' - The priority of the task.
--
-- 'serviceRole', 'getMaintenanceWindowExecutionTaskResponse_serviceRole' - The role that was assumed when running the task.
--
-- 'startTime', 'getMaintenanceWindowExecutionTaskResponse_startTime' - The time the task execution started.
--
-- 'status', 'getMaintenanceWindowExecutionTaskResponse_status' - The status of the task.
--
-- 'statusDetails', 'getMaintenanceWindowExecutionTaskResponse_statusDetails' - The details explaining the status. Not available for all status values.
--
-- 'taskArn', 'getMaintenanceWindowExecutionTaskResponse_taskArn' - The Amazon Resource Name (ARN) of the task that ran.
--
-- 'taskExecutionId', 'getMaintenanceWindowExecutionTaskResponse_taskExecutionId' - The ID of the specific task execution in the maintenance window task
-- that was retrieved.
--
-- '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
--
-- 'triggeredAlarms', 'getMaintenanceWindowExecutionTaskResponse_triggeredAlarms' - The CloudWatch alarms that were invoked by the maintenance window task.
--
-- 'type'', 'getMaintenanceWindowExecutionTaskResponse_type' - The type of task that was run.
--
-- 'windowExecutionId', 'getMaintenanceWindowExecutionTaskResponse_windowExecutionId' - The ID of the maintenance window execution that includes the task.
--
-- 'httpStatus', 'getMaintenanceWindowExecutionTaskResponse_httpStatus' - The response's http status code.
newGetMaintenanceWindowExecutionTaskResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  GetMaintenanceWindowExecutionTaskResponse
newGetMaintenanceWindowExecutionTaskResponse :: Int -> GetMaintenanceWindowExecutionTaskResponse
newGetMaintenanceWindowExecutionTaskResponse
  Int
pHttpStatus_ =
    GetMaintenanceWindowExecutionTaskResponse'
      { $sel:alarmConfiguration:GetMaintenanceWindowExecutionTaskResponse' :: Maybe AlarmConfiguration
alarmConfiguration =
          forall a. Maybe a
Prelude.Nothing,
        $sel:endTime:GetMaintenanceWindowExecutionTaskResponse' :: Maybe POSIX
endTime = forall a. Maybe a
Prelude.Nothing,
        $sel:maxConcurrency:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
maxConcurrency = forall a. Maybe a
Prelude.Nothing,
        $sel:maxErrors:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
maxErrors = forall a. Maybe a
Prelude.Nothing,
        $sel:priority:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Natural
priority = forall a. Maybe a
Prelude.Nothing,
        $sel:serviceRole:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
serviceRole = forall a. Maybe a
Prelude.Nothing,
        $sel:startTime:GetMaintenanceWindowExecutionTaskResponse' :: Maybe POSIX
startTime = forall a. Maybe a
Prelude.Nothing,
        $sel:status:GetMaintenanceWindowExecutionTaskResponse' :: Maybe MaintenanceWindowExecutionStatus
status = forall a. Maybe a
Prelude.Nothing,
        $sel:statusDetails:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
statusDetails = forall a. Maybe a
Prelude.Nothing,
        $sel:taskArn:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
taskArn = forall a. Maybe a
Prelude.Nothing,
        $sel:taskExecutionId:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
taskExecutionId =
          forall a. Maybe a
Prelude.Nothing,
        $sel:taskParameters:GetMaintenanceWindowExecutionTaskResponse' :: Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
taskParameters = forall a. Maybe a
Prelude.Nothing,
        $sel:triggeredAlarms:GetMaintenanceWindowExecutionTaskResponse' :: Maybe (NonEmpty AlarmStateInformation)
triggeredAlarms =
          forall a. Maybe a
Prelude.Nothing,
        $sel:type':GetMaintenanceWindowExecutionTaskResponse' :: Maybe MaintenanceWindowTaskType
type' = forall a. Maybe a
Prelude.Nothing,
        $sel:windowExecutionId:GetMaintenanceWindowExecutionTaskResponse' :: Maybe Text
windowExecutionId =
          forall a. Maybe a
Prelude.Nothing,
        $sel:httpStatus:GetMaintenanceWindowExecutionTaskResponse' :: Int
httpStatus = Int
pHttpStatus_
      }

-- | The details for the CloudWatch alarm you applied to your maintenance
-- window task.
getMaintenanceWindowExecutionTaskResponse_alarmConfiguration :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe AlarmConfiguration)
getMaintenanceWindowExecutionTaskResponse_alarmConfiguration :: Lens'
  GetMaintenanceWindowExecutionTaskResponse
  (Maybe AlarmConfiguration)
getMaintenanceWindowExecutionTaskResponse_alarmConfiguration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe AlarmConfiguration
alarmConfiguration :: Maybe AlarmConfiguration
$sel:alarmConfiguration:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse
-> Maybe AlarmConfiguration
alarmConfiguration} -> Maybe AlarmConfiguration
alarmConfiguration) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe AlarmConfiguration
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:alarmConfiguration:GetMaintenanceWindowExecutionTaskResponse' :: Maybe AlarmConfiguration
alarmConfiguration = Maybe AlarmConfiguration
a} :: GetMaintenanceWindowExecutionTaskResponse)

-- | The time the task execution completed.
getMaintenanceWindowExecutionTaskResponse_endTime :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.UTCTime)
getMaintenanceWindowExecutionTaskResponse_endTime :: Lens' GetMaintenanceWindowExecutionTaskResponse (Maybe UTCTime)
getMaintenanceWindowExecutionTaskResponse_endTime = 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) 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 defined maximum number of task executions that could be run in
-- parallel.
getMaintenanceWindowExecutionTaskResponse_maxConcurrency :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_maxConcurrency :: Lens' GetMaintenanceWindowExecutionTaskResponse (Maybe Text)
getMaintenanceWindowExecutionTaskResponse_maxConcurrency = 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 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 :: Lens' GetMaintenanceWindowExecutionTaskResponse (Maybe Text)
getMaintenanceWindowExecutionTaskResponse_maxErrors = 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 priority of the task.
getMaintenanceWindowExecutionTaskResponse_priority :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Natural)
getMaintenanceWindowExecutionTaskResponse_priority :: Lens' GetMaintenanceWindowExecutionTaskResponse (Maybe Natural)
getMaintenanceWindowExecutionTaskResponse_priority = 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 role that was assumed when running the task.
getMaintenanceWindowExecutionTaskResponse_serviceRole :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_serviceRole :: Lens' GetMaintenanceWindowExecutionTaskResponse (Maybe Text)
getMaintenanceWindowExecutionTaskResponse_serviceRole = 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 time the task execution started.
getMaintenanceWindowExecutionTaskResponse_startTime :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.UTCTime)
getMaintenanceWindowExecutionTaskResponse_startTime :: Lens' GetMaintenanceWindowExecutionTaskResponse (Maybe UTCTime)
getMaintenanceWindowExecutionTaskResponse_startTime = 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) 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 status of the task.
getMaintenanceWindowExecutionTaskResponse_status :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe MaintenanceWindowExecutionStatus)
getMaintenanceWindowExecutionTaskResponse_status :: Lens'
  GetMaintenanceWindowExecutionTaskResponse
  (Maybe MaintenanceWindowExecutionStatus)
getMaintenanceWindowExecutionTaskResponse_status = 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 details explaining the status. Not available for all status values.
getMaintenanceWindowExecutionTaskResponse_statusDetails :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_statusDetails :: Lens' GetMaintenanceWindowExecutionTaskResponse (Maybe Text)
getMaintenanceWindowExecutionTaskResponse_statusDetails = 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 Amazon Resource Name (ARN) of the task that ran.
getMaintenanceWindowExecutionTaskResponse_taskArn :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_taskArn :: Lens' GetMaintenanceWindowExecutionTaskResponse (Maybe Text)
getMaintenanceWindowExecutionTaskResponse_taskArn = 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 specific task execution in the maintenance window task
-- that was retrieved.
getMaintenanceWindowExecutionTaskResponse_taskExecutionId :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_taskExecutionId :: Lens' GetMaintenanceWindowExecutionTaskResponse (Maybe Text)
getMaintenanceWindowExecutionTaskResponse_taskExecutionId = 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 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 :: Lens'
  GetMaintenanceWindowExecutionTaskResponse
  (Maybe
     [HashMap Text MaintenanceWindowTaskParameterValueExpression])
getMaintenanceWindowExecutionTaskResponse_taskParameters = 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) 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 CloudWatch alarms that were invoked by the maintenance window task.
getMaintenanceWindowExecutionTaskResponse_triggeredAlarms :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe (Prelude.NonEmpty AlarmStateInformation))
getMaintenanceWindowExecutionTaskResponse_triggeredAlarms :: Lens'
  GetMaintenanceWindowExecutionTaskResponse
  (Maybe (NonEmpty AlarmStateInformation))
getMaintenanceWindowExecutionTaskResponse_triggeredAlarms = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMaintenanceWindowExecutionTaskResponse' {Maybe (NonEmpty AlarmStateInformation)
triggeredAlarms :: Maybe (NonEmpty AlarmStateInformation)
$sel:triggeredAlarms:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse
-> Maybe (NonEmpty AlarmStateInformation)
triggeredAlarms} -> Maybe (NonEmpty AlarmStateInformation)
triggeredAlarms) (\s :: GetMaintenanceWindowExecutionTaskResponse
s@GetMaintenanceWindowExecutionTaskResponse' {} Maybe (NonEmpty AlarmStateInformation)
a -> GetMaintenanceWindowExecutionTaskResponse
s {$sel:triggeredAlarms:GetMaintenanceWindowExecutionTaskResponse' :: Maybe (NonEmpty AlarmStateInformation)
triggeredAlarms = Maybe (NonEmpty AlarmStateInformation)
a} :: GetMaintenanceWindowExecutionTaskResponse) 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 type of task that was run.
getMaintenanceWindowExecutionTaskResponse_type :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe MaintenanceWindowTaskType)
getMaintenanceWindowExecutionTaskResponse_type :: Lens'
  GetMaintenanceWindowExecutionTaskResponse
  (Maybe MaintenanceWindowTaskType)
getMaintenanceWindowExecutionTaskResponse_type = 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 ID of the maintenance window execution that includes the task.
getMaintenanceWindowExecutionTaskResponse_windowExecutionId :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse (Prelude.Maybe Prelude.Text)
getMaintenanceWindowExecutionTaskResponse_windowExecutionId :: Lens' GetMaintenanceWindowExecutionTaskResponse (Maybe Text)
getMaintenanceWindowExecutionTaskResponse_windowExecutionId = 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 response's http status code.
getMaintenanceWindowExecutionTaskResponse_httpStatus :: Lens.Lens' GetMaintenanceWindowExecutionTaskResponse Prelude.Int
getMaintenanceWindowExecutionTaskResponse_httpStatus :: Lens' GetMaintenanceWindowExecutionTaskResponse Int
getMaintenanceWindowExecutionTaskResponse_httpStatus = 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
  where
  rnf :: GetMaintenanceWindowExecutionTaskResponse -> ()
rnf GetMaintenanceWindowExecutionTaskResponse' {Int
Maybe Natural
Maybe (NonEmpty AlarmStateInformation)
Maybe Text
Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
Maybe POSIX
Maybe AlarmConfiguration
Maybe MaintenanceWindowExecutionStatus
Maybe MaintenanceWindowTaskType
httpStatus :: Int
windowExecutionId :: Maybe Text
type' :: Maybe MaintenanceWindowTaskType
triggeredAlarms :: Maybe (NonEmpty AlarmStateInformation)
taskParameters :: Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
taskExecutionId :: Maybe Text
taskArn :: Maybe Text
statusDetails :: Maybe Text
status :: Maybe MaintenanceWindowExecutionStatus
startTime :: Maybe POSIX
serviceRole :: Maybe Text
priority :: Maybe Natural
maxErrors :: Maybe Text
maxConcurrency :: Maybe Text
endTime :: Maybe POSIX
alarmConfiguration :: Maybe AlarmConfiguration
$sel:httpStatus:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Int
$sel:windowExecutionId:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
$sel:type':GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse
-> Maybe MaintenanceWindowTaskType
$sel:triggeredAlarms:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse
-> Maybe (NonEmpty AlarmStateInformation)
$sel:taskParameters:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse
-> Maybe
     (Sensitive
        [Sensitive
           (HashMap
              Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
$sel:taskExecutionId:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
$sel:taskArn:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
$sel:statusDetails:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
$sel:status:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse
-> Maybe MaintenanceWindowExecutionStatus
$sel:startTime:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe POSIX
$sel:serviceRole:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
$sel:priority:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Natural
$sel:maxErrors:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
$sel:maxConcurrency:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe Text
$sel:endTime:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse -> Maybe POSIX
$sel:alarmConfiguration:GetMaintenanceWindowExecutionTaskResponse' :: GetMaintenanceWindowExecutionTaskResponse
-> Maybe AlarmConfiguration
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe AlarmConfiguration
alarmConfiguration
      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
maxConcurrency
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
maxErrors
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
priority
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
serviceRole
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
startTime
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe MaintenanceWindowExecutionStatus
status
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
statusDetails
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
taskArn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
taskExecutionId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe
  (Sensitive
     [Sensitive
        (HashMap
           Text (Sensitive MaintenanceWindowTaskParameterValueExpression))])
taskParameters
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (NonEmpty AlarmStateInformation)
triggeredAlarms
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe MaintenanceWindowTaskType
type'
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
windowExecutionId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus