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