{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.Config.PutRemediationConfigurations
(
PutRemediationConfigurations (..),
newPutRemediationConfigurations,
putRemediationConfigurations_remediationConfigurations,
PutRemediationConfigurationsResponse (..),
newPutRemediationConfigurationsResponse,
putRemediationConfigurationsResponse_failedBatches,
putRemediationConfigurationsResponse_httpStatus,
)
where
import Amazonka.Config.Types
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
data PutRemediationConfigurations = PutRemediationConfigurations'
{
PutRemediationConfigurations -> [RemediationConfiguration]
remediationConfigurations :: [RemediationConfiguration]
}
deriving (PutRemediationConfigurations
-> PutRemediationConfigurations -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PutRemediationConfigurations
-> PutRemediationConfigurations -> Bool
$c/= :: PutRemediationConfigurations
-> PutRemediationConfigurations -> Bool
== :: PutRemediationConfigurations
-> PutRemediationConfigurations -> Bool
$c== :: PutRemediationConfigurations
-> PutRemediationConfigurations -> Bool
Prelude.Eq, ReadPrec [PutRemediationConfigurations]
ReadPrec PutRemediationConfigurations
Int -> ReadS PutRemediationConfigurations
ReadS [PutRemediationConfigurations]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PutRemediationConfigurations]
$creadListPrec :: ReadPrec [PutRemediationConfigurations]
readPrec :: ReadPrec PutRemediationConfigurations
$creadPrec :: ReadPrec PutRemediationConfigurations
readList :: ReadS [PutRemediationConfigurations]
$creadList :: ReadS [PutRemediationConfigurations]
readsPrec :: Int -> ReadS PutRemediationConfigurations
$creadsPrec :: Int -> ReadS PutRemediationConfigurations
Prelude.Read, Int -> PutRemediationConfigurations -> ShowS
[PutRemediationConfigurations] -> ShowS
PutRemediationConfigurations -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PutRemediationConfigurations] -> ShowS
$cshowList :: [PutRemediationConfigurations] -> ShowS
show :: PutRemediationConfigurations -> String
$cshow :: PutRemediationConfigurations -> String
showsPrec :: Int -> PutRemediationConfigurations -> ShowS
$cshowsPrec :: Int -> PutRemediationConfigurations -> ShowS
Prelude.Show, forall x.
Rep PutRemediationConfigurations x -> PutRemediationConfigurations
forall x.
PutRemediationConfigurations -> Rep PutRemediationConfigurations x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PutRemediationConfigurations x -> PutRemediationConfigurations
$cfrom :: forall x.
PutRemediationConfigurations -> Rep PutRemediationConfigurations x
Prelude.Generic)
newPutRemediationConfigurations ::
PutRemediationConfigurations
newPutRemediationConfigurations :: PutRemediationConfigurations
newPutRemediationConfigurations =
PutRemediationConfigurations'
{ $sel:remediationConfigurations:PutRemediationConfigurations' :: [RemediationConfiguration]
remediationConfigurations =
forall a. Monoid a => a
Prelude.mempty
}
putRemediationConfigurations_remediationConfigurations :: Lens.Lens' PutRemediationConfigurations [RemediationConfiguration]
putRemediationConfigurations_remediationConfigurations :: Lens' PutRemediationConfigurations [RemediationConfiguration]
putRemediationConfigurations_remediationConfigurations = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutRemediationConfigurations' {[RemediationConfiguration]
remediationConfigurations :: [RemediationConfiguration]
$sel:remediationConfigurations:PutRemediationConfigurations' :: PutRemediationConfigurations -> [RemediationConfiguration]
remediationConfigurations} -> [RemediationConfiguration]
remediationConfigurations) (\s :: PutRemediationConfigurations
s@PutRemediationConfigurations' {} [RemediationConfiguration]
a -> PutRemediationConfigurations
s {$sel:remediationConfigurations:PutRemediationConfigurations' :: [RemediationConfiguration]
remediationConfigurations = [RemediationConfiguration]
a} :: PutRemediationConfigurations) 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
instance Core.AWSRequest PutRemediationConfigurations where
type
AWSResponse PutRemediationConfigurations =
PutRemediationConfigurationsResponse
request :: (Service -> Service)
-> PutRemediationConfigurations
-> Request PutRemediationConfigurations
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 PutRemediationConfigurations
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse PutRemediationConfigurations)))
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 [FailedRemediationBatch]
-> Int -> PutRemediationConfigurationsResponse
PutRemediationConfigurationsResponse'
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
"FailedBatches" forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance
Prelude.Hashable
PutRemediationConfigurations
where
hashWithSalt :: Int -> PutRemediationConfigurations -> Int
hashWithSalt Int
_salt PutRemediationConfigurations' {[RemediationConfiguration]
remediationConfigurations :: [RemediationConfiguration]
$sel:remediationConfigurations:PutRemediationConfigurations' :: PutRemediationConfigurations -> [RemediationConfiguration]
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` [RemediationConfiguration]
remediationConfigurations
instance Prelude.NFData PutRemediationConfigurations where
rnf :: PutRemediationConfigurations -> ()
rnf PutRemediationConfigurations' {[RemediationConfiguration]
remediationConfigurations :: [RemediationConfiguration]
$sel:remediationConfigurations:PutRemediationConfigurations' :: PutRemediationConfigurations -> [RemediationConfiguration]
..} =
forall a. NFData a => a -> ()
Prelude.rnf [RemediationConfiguration]
remediationConfigurations
instance Data.ToHeaders PutRemediationConfigurations where
toHeaders :: PutRemediationConfigurations -> 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
"StarlingDoveService.PutRemediationConfigurations" ::
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 PutRemediationConfigurations where
toJSON :: PutRemediationConfigurations -> Value
toJSON PutRemediationConfigurations' {[RemediationConfiguration]
remediationConfigurations :: [RemediationConfiguration]
$sel:remediationConfigurations:PutRemediationConfigurations' :: PutRemediationConfigurations -> [RemediationConfiguration]
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just
( Key
"RemediationConfigurations"
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= [RemediationConfiguration]
remediationConfigurations
)
]
)
instance Data.ToPath PutRemediationConfigurations where
toPath :: PutRemediationConfigurations -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery PutRemediationConfigurations where
toQuery :: PutRemediationConfigurations -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data PutRemediationConfigurationsResponse = PutRemediationConfigurationsResponse'
{
PutRemediationConfigurationsResponse
-> Maybe [FailedRemediationBatch]
failedBatches :: Prelude.Maybe [FailedRemediationBatch],
PutRemediationConfigurationsResponse -> Int
httpStatus :: Prelude.Int
}
deriving (PutRemediationConfigurationsResponse
-> PutRemediationConfigurationsResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PutRemediationConfigurationsResponse
-> PutRemediationConfigurationsResponse -> Bool
$c/= :: PutRemediationConfigurationsResponse
-> PutRemediationConfigurationsResponse -> Bool
== :: PutRemediationConfigurationsResponse
-> PutRemediationConfigurationsResponse -> Bool
$c== :: PutRemediationConfigurationsResponse
-> PutRemediationConfigurationsResponse -> Bool
Prelude.Eq, ReadPrec [PutRemediationConfigurationsResponse]
ReadPrec PutRemediationConfigurationsResponse
Int -> ReadS PutRemediationConfigurationsResponse
ReadS [PutRemediationConfigurationsResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PutRemediationConfigurationsResponse]
$creadListPrec :: ReadPrec [PutRemediationConfigurationsResponse]
readPrec :: ReadPrec PutRemediationConfigurationsResponse
$creadPrec :: ReadPrec PutRemediationConfigurationsResponse
readList :: ReadS [PutRemediationConfigurationsResponse]
$creadList :: ReadS [PutRemediationConfigurationsResponse]
readsPrec :: Int -> ReadS PutRemediationConfigurationsResponse
$creadsPrec :: Int -> ReadS PutRemediationConfigurationsResponse
Prelude.Read, Int -> PutRemediationConfigurationsResponse -> ShowS
[PutRemediationConfigurationsResponse] -> ShowS
PutRemediationConfigurationsResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PutRemediationConfigurationsResponse] -> ShowS
$cshowList :: [PutRemediationConfigurationsResponse] -> ShowS
show :: PutRemediationConfigurationsResponse -> String
$cshow :: PutRemediationConfigurationsResponse -> String
showsPrec :: Int -> PutRemediationConfigurationsResponse -> ShowS
$cshowsPrec :: Int -> PutRemediationConfigurationsResponse -> ShowS
Prelude.Show, forall x.
Rep PutRemediationConfigurationsResponse x
-> PutRemediationConfigurationsResponse
forall x.
PutRemediationConfigurationsResponse
-> Rep PutRemediationConfigurationsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PutRemediationConfigurationsResponse x
-> PutRemediationConfigurationsResponse
$cfrom :: forall x.
PutRemediationConfigurationsResponse
-> Rep PutRemediationConfigurationsResponse x
Prelude.Generic)
newPutRemediationConfigurationsResponse ::
Prelude.Int ->
PutRemediationConfigurationsResponse
newPutRemediationConfigurationsResponse :: Int -> PutRemediationConfigurationsResponse
newPutRemediationConfigurationsResponse Int
pHttpStatus_ =
PutRemediationConfigurationsResponse'
{ $sel:failedBatches:PutRemediationConfigurationsResponse' :: Maybe [FailedRemediationBatch]
failedBatches =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:PutRemediationConfigurationsResponse' :: Int
httpStatus = Int
pHttpStatus_
}
putRemediationConfigurationsResponse_failedBatches :: Lens.Lens' PutRemediationConfigurationsResponse (Prelude.Maybe [FailedRemediationBatch])
putRemediationConfigurationsResponse_failedBatches :: Lens'
PutRemediationConfigurationsResponse
(Maybe [FailedRemediationBatch])
putRemediationConfigurationsResponse_failedBatches = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutRemediationConfigurationsResponse' {Maybe [FailedRemediationBatch]
failedBatches :: Maybe [FailedRemediationBatch]
$sel:failedBatches:PutRemediationConfigurationsResponse' :: PutRemediationConfigurationsResponse
-> Maybe [FailedRemediationBatch]
failedBatches} -> Maybe [FailedRemediationBatch]
failedBatches) (\s :: PutRemediationConfigurationsResponse
s@PutRemediationConfigurationsResponse' {} Maybe [FailedRemediationBatch]
a -> PutRemediationConfigurationsResponse
s {$sel:failedBatches:PutRemediationConfigurationsResponse' :: Maybe [FailedRemediationBatch]
failedBatches = Maybe [FailedRemediationBatch]
a} :: PutRemediationConfigurationsResponse) 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
putRemediationConfigurationsResponse_httpStatus :: Lens.Lens' PutRemediationConfigurationsResponse Prelude.Int
putRemediationConfigurationsResponse_httpStatus :: Lens' PutRemediationConfigurationsResponse Int
putRemediationConfigurationsResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutRemediationConfigurationsResponse' {Int
httpStatus :: Int
$sel:httpStatus:PutRemediationConfigurationsResponse' :: PutRemediationConfigurationsResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: PutRemediationConfigurationsResponse
s@PutRemediationConfigurationsResponse' {} Int
a -> PutRemediationConfigurationsResponse
s {$sel:httpStatus:PutRemediationConfigurationsResponse' :: Int
httpStatus = Int
a} :: PutRemediationConfigurationsResponse)
instance
Prelude.NFData
PutRemediationConfigurationsResponse
where
rnf :: PutRemediationConfigurationsResponse -> ()
rnf PutRemediationConfigurationsResponse' {Int
Maybe [FailedRemediationBatch]
httpStatus :: Int
failedBatches :: Maybe [FailedRemediationBatch]
$sel:httpStatus:PutRemediationConfigurationsResponse' :: PutRemediationConfigurationsResponse -> Int
$sel:failedBatches:PutRemediationConfigurationsResponse' :: PutRemediationConfigurationsResponse
-> Maybe [FailedRemediationBatch]
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe [FailedRemediationBatch]
failedBatches
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus