{-# 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.EC2.DeleteTransitGatewayVpcAttachment
(
DeleteTransitGatewayVpcAttachment (..),
newDeleteTransitGatewayVpcAttachment,
deleteTransitGatewayVpcAttachment_dryRun,
deleteTransitGatewayVpcAttachment_transitGatewayAttachmentId,
DeleteTransitGatewayVpcAttachmentResponse (..),
newDeleteTransitGatewayVpcAttachmentResponse,
deleteTransitGatewayVpcAttachmentResponse_transitGatewayVpcAttachment,
deleteTransitGatewayVpcAttachmentResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.EC2.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DeleteTransitGatewayVpcAttachment = DeleteTransitGatewayVpcAttachment'
{
DeleteTransitGatewayVpcAttachment -> Maybe Bool
dryRun :: Prelude.Maybe Prelude.Bool,
DeleteTransitGatewayVpcAttachment -> Text
transitGatewayAttachmentId :: Prelude.Text
}
deriving (DeleteTransitGatewayVpcAttachment
-> DeleteTransitGatewayVpcAttachment -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteTransitGatewayVpcAttachment
-> DeleteTransitGatewayVpcAttachment -> Bool
$c/= :: DeleteTransitGatewayVpcAttachment
-> DeleteTransitGatewayVpcAttachment -> Bool
== :: DeleteTransitGatewayVpcAttachment
-> DeleteTransitGatewayVpcAttachment -> Bool
$c== :: DeleteTransitGatewayVpcAttachment
-> DeleteTransitGatewayVpcAttachment -> Bool
Prelude.Eq, ReadPrec [DeleteTransitGatewayVpcAttachment]
ReadPrec DeleteTransitGatewayVpcAttachment
Int -> ReadS DeleteTransitGatewayVpcAttachment
ReadS [DeleteTransitGatewayVpcAttachment]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteTransitGatewayVpcAttachment]
$creadListPrec :: ReadPrec [DeleteTransitGatewayVpcAttachment]
readPrec :: ReadPrec DeleteTransitGatewayVpcAttachment
$creadPrec :: ReadPrec DeleteTransitGatewayVpcAttachment
readList :: ReadS [DeleteTransitGatewayVpcAttachment]
$creadList :: ReadS [DeleteTransitGatewayVpcAttachment]
readsPrec :: Int -> ReadS DeleteTransitGatewayVpcAttachment
$creadsPrec :: Int -> ReadS DeleteTransitGatewayVpcAttachment
Prelude.Read, Int -> DeleteTransitGatewayVpcAttachment -> ShowS
[DeleteTransitGatewayVpcAttachment] -> ShowS
DeleteTransitGatewayVpcAttachment -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteTransitGatewayVpcAttachment] -> ShowS
$cshowList :: [DeleteTransitGatewayVpcAttachment] -> ShowS
show :: DeleteTransitGatewayVpcAttachment -> String
$cshow :: DeleteTransitGatewayVpcAttachment -> String
showsPrec :: Int -> DeleteTransitGatewayVpcAttachment -> ShowS
$cshowsPrec :: Int -> DeleteTransitGatewayVpcAttachment -> ShowS
Prelude.Show, forall x.
Rep DeleteTransitGatewayVpcAttachment x
-> DeleteTransitGatewayVpcAttachment
forall x.
DeleteTransitGatewayVpcAttachment
-> Rep DeleteTransitGatewayVpcAttachment x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteTransitGatewayVpcAttachment x
-> DeleteTransitGatewayVpcAttachment
$cfrom :: forall x.
DeleteTransitGatewayVpcAttachment
-> Rep DeleteTransitGatewayVpcAttachment x
Prelude.Generic)
newDeleteTransitGatewayVpcAttachment ::
Prelude.Text ->
DeleteTransitGatewayVpcAttachment
newDeleteTransitGatewayVpcAttachment :: Text -> DeleteTransitGatewayVpcAttachment
newDeleteTransitGatewayVpcAttachment
Text
pTransitGatewayAttachmentId_ =
DeleteTransitGatewayVpcAttachment'
{ $sel:dryRun:DeleteTransitGatewayVpcAttachment' :: Maybe Bool
dryRun =
forall a. Maybe a
Prelude.Nothing,
$sel:transitGatewayAttachmentId:DeleteTransitGatewayVpcAttachment' :: Text
transitGatewayAttachmentId =
Text
pTransitGatewayAttachmentId_
}
deleteTransitGatewayVpcAttachment_dryRun :: Lens.Lens' DeleteTransitGatewayVpcAttachment (Prelude.Maybe Prelude.Bool)
deleteTransitGatewayVpcAttachment_dryRun :: Lens' DeleteTransitGatewayVpcAttachment (Maybe Bool)
deleteTransitGatewayVpcAttachment_dryRun = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteTransitGatewayVpcAttachment' {Maybe Bool
dryRun :: Maybe Bool
$sel:dryRun:DeleteTransitGatewayVpcAttachment' :: DeleteTransitGatewayVpcAttachment -> Maybe Bool
dryRun} -> Maybe Bool
dryRun) (\s :: DeleteTransitGatewayVpcAttachment
s@DeleteTransitGatewayVpcAttachment' {} Maybe Bool
a -> DeleteTransitGatewayVpcAttachment
s {$sel:dryRun:DeleteTransitGatewayVpcAttachment' :: Maybe Bool
dryRun = Maybe Bool
a} :: DeleteTransitGatewayVpcAttachment)
deleteTransitGatewayVpcAttachment_transitGatewayAttachmentId :: Lens.Lens' DeleteTransitGatewayVpcAttachment Prelude.Text
deleteTransitGatewayVpcAttachment_transitGatewayAttachmentId :: Lens' DeleteTransitGatewayVpcAttachment Text
deleteTransitGatewayVpcAttachment_transitGatewayAttachmentId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteTransitGatewayVpcAttachment' {Text
transitGatewayAttachmentId :: Text
$sel:transitGatewayAttachmentId:DeleteTransitGatewayVpcAttachment' :: DeleteTransitGatewayVpcAttachment -> Text
transitGatewayAttachmentId} -> Text
transitGatewayAttachmentId) (\s :: DeleteTransitGatewayVpcAttachment
s@DeleteTransitGatewayVpcAttachment' {} Text
a -> DeleteTransitGatewayVpcAttachment
s {$sel:transitGatewayAttachmentId:DeleteTransitGatewayVpcAttachment' :: Text
transitGatewayAttachmentId = Text
a} :: DeleteTransitGatewayVpcAttachment)
instance
Core.AWSRequest
DeleteTransitGatewayVpcAttachment
where
type
AWSResponse DeleteTransitGatewayVpcAttachment =
DeleteTransitGatewayVpcAttachmentResponse
request :: (Service -> Service)
-> DeleteTransitGatewayVpcAttachment
-> Request DeleteTransitGatewayVpcAttachment
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.postQuery (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DeleteTransitGatewayVpcAttachment
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse (AWSResponse DeleteTransitGatewayVpcAttachment)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> [Node] -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveXML
( \Int
s ResponseHeaders
h [Node]
x ->
Maybe TransitGatewayVpcAttachment
-> Int -> DeleteTransitGatewayVpcAttachmentResponse
DeleteTransitGatewayVpcAttachmentResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"transitGatewayVpcAttachment")
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
DeleteTransitGatewayVpcAttachment
where
hashWithSalt :: Int -> DeleteTransitGatewayVpcAttachment -> Int
hashWithSalt
Int
_salt
DeleteTransitGatewayVpcAttachment' {Maybe Bool
Text
transitGatewayAttachmentId :: Text
dryRun :: Maybe Bool
$sel:transitGatewayAttachmentId:DeleteTransitGatewayVpcAttachment' :: DeleteTransitGatewayVpcAttachment -> Text
$sel:dryRun:DeleteTransitGatewayVpcAttachment' :: DeleteTransitGatewayVpcAttachment -> Maybe Bool
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
dryRun
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
transitGatewayAttachmentId
instance
Prelude.NFData
DeleteTransitGatewayVpcAttachment
where
rnf :: DeleteTransitGatewayVpcAttachment -> ()
rnf DeleteTransitGatewayVpcAttachment' {Maybe Bool
Text
transitGatewayAttachmentId :: Text
dryRun :: Maybe Bool
$sel:transitGatewayAttachmentId:DeleteTransitGatewayVpcAttachment' :: DeleteTransitGatewayVpcAttachment -> Text
$sel:dryRun:DeleteTransitGatewayVpcAttachment' :: DeleteTransitGatewayVpcAttachment -> Maybe Bool
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
dryRun
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
transitGatewayAttachmentId
instance
Data.ToHeaders
DeleteTransitGatewayVpcAttachment
where
toHeaders :: DeleteTransitGatewayVpcAttachment -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance
Data.ToPath
DeleteTransitGatewayVpcAttachment
where
toPath :: DeleteTransitGatewayVpcAttachment -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance
Data.ToQuery
DeleteTransitGatewayVpcAttachment
where
toQuery :: DeleteTransitGatewayVpcAttachment -> QueryString
toQuery DeleteTransitGatewayVpcAttachment' {Maybe Bool
Text
transitGatewayAttachmentId :: Text
dryRun :: Maybe Bool
$sel:transitGatewayAttachmentId:DeleteTransitGatewayVpcAttachment' :: DeleteTransitGatewayVpcAttachment -> Text
$sel:dryRun:DeleteTransitGatewayVpcAttachment' :: DeleteTransitGatewayVpcAttachment -> Maybe Bool
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: ( ByteString
"DeleteTransitGatewayVpcAttachment" ::
Prelude.ByteString
),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2016-11-15" :: Prelude.ByteString),
ByteString
"DryRun" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Bool
dryRun,
ByteString
"TransitGatewayAttachmentId"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
transitGatewayAttachmentId
]
data DeleteTransitGatewayVpcAttachmentResponse = DeleteTransitGatewayVpcAttachmentResponse'
{
DeleteTransitGatewayVpcAttachmentResponse
-> Maybe TransitGatewayVpcAttachment
transitGatewayVpcAttachment :: Prelude.Maybe TransitGatewayVpcAttachment,
DeleteTransitGatewayVpcAttachmentResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeleteTransitGatewayVpcAttachmentResponse
-> DeleteTransitGatewayVpcAttachmentResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteTransitGatewayVpcAttachmentResponse
-> DeleteTransitGatewayVpcAttachmentResponse -> Bool
$c/= :: DeleteTransitGatewayVpcAttachmentResponse
-> DeleteTransitGatewayVpcAttachmentResponse -> Bool
== :: DeleteTransitGatewayVpcAttachmentResponse
-> DeleteTransitGatewayVpcAttachmentResponse -> Bool
$c== :: DeleteTransitGatewayVpcAttachmentResponse
-> DeleteTransitGatewayVpcAttachmentResponse -> Bool
Prelude.Eq, ReadPrec [DeleteTransitGatewayVpcAttachmentResponse]
ReadPrec DeleteTransitGatewayVpcAttachmentResponse
Int -> ReadS DeleteTransitGatewayVpcAttachmentResponse
ReadS [DeleteTransitGatewayVpcAttachmentResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteTransitGatewayVpcAttachmentResponse]
$creadListPrec :: ReadPrec [DeleteTransitGatewayVpcAttachmentResponse]
readPrec :: ReadPrec DeleteTransitGatewayVpcAttachmentResponse
$creadPrec :: ReadPrec DeleteTransitGatewayVpcAttachmentResponse
readList :: ReadS [DeleteTransitGatewayVpcAttachmentResponse]
$creadList :: ReadS [DeleteTransitGatewayVpcAttachmentResponse]
readsPrec :: Int -> ReadS DeleteTransitGatewayVpcAttachmentResponse
$creadsPrec :: Int -> ReadS DeleteTransitGatewayVpcAttachmentResponse
Prelude.Read, Int -> DeleteTransitGatewayVpcAttachmentResponse -> ShowS
[DeleteTransitGatewayVpcAttachmentResponse] -> ShowS
DeleteTransitGatewayVpcAttachmentResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteTransitGatewayVpcAttachmentResponse] -> ShowS
$cshowList :: [DeleteTransitGatewayVpcAttachmentResponse] -> ShowS
show :: DeleteTransitGatewayVpcAttachmentResponse -> String
$cshow :: DeleteTransitGatewayVpcAttachmentResponse -> String
showsPrec :: Int -> DeleteTransitGatewayVpcAttachmentResponse -> ShowS
$cshowsPrec :: Int -> DeleteTransitGatewayVpcAttachmentResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteTransitGatewayVpcAttachmentResponse x
-> DeleteTransitGatewayVpcAttachmentResponse
forall x.
DeleteTransitGatewayVpcAttachmentResponse
-> Rep DeleteTransitGatewayVpcAttachmentResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteTransitGatewayVpcAttachmentResponse x
-> DeleteTransitGatewayVpcAttachmentResponse
$cfrom :: forall x.
DeleteTransitGatewayVpcAttachmentResponse
-> Rep DeleteTransitGatewayVpcAttachmentResponse x
Prelude.Generic)
newDeleteTransitGatewayVpcAttachmentResponse ::
Prelude.Int ->
DeleteTransitGatewayVpcAttachmentResponse
newDeleteTransitGatewayVpcAttachmentResponse :: Int -> DeleteTransitGatewayVpcAttachmentResponse
newDeleteTransitGatewayVpcAttachmentResponse
Int
pHttpStatus_ =
DeleteTransitGatewayVpcAttachmentResponse'
{ $sel:transitGatewayVpcAttachment:DeleteTransitGatewayVpcAttachmentResponse' :: Maybe TransitGatewayVpcAttachment
transitGatewayVpcAttachment =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DeleteTransitGatewayVpcAttachmentResponse' :: Int
httpStatus = Int
pHttpStatus_
}
deleteTransitGatewayVpcAttachmentResponse_transitGatewayVpcAttachment :: Lens.Lens' DeleteTransitGatewayVpcAttachmentResponse (Prelude.Maybe TransitGatewayVpcAttachment)
deleteTransitGatewayVpcAttachmentResponse_transitGatewayVpcAttachment :: Lens'
DeleteTransitGatewayVpcAttachmentResponse
(Maybe TransitGatewayVpcAttachment)
deleteTransitGatewayVpcAttachmentResponse_transitGatewayVpcAttachment = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteTransitGatewayVpcAttachmentResponse' {Maybe TransitGatewayVpcAttachment
transitGatewayVpcAttachment :: Maybe TransitGatewayVpcAttachment
$sel:transitGatewayVpcAttachment:DeleteTransitGatewayVpcAttachmentResponse' :: DeleteTransitGatewayVpcAttachmentResponse
-> Maybe TransitGatewayVpcAttachment
transitGatewayVpcAttachment} -> Maybe TransitGatewayVpcAttachment
transitGatewayVpcAttachment) (\s :: DeleteTransitGatewayVpcAttachmentResponse
s@DeleteTransitGatewayVpcAttachmentResponse' {} Maybe TransitGatewayVpcAttachment
a -> DeleteTransitGatewayVpcAttachmentResponse
s {$sel:transitGatewayVpcAttachment:DeleteTransitGatewayVpcAttachmentResponse' :: Maybe TransitGatewayVpcAttachment
transitGatewayVpcAttachment = Maybe TransitGatewayVpcAttachment
a} :: DeleteTransitGatewayVpcAttachmentResponse)
deleteTransitGatewayVpcAttachmentResponse_httpStatus :: Lens.Lens' DeleteTransitGatewayVpcAttachmentResponse Prelude.Int
deleteTransitGatewayVpcAttachmentResponse_httpStatus :: Lens' DeleteTransitGatewayVpcAttachmentResponse Int
deleteTransitGatewayVpcAttachmentResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteTransitGatewayVpcAttachmentResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteTransitGatewayVpcAttachmentResponse' :: DeleteTransitGatewayVpcAttachmentResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteTransitGatewayVpcAttachmentResponse
s@DeleteTransitGatewayVpcAttachmentResponse' {} Int
a -> DeleteTransitGatewayVpcAttachmentResponse
s {$sel:httpStatus:DeleteTransitGatewayVpcAttachmentResponse' :: Int
httpStatus = Int
a} :: DeleteTransitGatewayVpcAttachmentResponse)
instance
Prelude.NFData
DeleteTransitGatewayVpcAttachmentResponse
where
rnf :: DeleteTransitGatewayVpcAttachmentResponse -> ()
rnf DeleteTransitGatewayVpcAttachmentResponse' {Int
Maybe TransitGatewayVpcAttachment
httpStatus :: Int
transitGatewayVpcAttachment :: Maybe TransitGatewayVpcAttachment
$sel:httpStatus:DeleteTransitGatewayVpcAttachmentResponse' :: DeleteTransitGatewayVpcAttachmentResponse -> Int
$sel:transitGatewayVpcAttachment:DeleteTransitGatewayVpcAttachmentResponse' :: DeleteTransitGatewayVpcAttachmentResponse
-> Maybe TransitGatewayVpcAttachment
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe TransitGatewayVpcAttachment
transitGatewayVpcAttachment
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus