{-# 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.PrivateNetworks.DeleteNetworkSite
(
DeleteNetworkSite (..),
newDeleteNetworkSite,
deleteNetworkSite_clientToken,
deleteNetworkSite_networkSiteArn,
DeleteNetworkSiteResponse (..),
newDeleteNetworkSiteResponse,
deleteNetworkSiteResponse_networkSite,
deleteNetworkSiteResponse_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 Amazonka.PrivateNetworks.Types
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DeleteNetworkSite = DeleteNetworkSite'
{
DeleteNetworkSite -> Maybe Text
clientToken :: Prelude.Maybe Prelude.Text,
DeleteNetworkSite -> Text
networkSiteArn :: Prelude.Text
}
deriving (DeleteNetworkSite -> DeleteNetworkSite -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteNetworkSite -> DeleteNetworkSite -> Bool
$c/= :: DeleteNetworkSite -> DeleteNetworkSite -> Bool
== :: DeleteNetworkSite -> DeleteNetworkSite -> Bool
$c== :: DeleteNetworkSite -> DeleteNetworkSite -> Bool
Prelude.Eq, ReadPrec [DeleteNetworkSite]
ReadPrec DeleteNetworkSite
Int -> ReadS DeleteNetworkSite
ReadS [DeleteNetworkSite]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteNetworkSite]
$creadListPrec :: ReadPrec [DeleteNetworkSite]
readPrec :: ReadPrec DeleteNetworkSite
$creadPrec :: ReadPrec DeleteNetworkSite
readList :: ReadS [DeleteNetworkSite]
$creadList :: ReadS [DeleteNetworkSite]
readsPrec :: Int -> ReadS DeleteNetworkSite
$creadsPrec :: Int -> ReadS DeleteNetworkSite
Prelude.Read, Int -> DeleteNetworkSite -> ShowS
[DeleteNetworkSite] -> ShowS
DeleteNetworkSite -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteNetworkSite] -> ShowS
$cshowList :: [DeleteNetworkSite] -> ShowS
show :: DeleteNetworkSite -> String
$cshow :: DeleteNetworkSite -> String
showsPrec :: Int -> DeleteNetworkSite -> ShowS
$cshowsPrec :: Int -> DeleteNetworkSite -> ShowS
Prelude.Show, forall x. Rep DeleteNetworkSite x -> DeleteNetworkSite
forall x. DeleteNetworkSite -> Rep DeleteNetworkSite x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteNetworkSite x -> DeleteNetworkSite
$cfrom :: forall x. DeleteNetworkSite -> Rep DeleteNetworkSite x
Prelude.Generic)
newDeleteNetworkSite ::
Prelude.Text ->
DeleteNetworkSite
newDeleteNetworkSite :: Text -> DeleteNetworkSite
newDeleteNetworkSite Text
pNetworkSiteArn_ =
DeleteNetworkSite'
{ $sel:clientToken:DeleteNetworkSite' :: Maybe Text
clientToken = forall a. Maybe a
Prelude.Nothing,
$sel:networkSiteArn:DeleteNetworkSite' :: Text
networkSiteArn = Text
pNetworkSiteArn_
}
deleteNetworkSite_clientToken :: Lens.Lens' DeleteNetworkSite (Prelude.Maybe Prelude.Text)
deleteNetworkSite_clientToken :: Lens' DeleteNetworkSite (Maybe Text)
deleteNetworkSite_clientToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteNetworkSite' {Maybe Text
clientToken :: Maybe Text
$sel:clientToken:DeleteNetworkSite' :: DeleteNetworkSite -> Maybe Text
clientToken} -> Maybe Text
clientToken) (\s :: DeleteNetworkSite
s@DeleteNetworkSite' {} Maybe Text
a -> DeleteNetworkSite
s {$sel:clientToken:DeleteNetworkSite' :: Maybe Text
clientToken = Maybe Text
a} :: DeleteNetworkSite)
deleteNetworkSite_networkSiteArn :: Lens.Lens' DeleteNetworkSite Prelude.Text
deleteNetworkSite_networkSiteArn :: Lens' DeleteNetworkSite Text
deleteNetworkSite_networkSiteArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteNetworkSite' {Text
networkSiteArn :: Text
$sel:networkSiteArn:DeleteNetworkSite' :: DeleteNetworkSite -> Text
networkSiteArn} -> Text
networkSiteArn) (\s :: DeleteNetworkSite
s@DeleteNetworkSite' {} Text
a -> DeleteNetworkSite
s {$sel:networkSiteArn:DeleteNetworkSite' :: Text
networkSiteArn = Text
a} :: DeleteNetworkSite)
instance Core.AWSRequest DeleteNetworkSite where
type
AWSResponse DeleteNetworkSite =
DeleteNetworkSiteResponse
request :: (Service -> Service)
-> DeleteNetworkSite -> Request DeleteNetworkSite
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 DeleteNetworkSite
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DeleteNetworkSite)))
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 NetworkSite -> Int -> DeleteNetworkSiteResponse
DeleteNetworkSiteResponse'
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
"networkSite")
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 DeleteNetworkSite where
hashWithSalt :: Int -> DeleteNetworkSite -> Int
hashWithSalt Int
_salt DeleteNetworkSite' {Maybe Text
Text
networkSiteArn :: Text
clientToken :: Maybe Text
$sel:networkSiteArn:DeleteNetworkSite' :: DeleteNetworkSite -> Text
$sel:clientToken:DeleteNetworkSite' :: DeleteNetworkSite -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
clientToken
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
networkSiteArn
instance Prelude.NFData DeleteNetworkSite where
rnf :: DeleteNetworkSite -> ()
rnf DeleteNetworkSite' {Maybe Text
Text
networkSiteArn :: Text
clientToken :: Maybe Text
$sel:networkSiteArn:DeleteNetworkSite' :: DeleteNetworkSite -> Text
$sel:clientToken:DeleteNetworkSite' :: DeleteNetworkSite -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
clientToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
networkSiteArn
instance Data.ToHeaders DeleteNetworkSite where
toHeaders :: DeleteNetworkSite -> 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 DeleteNetworkSite where
toPath :: DeleteNetworkSite -> ByteString
toPath DeleteNetworkSite' {Maybe Text
Text
networkSiteArn :: Text
clientToken :: Maybe Text
$sel:networkSiteArn:DeleteNetworkSite' :: DeleteNetworkSite -> Text
$sel:clientToken:DeleteNetworkSite' :: DeleteNetworkSite -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"/v1/network-sites/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
networkSiteArn]
instance Data.ToQuery DeleteNetworkSite where
toQuery :: DeleteNetworkSite -> QueryString
toQuery DeleteNetworkSite' {Maybe Text
Text
networkSiteArn :: Text
clientToken :: Maybe Text
$sel:networkSiteArn:DeleteNetworkSite' :: DeleteNetworkSite -> Text
$sel:clientToken:DeleteNetworkSite' :: DeleteNetworkSite -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat [ByteString
"clientToken" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
clientToken]
data DeleteNetworkSiteResponse = DeleteNetworkSiteResponse'
{
DeleteNetworkSiteResponse -> Maybe NetworkSite
networkSite :: Prelude.Maybe NetworkSite,
DeleteNetworkSiteResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeleteNetworkSiteResponse -> DeleteNetworkSiteResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteNetworkSiteResponse -> DeleteNetworkSiteResponse -> Bool
$c/= :: DeleteNetworkSiteResponse -> DeleteNetworkSiteResponse -> Bool
== :: DeleteNetworkSiteResponse -> DeleteNetworkSiteResponse -> Bool
$c== :: DeleteNetworkSiteResponse -> DeleteNetworkSiteResponse -> Bool
Prelude.Eq, ReadPrec [DeleteNetworkSiteResponse]
ReadPrec DeleteNetworkSiteResponse
Int -> ReadS DeleteNetworkSiteResponse
ReadS [DeleteNetworkSiteResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteNetworkSiteResponse]
$creadListPrec :: ReadPrec [DeleteNetworkSiteResponse]
readPrec :: ReadPrec DeleteNetworkSiteResponse
$creadPrec :: ReadPrec DeleteNetworkSiteResponse
readList :: ReadS [DeleteNetworkSiteResponse]
$creadList :: ReadS [DeleteNetworkSiteResponse]
readsPrec :: Int -> ReadS DeleteNetworkSiteResponse
$creadsPrec :: Int -> ReadS DeleteNetworkSiteResponse
Prelude.Read, Int -> DeleteNetworkSiteResponse -> ShowS
[DeleteNetworkSiteResponse] -> ShowS
DeleteNetworkSiteResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteNetworkSiteResponse] -> ShowS
$cshowList :: [DeleteNetworkSiteResponse] -> ShowS
show :: DeleteNetworkSiteResponse -> String
$cshow :: DeleteNetworkSiteResponse -> String
showsPrec :: Int -> DeleteNetworkSiteResponse -> ShowS
$cshowsPrec :: Int -> DeleteNetworkSiteResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteNetworkSiteResponse x -> DeleteNetworkSiteResponse
forall x.
DeleteNetworkSiteResponse -> Rep DeleteNetworkSiteResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteNetworkSiteResponse x -> DeleteNetworkSiteResponse
$cfrom :: forall x.
DeleteNetworkSiteResponse -> Rep DeleteNetworkSiteResponse x
Prelude.Generic)
newDeleteNetworkSiteResponse ::
Prelude.Int ->
DeleteNetworkSiteResponse
newDeleteNetworkSiteResponse :: Int -> DeleteNetworkSiteResponse
newDeleteNetworkSiteResponse Int
pHttpStatus_ =
DeleteNetworkSiteResponse'
{ $sel:networkSite:DeleteNetworkSiteResponse' :: Maybe NetworkSite
networkSite =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DeleteNetworkSiteResponse' :: Int
httpStatus = Int
pHttpStatus_
}
deleteNetworkSiteResponse_networkSite :: Lens.Lens' DeleteNetworkSiteResponse (Prelude.Maybe NetworkSite)
deleteNetworkSiteResponse_networkSite :: Lens' DeleteNetworkSiteResponse (Maybe NetworkSite)
deleteNetworkSiteResponse_networkSite = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteNetworkSiteResponse' {Maybe NetworkSite
networkSite :: Maybe NetworkSite
$sel:networkSite:DeleteNetworkSiteResponse' :: DeleteNetworkSiteResponse -> Maybe NetworkSite
networkSite} -> Maybe NetworkSite
networkSite) (\s :: DeleteNetworkSiteResponse
s@DeleteNetworkSiteResponse' {} Maybe NetworkSite
a -> DeleteNetworkSiteResponse
s {$sel:networkSite:DeleteNetworkSiteResponse' :: Maybe NetworkSite
networkSite = Maybe NetworkSite
a} :: DeleteNetworkSiteResponse)
deleteNetworkSiteResponse_httpStatus :: Lens.Lens' DeleteNetworkSiteResponse Prelude.Int
deleteNetworkSiteResponse_httpStatus :: Lens' DeleteNetworkSiteResponse Int
deleteNetworkSiteResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteNetworkSiteResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteNetworkSiteResponse' :: DeleteNetworkSiteResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteNetworkSiteResponse
s@DeleteNetworkSiteResponse' {} Int
a -> DeleteNetworkSiteResponse
s {$sel:httpStatus:DeleteNetworkSiteResponse' :: Int
httpStatus = Int
a} :: DeleteNetworkSiteResponse)
instance Prelude.NFData DeleteNetworkSiteResponse where
rnf :: DeleteNetworkSiteResponse -> ()
rnf DeleteNetworkSiteResponse' {Int
Maybe NetworkSite
httpStatus :: Int
networkSite :: Maybe NetworkSite
$sel:httpStatus:DeleteNetworkSiteResponse' :: DeleteNetworkSiteResponse -> Int
$sel:networkSite:DeleteNetworkSiteResponse' :: DeleteNetworkSiteResponse -> Maybe NetworkSite
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe NetworkSite
networkSite
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus