{-# 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.NetworkManager.DeletePeering
(
DeletePeering (..),
newDeletePeering,
deletePeering_peeringId,
DeletePeeringResponse (..),
newDeletePeeringResponse,
deletePeeringResponse_peering,
deletePeeringResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.NetworkManager.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DeletePeering = DeletePeering'
{
DeletePeering -> Text
peeringId :: Prelude.Text
}
deriving (DeletePeering -> DeletePeering -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeletePeering -> DeletePeering -> Bool
$c/= :: DeletePeering -> DeletePeering -> Bool
== :: DeletePeering -> DeletePeering -> Bool
$c== :: DeletePeering -> DeletePeering -> Bool
Prelude.Eq, ReadPrec [DeletePeering]
ReadPrec DeletePeering
Int -> ReadS DeletePeering
ReadS [DeletePeering]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeletePeering]
$creadListPrec :: ReadPrec [DeletePeering]
readPrec :: ReadPrec DeletePeering
$creadPrec :: ReadPrec DeletePeering
readList :: ReadS [DeletePeering]
$creadList :: ReadS [DeletePeering]
readsPrec :: Int -> ReadS DeletePeering
$creadsPrec :: Int -> ReadS DeletePeering
Prelude.Read, Int -> DeletePeering -> ShowS
[DeletePeering] -> ShowS
DeletePeering -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeletePeering] -> ShowS
$cshowList :: [DeletePeering] -> ShowS
show :: DeletePeering -> String
$cshow :: DeletePeering -> String
showsPrec :: Int -> DeletePeering -> ShowS
$cshowsPrec :: Int -> DeletePeering -> ShowS
Prelude.Show, forall x. Rep DeletePeering x -> DeletePeering
forall x. DeletePeering -> Rep DeletePeering x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeletePeering x -> DeletePeering
$cfrom :: forall x. DeletePeering -> Rep DeletePeering x
Prelude.Generic)
newDeletePeering ::
Prelude.Text ->
DeletePeering
newDeletePeering :: Text -> DeletePeering
newDeletePeering Text
pPeeringId_ =
DeletePeering' {$sel:peeringId:DeletePeering' :: Text
peeringId = Text
pPeeringId_}
deletePeering_peeringId :: Lens.Lens' DeletePeering Prelude.Text
deletePeering_peeringId :: Lens' DeletePeering Text
deletePeering_peeringId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeletePeering' {Text
peeringId :: Text
$sel:peeringId:DeletePeering' :: DeletePeering -> Text
peeringId} -> Text
peeringId) (\s :: DeletePeering
s@DeletePeering' {} Text
a -> DeletePeering
s {$sel:peeringId:DeletePeering' :: Text
peeringId = Text
a} :: DeletePeering)
instance Core.AWSRequest DeletePeering where
type
AWSResponse DeletePeering =
DeletePeeringResponse
request :: (Service -> Service) -> DeletePeering -> Request DeletePeering
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.delete (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DeletePeering
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse DeletePeering)))
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 Peering -> Int -> DeletePeeringResponse
DeletePeeringResponse'
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
"Peering")
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 DeletePeering where
hashWithSalt :: Int -> DeletePeering -> Int
hashWithSalt Int
_salt DeletePeering' {Text
peeringId :: Text
$sel:peeringId:DeletePeering' :: DeletePeering -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
peeringId
instance Prelude.NFData DeletePeering where
rnf :: DeletePeering -> ()
rnf DeletePeering' {Text
peeringId :: Text
$sel:peeringId:DeletePeering' :: DeletePeering -> Text
..} = forall a. NFData a => a -> ()
Prelude.rnf Text
peeringId
instance Data.ToHeaders DeletePeering where
toHeaders :: DeletePeering -> 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.ToPath DeletePeering where
toPath :: DeletePeering -> ByteString
toPath DeletePeering' {Text
peeringId :: Text
$sel:peeringId:DeletePeering' :: DeletePeering -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat [ByteString
"/peerings/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
peeringId]
instance Data.ToQuery DeletePeering where
toQuery :: DeletePeering -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeletePeeringResponse = DeletePeeringResponse'
{
DeletePeeringResponse -> Maybe Peering
peering :: Prelude.Maybe Peering,
DeletePeeringResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeletePeeringResponse -> DeletePeeringResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeletePeeringResponse -> DeletePeeringResponse -> Bool
$c/= :: DeletePeeringResponse -> DeletePeeringResponse -> Bool
== :: DeletePeeringResponse -> DeletePeeringResponse -> Bool
$c== :: DeletePeeringResponse -> DeletePeeringResponse -> Bool
Prelude.Eq, ReadPrec [DeletePeeringResponse]
ReadPrec DeletePeeringResponse
Int -> ReadS DeletePeeringResponse
ReadS [DeletePeeringResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeletePeeringResponse]
$creadListPrec :: ReadPrec [DeletePeeringResponse]
readPrec :: ReadPrec DeletePeeringResponse
$creadPrec :: ReadPrec DeletePeeringResponse
readList :: ReadS [DeletePeeringResponse]
$creadList :: ReadS [DeletePeeringResponse]
readsPrec :: Int -> ReadS DeletePeeringResponse
$creadsPrec :: Int -> ReadS DeletePeeringResponse
Prelude.Read, Int -> DeletePeeringResponse -> ShowS
[DeletePeeringResponse] -> ShowS
DeletePeeringResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeletePeeringResponse] -> ShowS
$cshowList :: [DeletePeeringResponse] -> ShowS
show :: DeletePeeringResponse -> String
$cshow :: DeletePeeringResponse -> String
showsPrec :: Int -> DeletePeeringResponse -> ShowS
$cshowsPrec :: Int -> DeletePeeringResponse -> ShowS
Prelude.Show, forall x. Rep DeletePeeringResponse x -> DeletePeeringResponse
forall x. DeletePeeringResponse -> Rep DeletePeeringResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeletePeeringResponse x -> DeletePeeringResponse
$cfrom :: forall x. DeletePeeringResponse -> Rep DeletePeeringResponse x
Prelude.Generic)
newDeletePeeringResponse ::
Prelude.Int ->
DeletePeeringResponse
newDeletePeeringResponse :: Int -> DeletePeeringResponse
newDeletePeeringResponse Int
pHttpStatus_ =
DeletePeeringResponse'
{ $sel:peering:DeletePeeringResponse' :: Maybe Peering
peering = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DeletePeeringResponse' :: Int
httpStatus = Int
pHttpStatus_
}
deletePeeringResponse_peering :: Lens.Lens' DeletePeeringResponse (Prelude.Maybe Peering)
deletePeeringResponse_peering :: Lens' DeletePeeringResponse (Maybe Peering)
deletePeeringResponse_peering = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeletePeeringResponse' {Maybe Peering
peering :: Maybe Peering
$sel:peering:DeletePeeringResponse' :: DeletePeeringResponse -> Maybe Peering
peering} -> Maybe Peering
peering) (\s :: DeletePeeringResponse
s@DeletePeeringResponse' {} Maybe Peering
a -> DeletePeeringResponse
s {$sel:peering:DeletePeeringResponse' :: Maybe Peering
peering = Maybe Peering
a} :: DeletePeeringResponse)
deletePeeringResponse_httpStatus :: Lens.Lens' DeletePeeringResponse Prelude.Int
deletePeeringResponse_httpStatus :: Lens' DeletePeeringResponse Int
deletePeeringResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeletePeeringResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeletePeeringResponse' :: DeletePeeringResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeletePeeringResponse
s@DeletePeeringResponse' {} Int
a -> DeletePeeringResponse
s {$sel:httpStatus:DeletePeeringResponse' :: Int
httpStatus = Int
a} :: DeletePeeringResponse)
instance Prelude.NFData DeletePeeringResponse where
rnf :: DeletePeeringResponse -> ()
rnf DeletePeeringResponse' {Int
Maybe Peering
httpStatus :: Int
peering :: Maybe Peering
$sel:httpStatus:DeletePeeringResponse' :: DeletePeeringResponse -> Int
$sel:peering:DeletePeeringResponse' :: DeletePeeringResponse -> Maybe Peering
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Peering
peering
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus