{-# 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.AppMesh.DeleteGatewayRoute
(
DeleteGatewayRoute (..),
newDeleteGatewayRoute,
deleteGatewayRoute_meshOwner,
deleteGatewayRoute_gatewayRouteName,
deleteGatewayRoute_meshName,
deleteGatewayRoute_virtualGatewayName,
DeleteGatewayRouteResponse (..),
newDeleteGatewayRouteResponse,
deleteGatewayRouteResponse_httpStatus,
deleteGatewayRouteResponse_gatewayRoute,
)
where
import Amazonka.AppMesh.Types
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 qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DeleteGatewayRoute = DeleteGatewayRoute'
{
DeleteGatewayRoute -> Maybe Text
meshOwner :: Prelude.Maybe Prelude.Text,
DeleteGatewayRoute -> Text
gatewayRouteName :: Prelude.Text,
DeleteGatewayRoute -> Text
meshName :: Prelude.Text,
DeleteGatewayRoute -> Text
virtualGatewayName :: Prelude.Text
}
deriving (DeleteGatewayRoute -> DeleteGatewayRoute -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteGatewayRoute -> DeleteGatewayRoute -> Bool
$c/= :: DeleteGatewayRoute -> DeleteGatewayRoute -> Bool
== :: DeleteGatewayRoute -> DeleteGatewayRoute -> Bool
$c== :: DeleteGatewayRoute -> DeleteGatewayRoute -> Bool
Prelude.Eq, ReadPrec [DeleteGatewayRoute]
ReadPrec DeleteGatewayRoute
Int -> ReadS DeleteGatewayRoute
ReadS [DeleteGatewayRoute]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteGatewayRoute]
$creadListPrec :: ReadPrec [DeleteGatewayRoute]
readPrec :: ReadPrec DeleteGatewayRoute
$creadPrec :: ReadPrec DeleteGatewayRoute
readList :: ReadS [DeleteGatewayRoute]
$creadList :: ReadS [DeleteGatewayRoute]
readsPrec :: Int -> ReadS DeleteGatewayRoute
$creadsPrec :: Int -> ReadS DeleteGatewayRoute
Prelude.Read, Int -> DeleteGatewayRoute -> ShowS
[DeleteGatewayRoute] -> ShowS
DeleteGatewayRoute -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteGatewayRoute] -> ShowS
$cshowList :: [DeleteGatewayRoute] -> ShowS
show :: DeleteGatewayRoute -> String
$cshow :: DeleteGatewayRoute -> String
showsPrec :: Int -> DeleteGatewayRoute -> ShowS
$cshowsPrec :: Int -> DeleteGatewayRoute -> ShowS
Prelude.Show, forall x. Rep DeleteGatewayRoute x -> DeleteGatewayRoute
forall x. DeleteGatewayRoute -> Rep DeleteGatewayRoute x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteGatewayRoute x -> DeleteGatewayRoute
$cfrom :: forall x. DeleteGatewayRoute -> Rep DeleteGatewayRoute x
Prelude.Generic)
newDeleteGatewayRoute ::
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
DeleteGatewayRoute
newDeleteGatewayRoute :: Text -> Text -> Text -> DeleteGatewayRoute
newDeleteGatewayRoute
Text
pGatewayRouteName_
Text
pMeshName_
Text
pVirtualGatewayName_ =
DeleteGatewayRoute'
{ $sel:meshOwner:DeleteGatewayRoute' :: Maybe Text
meshOwner = forall a. Maybe a
Prelude.Nothing,
$sel:gatewayRouteName:DeleteGatewayRoute' :: Text
gatewayRouteName = Text
pGatewayRouteName_,
$sel:meshName:DeleteGatewayRoute' :: Text
meshName = Text
pMeshName_,
$sel:virtualGatewayName:DeleteGatewayRoute' :: Text
virtualGatewayName = Text
pVirtualGatewayName_
}
deleteGatewayRoute_meshOwner :: Lens.Lens' DeleteGatewayRoute (Prelude.Maybe Prelude.Text)
deleteGatewayRoute_meshOwner :: Lens' DeleteGatewayRoute (Maybe Text)
deleteGatewayRoute_meshOwner = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteGatewayRoute' {Maybe Text
meshOwner :: Maybe Text
$sel:meshOwner:DeleteGatewayRoute' :: DeleteGatewayRoute -> Maybe Text
meshOwner} -> Maybe Text
meshOwner) (\s :: DeleteGatewayRoute
s@DeleteGatewayRoute' {} Maybe Text
a -> DeleteGatewayRoute
s {$sel:meshOwner:DeleteGatewayRoute' :: Maybe Text
meshOwner = Maybe Text
a} :: DeleteGatewayRoute)
deleteGatewayRoute_gatewayRouteName :: Lens.Lens' DeleteGatewayRoute Prelude.Text
deleteGatewayRoute_gatewayRouteName :: Lens' DeleteGatewayRoute Text
deleteGatewayRoute_gatewayRouteName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteGatewayRoute' {Text
gatewayRouteName :: Text
$sel:gatewayRouteName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
gatewayRouteName} -> Text
gatewayRouteName) (\s :: DeleteGatewayRoute
s@DeleteGatewayRoute' {} Text
a -> DeleteGatewayRoute
s {$sel:gatewayRouteName:DeleteGatewayRoute' :: Text
gatewayRouteName = Text
a} :: DeleteGatewayRoute)
deleteGatewayRoute_meshName :: Lens.Lens' DeleteGatewayRoute Prelude.Text
deleteGatewayRoute_meshName :: Lens' DeleteGatewayRoute Text
deleteGatewayRoute_meshName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteGatewayRoute' {Text
meshName :: Text
$sel:meshName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
meshName} -> Text
meshName) (\s :: DeleteGatewayRoute
s@DeleteGatewayRoute' {} Text
a -> DeleteGatewayRoute
s {$sel:meshName:DeleteGatewayRoute' :: Text
meshName = Text
a} :: DeleteGatewayRoute)
deleteGatewayRoute_virtualGatewayName :: Lens.Lens' DeleteGatewayRoute Prelude.Text
deleteGatewayRoute_virtualGatewayName :: Lens' DeleteGatewayRoute Text
deleteGatewayRoute_virtualGatewayName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteGatewayRoute' {Text
virtualGatewayName :: Text
$sel:virtualGatewayName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
virtualGatewayName} -> Text
virtualGatewayName) (\s :: DeleteGatewayRoute
s@DeleteGatewayRoute' {} Text
a -> DeleteGatewayRoute
s {$sel:virtualGatewayName:DeleteGatewayRoute' :: Text
virtualGatewayName = Text
a} :: DeleteGatewayRoute)
instance Core.AWSRequest DeleteGatewayRoute where
type
AWSResponse DeleteGatewayRoute =
DeleteGatewayRouteResponse
request :: (Service -> Service)
-> DeleteGatewayRoute -> Request DeleteGatewayRoute
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 DeleteGatewayRoute
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DeleteGatewayRoute)))
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 ->
Int -> GatewayRouteData -> DeleteGatewayRouteResponse
DeleteGatewayRouteResponse'
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))
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall a. FromJSON a => Object -> Either String a
Data.eitherParseJSON Object
x)
)
instance Prelude.Hashable DeleteGatewayRoute where
hashWithSalt :: Int -> DeleteGatewayRoute -> Int
hashWithSalt Int
_salt DeleteGatewayRoute' {Maybe Text
Text
virtualGatewayName :: Text
meshName :: Text
gatewayRouteName :: Text
meshOwner :: Maybe Text
$sel:virtualGatewayName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
$sel:meshName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
$sel:gatewayRouteName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
$sel:meshOwner:DeleteGatewayRoute' :: DeleteGatewayRoute -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
meshOwner
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
gatewayRouteName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
meshName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
virtualGatewayName
instance Prelude.NFData DeleteGatewayRoute where
rnf :: DeleteGatewayRoute -> ()
rnf DeleteGatewayRoute' {Maybe Text
Text
virtualGatewayName :: Text
meshName :: Text
gatewayRouteName :: Text
meshOwner :: Maybe Text
$sel:virtualGatewayName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
$sel:meshName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
$sel:gatewayRouteName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
$sel:meshOwner:DeleteGatewayRoute' :: DeleteGatewayRoute -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
meshOwner
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
gatewayRouteName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
meshName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
virtualGatewayName
instance Data.ToHeaders DeleteGatewayRoute where
toHeaders :: DeleteGatewayRoute -> 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 DeleteGatewayRoute where
toPath :: DeleteGatewayRoute -> ByteString
toPath DeleteGatewayRoute' {Maybe Text
Text
virtualGatewayName :: Text
meshName :: Text
gatewayRouteName :: Text
meshOwner :: Maybe Text
$sel:virtualGatewayName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
$sel:meshName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
$sel:gatewayRouteName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
$sel:meshOwner:DeleteGatewayRoute' :: DeleteGatewayRoute -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/v20190125/meshes/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
meshName,
ByteString
"/virtualGateway/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
virtualGatewayName,
ByteString
"/gatewayRoutes/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
gatewayRouteName
]
instance Data.ToQuery DeleteGatewayRoute where
toQuery :: DeleteGatewayRoute -> QueryString
toQuery DeleteGatewayRoute' {Maybe Text
Text
virtualGatewayName :: Text
meshName :: Text
gatewayRouteName :: Text
meshOwner :: Maybe Text
$sel:virtualGatewayName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
$sel:meshName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
$sel:gatewayRouteName:DeleteGatewayRoute' :: DeleteGatewayRoute -> Text
$sel:meshOwner:DeleteGatewayRoute' :: DeleteGatewayRoute -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat [ByteString
"meshOwner" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
meshOwner]
data DeleteGatewayRouteResponse = DeleteGatewayRouteResponse'
{
DeleteGatewayRouteResponse -> Int
httpStatus :: Prelude.Int,
DeleteGatewayRouteResponse -> GatewayRouteData
gatewayRoute :: GatewayRouteData
}
deriving (DeleteGatewayRouteResponse -> DeleteGatewayRouteResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteGatewayRouteResponse -> DeleteGatewayRouteResponse -> Bool
$c/= :: DeleteGatewayRouteResponse -> DeleteGatewayRouteResponse -> Bool
== :: DeleteGatewayRouteResponse -> DeleteGatewayRouteResponse -> Bool
$c== :: DeleteGatewayRouteResponse -> DeleteGatewayRouteResponse -> Bool
Prelude.Eq, ReadPrec [DeleteGatewayRouteResponse]
ReadPrec DeleteGatewayRouteResponse
Int -> ReadS DeleteGatewayRouteResponse
ReadS [DeleteGatewayRouteResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteGatewayRouteResponse]
$creadListPrec :: ReadPrec [DeleteGatewayRouteResponse]
readPrec :: ReadPrec DeleteGatewayRouteResponse
$creadPrec :: ReadPrec DeleteGatewayRouteResponse
readList :: ReadS [DeleteGatewayRouteResponse]
$creadList :: ReadS [DeleteGatewayRouteResponse]
readsPrec :: Int -> ReadS DeleteGatewayRouteResponse
$creadsPrec :: Int -> ReadS DeleteGatewayRouteResponse
Prelude.Read, Int -> DeleteGatewayRouteResponse -> ShowS
[DeleteGatewayRouteResponse] -> ShowS
DeleteGatewayRouteResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteGatewayRouteResponse] -> ShowS
$cshowList :: [DeleteGatewayRouteResponse] -> ShowS
show :: DeleteGatewayRouteResponse -> String
$cshow :: DeleteGatewayRouteResponse -> String
showsPrec :: Int -> DeleteGatewayRouteResponse -> ShowS
$cshowsPrec :: Int -> DeleteGatewayRouteResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteGatewayRouteResponse x -> DeleteGatewayRouteResponse
forall x.
DeleteGatewayRouteResponse -> Rep DeleteGatewayRouteResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteGatewayRouteResponse x -> DeleteGatewayRouteResponse
$cfrom :: forall x.
DeleteGatewayRouteResponse -> Rep DeleteGatewayRouteResponse x
Prelude.Generic)
newDeleteGatewayRouteResponse ::
Prelude.Int ->
GatewayRouteData ->
DeleteGatewayRouteResponse
newDeleteGatewayRouteResponse :: Int -> GatewayRouteData -> DeleteGatewayRouteResponse
newDeleteGatewayRouteResponse
Int
pHttpStatus_
GatewayRouteData
pGatewayRoute_ =
DeleteGatewayRouteResponse'
{ $sel:httpStatus:DeleteGatewayRouteResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:gatewayRoute:DeleteGatewayRouteResponse' :: GatewayRouteData
gatewayRoute = GatewayRouteData
pGatewayRoute_
}
deleteGatewayRouteResponse_httpStatus :: Lens.Lens' DeleteGatewayRouteResponse Prelude.Int
deleteGatewayRouteResponse_httpStatus :: Lens' DeleteGatewayRouteResponse Int
deleteGatewayRouteResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteGatewayRouteResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteGatewayRouteResponse' :: DeleteGatewayRouteResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteGatewayRouteResponse
s@DeleteGatewayRouteResponse' {} Int
a -> DeleteGatewayRouteResponse
s {$sel:httpStatus:DeleteGatewayRouteResponse' :: Int
httpStatus = Int
a} :: DeleteGatewayRouteResponse)
deleteGatewayRouteResponse_gatewayRoute :: Lens.Lens' DeleteGatewayRouteResponse GatewayRouteData
deleteGatewayRouteResponse_gatewayRoute :: Lens' DeleteGatewayRouteResponse GatewayRouteData
deleteGatewayRouteResponse_gatewayRoute = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteGatewayRouteResponse' {GatewayRouteData
gatewayRoute :: GatewayRouteData
$sel:gatewayRoute:DeleteGatewayRouteResponse' :: DeleteGatewayRouteResponse -> GatewayRouteData
gatewayRoute} -> GatewayRouteData
gatewayRoute) (\s :: DeleteGatewayRouteResponse
s@DeleteGatewayRouteResponse' {} GatewayRouteData
a -> DeleteGatewayRouteResponse
s {$sel:gatewayRoute:DeleteGatewayRouteResponse' :: GatewayRouteData
gatewayRoute = GatewayRouteData
a} :: DeleteGatewayRouteResponse)
instance Prelude.NFData DeleteGatewayRouteResponse where
rnf :: DeleteGatewayRouteResponse -> ()
rnf DeleteGatewayRouteResponse' {Int
GatewayRouteData
gatewayRoute :: GatewayRouteData
httpStatus :: Int
$sel:gatewayRoute:DeleteGatewayRouteResponse' :: DeleteGatewayRouteResponse -> GatewayRouteData
$sel:httpStatus:DeleteGatewayRouteResponse' :: DeleteGatewayRouteResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf GatewayRouteData
gatewayRoute