{-# 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.SSMIncidents.DeleteTimelineEvent
(
DeleteTimelineEvent (..),
newDeleteTimelineEvent,
deleteTimelineEvent_eventId,
deleteTimelineEvent_incidentRecordArn,
DeleteTimelineEventResponse (..),
newDeleteTimelineEventResponse,
deleteTimelineEventResponse_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.SSMIncidents.Types
data DeleteTimelineEvent = DeleteTimelineEvent'
{
DeleteTimelineEvent -> Text
eventId :: Prelude.Text,
DeleteTimelineEvent -> Text
incidentRecordArn :: Prelude.Text
}
deriving (DeleteTimelineEvent -> DeleteTimelineEvent -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteTimelineEvent -> DeleteTimelineEvent -> Bool
$c/= :: DeleteTimelineEvent -> DeleteTimelineEvent -> Bool
== :: DeleteTimelineEvent -> DeleteTimelineEvent -> Bool
$c== :: DeleteTimelineEvent -> DeleteTimelineEvent -> Bool
Prelude.Eq, ReadPrec [DeleteTimelineEvent]
ReadPrec DeleteTimelineEvent
Int -> ReadS DeleteTimelineEvent
ReadS [DeleteTimelineEvent]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteTimelineEvent]
$creadListPrec :: ReadPrec [DeleteTimelineEvent]
readPrec :: ReadPrec DeleteTimelineEvent
$creadPrec :: ReadPrec DeleteTimelineEvent
readList :: ReadS [DeleteTimelineEvent]
$creadList :: ReadS [DeleteTimelineEvent]
readsPrec :: Int -> ReadS DeleteTimelineEvent
$creadsPrec :: Int -> ReadS DeleteTimelineEvent
Prelude.Read, Int -> DeleteTimelineEvent -> ShowS
[DeleteTimelineEvent] -> ShowS
DeleteTimelineEvent -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteTimelineEvent] -> ShowS
$cshowList :: [DeleteTimelineEvent] -> ShowS
show :: DeleteTimelineEvent -> String
$cshow :: DeleteTimelineEvent -> String
showsPrec :: Int -> DeleteTimelineEvent -> ShowS
$cshowsPrec :: Int -> DeleteTimelineEvent -> ShowS
Prelude.Show, forall x. Rep DeleteTimelineEvent x -> DeleteTimelineEvent
forall x. DeleteTimelineEvent -> Rep DeleteTimelineEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteTimelineEvent x -> DeleteTimelineEvent
$cfrom :: forall x. DeleteTimelineEvent -> Rep DeleteTimelineEvent x
Prelude.Generic)
newDeleteTimelineEvent ::
Prelude.Text ->
Prelude.Text ->
DeleteTimelineEvent
newDeleteTimelineEvent :: Text -> Text -> DeleteTimelineEvent
newDeleteTimelineEvent Text
pEventId_ Text
pIncidentRecordArn_ =
DeleteTimelineEvent'
{ $sel:eventId:DeleteTimelineEvent' :: Text
eventId = Text
pEventId_,
$sel:incidentRecordArn:DeleteTimelineEvent' :: Text
incidentRecordArn = Text
pIncidentRecordArn_
}
deleteTimelineEvent_eventId :: Lens.Lens' DeleteTimelineEvent Prelude.Text
deleteTimelineEvent_eventId :: Lens' DeleteTimelineEvent Text
deleteTimelineEvent_eventId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteTimelineEvent' {Text
eventId :: Text
$sel:eventId:DeleteTimelineEvent' :: DeleteTimelineEvent -> Text
eventId} -> Text
eventId) (\s :: DeleteTimelineEvent
s@DeleteTimelineEvent' {} Text
a -> DeleteTimelineEvent
s {$sel:eventId:DeleteTimelineEvent' :: Text
eventId = Text
a} :: DeleteTimelineEvent)
deleteTimelineEvent_incidentRecordArn :: Lens.Lens' DeleteTimelineEvent Prelude.Text
deleteTimelineEvent_incidentRecordArn :: Lens' DeleteTimelineEvent Text
deleteTimelineEvent_incidentRecordArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteTimelineEvent' {Text
incidentRecordArn :: Text
$sel:incidentRecordArn:DeleteTimelineEvent' :: DeleteTimelineEvent -> Text
incidentRecordArn} -> Text
incidentRecordArn) (\s :: DeleteTimelineEvent
s@DeleteTimelineEvent' {} Text
a -> DeleteTimelineEvent
s {$sel:incidentRecordArn:DeleteTimelineEvent' :: Text
incidentRecordArn = Text
a} :: DeleteTimelineEvent)
instance Core.AWSRequest DeleteTimelineEvent where
type
AWSResponse DeleteTimelineEvent =
DeleteTimelineEventResponse
request :: (Service -> Service)
-> DeleteTimelineEvent -> Request DeleteTimelineEvent
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 DeleteTimelineEvent
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DeleteTimelineEvent)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> () -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveEmpty
( \Int
s ResponseHeaders
h ()
x ->
Int -> DeleteTimelineEventResponse
DeleteTimelineEventResponse'
forall (f :: * -> *) a b. Functor 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 DeleteTimelineEvent where
hashWithSalt :: Int -> DeleteTimelineEvent -> Int
hashWithSalt Int
_salt DeleteTimelineEvent' {Text
incidentRecordArn :: Text
eventId :: Text
$sel:incidentRecordArn:DeleteTimelineEvent' :: DeleteTimelineEvent -> Text
$sel:eventId:DeleteTimelineEvent' :: DeleteTimelineEvent -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
eventId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
incidentRecordArn
instance Prelude.NFData DeleteTimelineEvent where
rnf :: DeleteTimelineEvent -> ()
rnf DeleteTimelineEvent' {Text
incidentRecordArn :: Text
eventId :: Text
$sel:incidentRecordArn:DeleteTimelineEvent' :: DeleteTimelineEvent -> Text
$sel:eventId:DeleteTimelineEvent' :: DeleteTimelineEvent -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
eventId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
incidentRecordArn
instance Data.ToHeaders DeleteTimelineEvent where
toHeaders :: DeleteTimelineEvent -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON DeleteTimelineEvent where
toJSON :: DeleteTimelineEvent -> Value
toJSON DeleteTimelineEvent' {Text
incidentRecordArn :: Text
eventId :: Text
$sel:incidentRecordArn:DeleteTimelineEvent' :: DeleteTimelineEvent -> Text
$sel:eventId:DeleteTimelineEvent' :: DeleteTimelineEvent -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just (Key
"eventId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
eventId),
forall a. a -> Maybe a
Prelude.Just
(Key
"incidentRecordArn" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
incidentRecordArn)
]
)
instance Data.ToPath DeleteTimelineEvent where
toPath :: DeleteTimelineEvent -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/deleteTimelineEvent"
instance Data.ToQuery DeleteTimelineEvent where
toQuery :: DeleteTimelineEvent -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeleteTimelineEventResponse = DeleteTimelineEventResponse'
{
DeleteTimelineEventResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeleteTimelineEventResponse -> DeleteTimelineEventResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteTimelineEventResponse -> DeleteTimelineEventResponse -> Bool
$c/= :: DeleteTimelineEventResponse -> DeleteTimelineEventResponse -> Bool
== :: DeleteTimelineEventResponse -> DeleteTimelineEventResponse -> Bool
$c== :: DeleteTimelineEventResponse -> DeleteTimelineEventResponse -> Bool
Prelude.Eq, ReadPrec [DeleteTimelineEventResponse]
ReadPrec DeleteTimelineEventResponse
Int -> ReadS DeleteTimelineEventResponse
ReadS [DeleteTimelineEventResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteTimelineEventResponse]
$creadListPrec :: ReadPrec [DeleteTimelineEventResponse]
readPrec :: ReadPrec DeleteTimelineEventResponse
$creadPrec :: ReadPrec DeleteTimelineEventResponse
readList :: ReadS [DeleteTimelineEventResponse]
$creadList :: ReadS [DeleteTimelineEventResponse]
readsPrec :: Int -> ReadS DeleteTimelineEventResponse
$creadsPrec :: Int -> ReadS DeleteTimelineEventResponse
Prelude.Read, Int -> DeleteTimelineEventResponse -> ShowS
[DeleteTimelineEventResponse] -> ShowS
DeleteTimelineEventResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteTimelineEventResponse] -> ShowS
$cshowList :: [DeleteTimelineEventResponse] -> ShowS
show :: DeleteTimelineEventResponse -> String
$cshow :: DeleteTimelineEventResponse -> String
showsPrec :: Int -> DeleteTimelineEventResponse -> ShowS
$cshowsPrec :: Int -> DeleteTimelineEventResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteTimelineEventResponse x -> DeleteTimelineEventResponse
forall x.
DeleteTimelineEventResponse -> Rep DeleteTimelineEventResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteTimelineEventResponse x -> DeleteTimelineEventResponse
$cfrom :: forall x.
DeleteTimelineEventResponse -> Rep DeleteTimelineEventResponse x
Prelude.Generic)
newDeleteTimelineEventResponse ::
Prelude.Int ->
DeleteTimelineEventResponse
newDeleteTimelineEventResponse :: Int -> DeleteTimelineEventResponse
newDeleteTimelineEventResponse Int
pHttpStatus_ =
DeleteTimelineEventResponse'
{ $sel:httpStatus:DeleteTimelineEventResponse' :: Int
httpStatus =
Int
pHttpStatus_
}
deleteTimelineEventResponse_httpStatus :: Lens.Lens' DeleteTimelineEventResponse Prelude.Int
deleteTimelineEventResponse_httpStatus :: Lens' DeleteTimelineEventResponse Int
deleteTimelineEventResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteTimelineEventResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteTimelineEventResponse' :: DeleteTimelineEventResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteTimelineEventResponse
s@DeleteTimelineEventResponse' {} Int
a -> DeleteTimelineEventResponse
s {$sel:httpStatus:DeleteTimelineEventResponse' :: Int
httpStatus = Int
a} :: DeleteTimelineEventResponse)
instance Prelude.NFData DeleteTimelineEventResponse where
rnf :: DeleteTimelineEventResponse -> ()
rnf DeleteTimelineEventResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteTimelineEventResponse' :: DeleteTimelineEventResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus