{-# 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.Outposts.DeleteSite
(
DeleteSite (..),
newDeleteSite,
deleteSite_siteId,
DeleteSiteResponse (..),
newDeleteSiteResponse,
deleteSiteResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Outposts.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DeleteSite = DeleteSite'
{
DeleteSite -> Text
siteId :: Prelude.Text
}
deriving (DeleteSite -> DeleteSite -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteSite -> DeleteSite -> Bool
$c/= :: DeleteSite -> DeleteSite -> Bool
== :: DeleteSite -> DeleteSite -> Bool
$c== :: DeleteSite -> DeleteSite -> Bool
Prelude.Eq, ReadPrec [DeleteSite]
ReadPrec DeleteSite
Int -> ReadS DeleteSite
ReadS [DeleteSite]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteSite]
$creadListPrec :: ReadPrec [DeleteSite]
readPrec :: ReadPrec DeleteSite
$creadPrec :: ReadPrec DeleteSite
readList :: ReadS [DeleteSite]
$creadList :: ReadS [DeleteSite]
readsPrec :: Int -> ReadS DeleteSite
$creadsPrec :: Int -> ReadS DeleteSite
Prelude.Read, Int -> DeleteSite -> ShowS
[DeleteSite] -> ShowS
DeleteSite -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteSite] -> ShowS
$cshowList :: [DeleteSite] -> ShowS
show :: DeleteSite -> String
$cshow :: DeleteSite -> String
showsPrec :: Int -> DeleteSite -> ShowS
$cshowsPrec :: Int -> DeleteSite -> ShowS
Prelude.Show, forall x. Rep DeleteSite x -> DeleteSite
forall x. DeleteSite -> Rep DeleteSite x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteSite x -> DeleteSite
$cfrom :: forall x. DeleteSite -> Rep DeleteSite x
Prelude.Generic)
newDeleteSite ::
Prelude.Text ->
DeleteSite
newDeleteSite :: Text -> DeleteSite
newDeleteSite Text
pSiteId_ =
DeleteSite' {$sel:siteId:DeleteSite' :: Text
siteId = Text
pSiteId_}
deleteSite_siteId :: Lens.Lens' DeleteSite Prelude.Text
deleteSite_siteId :: Lens' DeleteSite Text
deleteSite_siteId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteSite' {Text
siteId :: Text
$sel:siteId:DeleteSite' :: DeleteSite -> Text
siteId} -> Text
siteId) (\s :: DeleteSite
s@DeleteSite' {} Text
a -> DeleteSite
s {$sel:siteId:DeleteSite' :: Text
siteId = Text
a} :: DeleteSite)
instance Core.AWSRequest DeleteSite where
type AWSResponse DeleteSite = DeleteSiteResponse
request :: (Service -> Service) -> DeleteSite -> Request DeleteSite
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 DeleteSite
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse DeleteSite)))
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 -> DeleteSiteResponse
DeleteSiteResponse'
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 DeleteSite where
hashWithSalt :: Int -> DeleteSite -> Int
hashWithSalt Int
_salt DeleteSite' {Text
siteId :: Text
$sel:siteId:DeleteSite' :: DeleteSite -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
siteId
instance Prelude.NFData DeleteSite where
rnf :: DeleteSite -> ()
rnf DeleteSite' {Text
siteId :: Text
$sel:siteId:DeleteSite' :: DeleteSite -> Text
..} = forall a. NFData a => a -> ()
Prelude.rnf Text
siteId
instance Data.ToHeaders DeleteSite where
toHeaders :: DeleteSite -> 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 DeleteSite where
toPath :: DeleteSite -> ByteString
toPath DeleteSite' {Text
siteId :: Text
$sel:siteId:DeleteSite' :: DeleteSite -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat [ByteString
"/sites/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
siteId]
instance Data.ToQuery DeleteSite where
toQuery :: DeleteSite -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeleteSiteResponse = DeleteSiteResponse'
{
DeleteSiteResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeleteSiteResponse -> DeleteSiteResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteSiteResponse -> DeleteSiteResponse -> Bool
$c/= :: DeleteSiteResponse -> DeleteSiteResponse -> Bool
== :: DeleteSiteResponse -> DeleteSiteResponse -> Bool
$c== :: DeleteSiteResponse -> DeleteSiteResponse -> Bool
Prelude.Eq, ReadPrec [DeleteSiteResponse]
ReadPrec DeleteSiteResponse
Int -> ReadS DeleteSiteResponse
ReadS [DeleteSiteResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteSiteResponse]
$creadListPrec :: ReadPrec [DeleteSiteResponse]
readPrec :: ReadPrec DeleteSiteResponse
$creadPrec :: ReadPrec DeleteSiteResponse
readList :: ReadS [DeleteSiteResponse]
$creadList :: ReadS [DeleteSiteResponse]
readsPrec :: Int -> ReadS DeleteSiteResponse
$creadsPrec :: Int -> ReadS DeleteSiteResponse
Prelude.Read, Int -> DeleteSiteResponse -> ShowS
[DeleteSiteResponse] -> ShowS
DeleteSiteResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteSiteResponse] -> ShowS
$cshowList :: [DeleteSiteResponse] -> ShowS
show :: DeleteSiteResponse -> String
$cshow :: DeleteSiteResponse -> String
showsPrec :: Int -> DeleteSiteResponse -> ShowS
$cshowsPrec :: Int -> DeleteSiteResponse -> ShowS
Prelude.Show, forall x. Rep DeleteSiteResponse x -> DeleteSiteResponse
forall x. DeleteSiteResponse -> Rep DeleteSiteResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteSiteResponse x -> DeleteSiteResponse
$cfrom :: forall x. DeleteSiteResponse -> Rep DeleteSiteResponse x
Prelude.Generic)
newDeleteSiteResponse ::
Prelude.Int ->
DeleteSiteResponse
newDeleteSiteResponse :: Int -> DeleteSiteResponse
newDeleteSiteResponse Int
pHttpStatus_ =
DeleteSiteResponse' {$sel:httpStatus:DeleteSiteResponse' :: Int
httpStatus = Int
pHttpStatus_}
deleteSiteResponse_httpStatus :: Lens.Lens' DeleteSiteResponse Prelude.Int
deleteSiteResponse_httpStatus :: Lens' DeleteSiteResponse Int
deleteSiteResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteSiteResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteSiteResponse' :: DeleteSiteResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteSiteResponse
s@DeleteSiteResponse' {} Int
a -> DeleteSiteResponse
s {$sel:httpStatus:DeleteSiteResponse' :: Int
httpStatus = Int
a} :: DeleteSiteResponse)
instance Prelude.NFData DeleteSiteResponse where
rnf :: DeleteSiteResponse -> ()
rnf DeleteSiteResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteSiteResponse' :: DeleteSiteResponse -> Int
..} = forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus