{-# 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.SSM.DeleteMaintenanceWindow
(
DeleteMaintenanceWindow (..),
newDeleteMaintenanceWindow,
deleteMaintenanceWindow_windowId,
DeleteMaintenanceWindowResponse (..),
newDeleteMaintenanceWindowResponse,
deleteMaintenanceWindowResponse_windowId,
deleteMaintenanceWindowResponse_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
data DeleteMaintenanceWindow = DeleteMaintenanceWindow'
{
DeleteMaintenanceWindow -> Text
windowId :: Prelude.Text
}
deriving (DeleteMaintenanceWindow -> DeleteMaintenanceWindow -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteMaintenanceWindow -> DeleteMaintenanceWindow -> Bool
$c/= :: DeleteMaintenanceWindow -> DeleteMaintenanceWindow -> Bool
== :: DeleteMaintenanceWindow -> DeleteMaintenanceWindow -> Bool
$c== :: DeleteMaintenanceWindow -> DeleteMaintenanceWindow -> Bool
Prelude.Eq, ReadPrec [DeleteMaintenanceWindow]
ReadPrec DeleteMaintenanceWindow
Int -> ReadS DeleteMaintenanceWindow
ReadS [DeleteMaintenanceWindow]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteMaintenanceWindow]
$creadListPrec :: ReadPrec [DeleteMaintenanceWindow]
readPrec :: ReadPrec DeleteMaintenanceWindow
$creadPrec :: ReadPrec DeleteMaintenanceWindow
readList :: ReadS [DeleteMaintenanceWindow]
$creadList :: ReadS [DeleteMaintenanceWindow]
readsPrec :: Int -> ReadS DeleteMaintenanceWindow
$creadsPrec :: Int -> ReadS DeleteMaintenanceWindow
Prelude.Read, Int -> DeleteMaintenanceWindow -> ShowS
[DeleteMaintenanceWindow] -> ShowS
DeleteMaintenanceWindow -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteMaintenanceWindow] -> ShowS
$cshowList :: [DeleteMaintenanceWindow] -> ShowS
show :: DeleteMaintenanceWindow -> String
$cshow :: DeleteMaintenanceWindow -> String
showsPrec :: Int -> DeleteMaintenanceWindow -> ShowS
$cshowsPrec :: Int -> DeleteMaintenanceWindow -> ShowS
Prelude.Show, forall x. Rep DeleteMaintenanceWindow x -> DeleteMaintenanceWindow
forall x. DeleteMaintenanceWindow -> Rep DeleteMaintenanceWindow x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteMaintenanceWindow x -> DeleteMaintenanceWindow
$cfrom :: forall x. DeleteMaintenanceWindow -> Rep DeleteMaintenanceWindow x
Prelude.Generic)
newDeleteMaintenanceWindow ::
Prelude.Text ->
DeleteMaintenanceWindow
newDeleteMaintenanceWindow :: Text -> DeleteMaintenanceWindow
newDeleteMaintenanceWindow Text
pWindowId_ =
DeleteMaintenanceWindow' {$sel:windowId:DeleteMaintenanceWindow' :: Text
windowId = Text
pWindowId_}
deleteMaintenanceWindow_windowId :: Lens.Lens' DeleteMaintenanceWindow Prelude.Text
deleteMaintenanceWindow_windowId :: Lens' DeleteMaintenanceWindow Text
deleteMaintenanceWindow_windowId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteMaintenanceWindow' {Text
windowId :: Text
$sel:windowId:DeleteMaintenanceWindow' :: DeleteMaintenanceWindow -> Text
windowId} -> Text
windowId) (\s :: DeleteMaintenanceWindow
s@DeleteMaintenanceWindow' {} Text
a -> DeleteMaintenanceWindow
s {$sel:windowId:DeleteMaintenanceWindow' :: Text
windowId = Text
a} :: DeleteMaintenanceWindow)
instance Core.AWSRequest DeleteMaintenanceWindow where
type
AWSResponse DeleteMaintenanceWindow =
DeleteMaintenanceWindowResponse
request :: (Service -> Service)
-> DeleteMaintenanceWindow -> Request DeleteMaintenanceWindow
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 DeleteMaintenanceWindow
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DeleteMaintenanceWindow)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Maybe Text -> Int -> DeleteMaintenanceWindowResponse
DeleteMaintenanceWindowResponse'
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
"WindowId")
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 DeleteMaintenanceWindow where
hashWithSalt :: Int -> DeleteMaintenanceWindow -> Int
hashWithSalt Int
_salt DeleteMaintenanceWindow' {Text
windowId :: Text
$sel:windowId:DeleteMaintenanceWindow' :: DeleteMaintenanceWindow -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
windowId
instance Prelude.NFData DeleteMaintenanceWindow where
rnf :: DeleteMaintenanceWindow -> ()
rnf DeleteMaintenanceWindow' {Text
windowId :: Text
$sel:windowId:DeleteMaintenanceWindow' :: DeleteMaintenanceWindow -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
windowId
instance Data.ToHeaders DeleteMaintenanceWindow where
toHeaders :: DeleteMaintenanceWindow -> 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.DeleteMaintenanceWindow" ::
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 DeleteMaintenanceWindow where
toJSON :: DeleteMaintenanceWindow -> Value
toJSON DeleteMaintenanceWindow' {Text
windowId :: Text
$sel:windowId:DeleteMaintenanceWindow' :: DeleteMaintenanceWindow -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[forall a. a -> Maybe a
Prelude.Just (Key
"WindowId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
windowId)]
)
instance Data.ToPath DeleteMaintenanceWindow where
toPath :: DeleteMaintenanceWindow -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DeleteMaintenanceWindow where
toQuery :: DeleteMaintenanceWindow -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeleteMaintenanceWindowResponse = DeleteMaintenanceWindowResponse'
{
DeleteMaintenanceWindowResponse -> Maybe Text
windowId :: Prelude.Maybe Prelude.Text,
DeleteMaintenanceWindowResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeleteMaintenanceWindowResponse
-> DeleteMaintenanceWindowResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteMaintenanceWindowResponse
-> DeleteMaintenanceWindowResponse -> Bool
$c/= :: DeleteMaintenanceWindowResponse
-> DeleteMaintenanceWindowResponse -> Bool
== :: DeleteMaintenanceWindowResponse
-> DeleteMaintenanceWindowResponse -> Bool
$c== :: DeleteMaintenanceWindowResponse
-> DeleteMaintenanceWindowResponse -> Bool
Prelude.Eq, ReadPrec [DeleteMaintenanceWindowResponse]
ReadPrec DeleteMaintenanceWindowResponse
Int -> ReadS DeleteMaintenanceWindowResponse
ReadS [DeleteMaintenanceWindowResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteMaintenanceWindowResponse]
$creadListPrec :: ReadPrec [DeleteMaintenanceWindowResponse]
readPrec :: ReadPrec DeleteMaintenanceWindowResponse
$creadPrec :: ReadPrec DeleteMaintenanceWindowResponse
readList :: ReadS [DeleteMaintenanceWindowResponse]
$creadList :: ReadS [DeleteMaintenanceWindowResponse]
readsPrec :: Int -> ReadS DeleteMaintenanceWindowResponse
$creadsPrec :: Int -> ReadS DeleteMaintenanceWindowResponse
Prelude.Read, Int -> DeleteMaintenanceWindowResponse -> ShowS
[DeleteMaintenanceWindowResponse] -> ShowS
DeleteMaintenanceWindowResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteMaintenanceWindowResponse] -> ShowS
$cshowList :: [DeleteMaintenanceWindowResponse] -> ShowS
show :: DeleteMaintenanceWindowResponse -> String
$cshow :: DeleteMaintenanceWindowResponse -> String
showsPrec :: Int -> DeleteMaintenanceWindowResponse -> ShowS
$cshowsPrec :: Int -> DeleteMaintenanceWindowResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteMaintenanceWindowResponse x
-> DeleteMaintenanceWindowResponse
forall x.
DeleteMaintenanceWindowResponse
-> Rep DeleteMaintenanceWindowResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteMaintenanceWindowResponse x
-> DeleteMaintenanceWindowResponse
$cfrom :: forall x.
DeleteMaintenanceWindowResponse
-> Rep DeleteMaintenanceWindowResponse x
Prelude.Generic)
newDeleteMaintenanceWindowResponse ::
Prelude.Int ->
DeleteMaintenanceWindowResponse
newDeleteMaintenanceWindowResponse :: Int -> DeleteMaintenanceWindowResponse
newDeleteMaintenanceWindowResponse Int
pHttpStatus_ =
DeleteMaintenanceWindowResponse'
{ $sel:windowId:DeleteMaintenanceWindowResponse' :: Maybe Text
windowId =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DeleteMaintenanceWindowResponse' :: Int
httpStatus = Int
pHttpStatus_
}
deleteMaintenanceWindowResponse_windowId :: Lens.Lens' DeleteMaintenanceWindowResponse (Prelude.Maybe Prelude.Text)
deleteMaintenanceWindowResponse_windowId :: Lens' DeleteMaintenanceWindowResponse (Maybe Text)
deleteMaintenanceWindowResponse_windowId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteMaintenanceWindowResponse' {Maybe Text
windowId :: Maybe Text
$sel:windowId:DeleteMaintenanceWindowResponse' :: DeleteMaintenanceWindowResponse -> Maybe Text
windowId} -> Maybe Text
windowId) (\s :: DeleteMaintenanceWindowResponse
s@DeleteMaintenanceWindowResponse' {} Maybe Text
a -> DeleteMaintenanceWindowResponse
s {$sel:windowId:DeleteMaintenanceWindowResponse' :: Maybe Text
windowId = Maybe Text
a} :: DeleteMaintenanceWindowResponse)
deleteMaintenanceWindowResponse_httpStatus :: Lens.Lens' DeleteMaintenanceWindowResponse Prelude.Int
deleteMaintenanceWindowResponse_httpStatus :: Lens' DeleteMaintenanceWindowResponse Int
deleteMaintenanceWindowResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteMaintenanceWindowResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteMaintenanceWindowResponse' :: DeleteMaintenanceWindowResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteMaintenanceWindowResponse
s@DeleteMaintenanceWindowResponse' {} Int
a -> DeleteMaintenanceWindowResponse
s {$sel:httpStatus:DeleteMaintenanceWindowResponse' :: Int
httpStatus = Int
a} :: DeleteMaintenanceWindowResponse)
instance
Prelude.NFData
DeleteMaintenanceWindowResponse
where
rnf :: DeleteMaintenanceWindowResponse -> ()
rnf DeleteMaintenanceWindowResponse' {Int
Maybe Text
httpStatus :: Int
windowId :: Maybe Text
$sel:httpStatus:DeleteMaintenanceWindowResponse' :: DeleteMaintenanceWindowResponse -> Int
$sel:windowId:DeleteMaintenanceWindowResponse' :: DeleteMaintenanceWindowResponse -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
windowId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus