{-# 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.AppSync.DeleteResolver
(
DeleteResolver (..),
newDeleteResolver,
deleteResolver_apiId,
deleteResolver_typeName,
deleteResolver_fieldName,
DeleteResolverResponse (..),
newDeleteResolverResponse,
deleteResolverResponse_httpStatus,
)
where
import Amazonka.AppSync.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 DeleteResolver = DeleteResolver'
{
DeleteResolver -> Text
apiId :: Prelude.Text,
DeleteResolver -> Text
typeName :: Prelude.Text,
DeleteResolver -> Text
fieldName :: Prelude.Text
}
deriving (DeleteResolver -> DeleteResolver -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteResolver -> DeleteResolver -> Bool
$c/= :: DeleteResolver -> DeleteResolver -> Bool
== :: DeleteResolver -> DeleteResolver -> Bool
$c== :: DeleteResolver -> DeleteResolver -> Bool
Prelude.Eq, ReadPrec [DeleteResolver]
ReadPrec DeleteResolver
Int -> ReadS DeleteResolver
ReadS [DeleteResolver]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteResolver]
$creadListPrec :: ReadPrec [DeleteResolver]
readPrec :: ReadPrec DeleteResolver
$creadPrec :: ReadPrec DeleteResolver
readList :: ReadS [DeleteResolver]
$creadList :: ReadS [DeleteResolver]
readsPrec :: Int -> ReadS DeleteResolver
$creadsPrec :: Int -> ReadS DeleteResolver
Prelude.Read, Int -> DeleteResolver -> ShowS
[DeleteResolver] -> ShowS
DeleteResolver -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteResolver] -> ShowS
$cshowList :: [DeleteResolver] -> ShowS
show :: DeleteResolver -> String
$cshow :: DeleteResolver -> String
showsPrec :: Int -> DeleteResolver -> ShowS
$cshowsPrec :: Int -> DeleteResolver -> ShowS
Prelude.Show, forall x. Rep DeleteResolver x -> DeleteResolver
forall x. DeleteResolver -> Rep DeleteResolver x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteResolver x -> DeleteResolver
$cfrom :: forall x. DeleteResolver -> Rep DeleteResolver x
Prelude.Generic)
newDeleteResolver ::
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
DeleteResolver
newDeleteResolver :: Text -> Text -> Text -> DeleteResolver
newDeleteResolver Text
pApiId_ Text
pTypeName_ Text
pFieldName_ =
DeleteResolver'
{ $sel:apiId:DeleteResolver' :: Text
apiId = Text
pApiId_,
$sel:typeName:DeleteResolver' :: Text
typeName = Text
pTypeName_,
$sel:fieldName:DeleteResolver' :: Text
fieldName = Text
pFieldName_
}
deleteResolver_apiId :: Lens.Lens' DeleteResolver Prelude.Text
deleteResolver_apiId :: Lens' DeleteResolver Text
deleteResolver_apiId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteResolver' {Text
apiId :: Text
$sel:apiId:DeleteResolver' :: DeleteResolver -> Text
apiId} -> Text
apiId) (\s :: DeleteResolver
s@DeleteResolver' {} Text
a -> DeleteResolver
s {$sel:apiId:DeleteResolver' :: Text
apiId = Text
a} :: DeleteResolver)
deleteResolver_typeName :: Lens.Lens' DeleteResolver Prelude.Text
deleteResolver_typeName :: Lens' DeleteResolver Text
deleteResolver_typeName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteResolver' {Text
typeName :: Text
$sel:typeName:DeleteResolver' :: DeleteResolver -> Text
typeName} -> Text
typeName) (\s :: DeleteResolver
s@DeleteResolver' {} Text
a -> DeleteResolver
s {$sel:typeName:DeleteResolver' :: Text
typeName = Text
a} :: DeleteResolver)
deleteResolver_fieldName :: Lens.Lens' DeleteResolver Prelude.Text
deleteResolver_fieldName :: Lens' DeleteResolver Text
deleteResolver_fieldName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteResolver' {Text
fieldName :: Text
$sel:fieldName:DeleteResolver' :: DeleteResolver -> Text
fieldName} -> Text
fieldName) (\s :: DeleteResolver
s@DeleteResolver' {} Text
a -> DeleteResolver
s {$sel:fieldName:DeleteResolver' :: Text
fieldName = Text
a} :: DeleteResolver)
instance Core.AWSRequest DeleteResolver where
type
AWSResponse DeleteResolver =
DeleteResolverResponse
request :: (Service -> Service) -> DeleteResolver -> Request DeleteResolver
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 DeleteResolver
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse DeleteResolver)))
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 -> DeleteResolverResponse
DeleteResolverResponse'
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 DeleteResolver where
hashWithSalt :: Int -> DeleteResolver -> Int
hashWithSalt Int
_salt DeleteResolver' {Text
fieldName :: Text
typeName :: Text
apiId :: Text
$sel:fieldName:DeleteResolver' :: DeleteResolver -> Text
$sel:typeName:DeleteResolver' :: DeleteResolver -> Text
$sel:apiId:DeleteResolver' :: DeleteResolver -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
apiId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
typeName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
fieldName
instance Prelude.NFData DeleteResolver where
rnf :: DeleteResolver -> ()
rnf DeleteResolver' {Text
fieldName :: Text
typeName :: Text
apiId :: Text
$sel:fieldName:DeleteResolver' :: DeleteResolver -> Text
$sel:typeName:DeleteResolver' :: DeleteResolver -> Text
$sel:apiId:DeleteResolver' :: DeleteResolver -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
apiId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
typeName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
fieldName
instance Data.ToHeaders DeleteResolver where
toHeaders :: DeleteResolver -> 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 DeleteResolver where
toPath :: DeleteResolver -> ByteString
toPath DeleteResolver' {Text
fieldName :: Text
typeName :: Text
apiId :: Text
$sel:fieldName:DeleteResolver' :: DeleteResolver -> Text
$sel:typeName:DeleteResolver' :: DeleteResolver -> Text
$sel:apiId:DeleteResolver' :: DeleteResolver -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/v1/apis/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
apiId,
ByteString
"/types/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
typeName,
ByteString
"/resolvers/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
fieldName
]
instance Data.ToQuery DeleteResolver where
toQuery :: DeleteResolver -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeleteResolverResponse = DeleteResolverResponse'
{
DeleteResolverResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeleteResolverResponse -> DeleteResolverResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteResolverResponse -> DeleteResolverResponse -> Bool
$c/= :: DeleteResolverResponse -> DeleteResolverResponse -> Bool
== :: DeleteResolverResponse -> DeleteResolverResponse -> Bool
$c== :: DeleteResolverResponse -> DeleteResolverResponse -> Bool
Prelude.Eq, ReadPrec [DeleteResolverResponse]
ReadPrec DeleteResolverResponse
Int -> ReadS DeleteResolverResponse
ReadS [DeleteResolverResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteResolverResponse]
$creadListPrec :: ReadPrec [DeleteResolverResponse]
readPrec :: ReadPrec DeleteResolverResponse
$creadPrec :: ReadPrec DeleteResolverResponse
readList :: ReadS [DeleteResolverResponse]
$creadList :: ReadS [DeleteResolverResponse]
readsPrec :: Int -> ReadS DeleteResolverResponse
$creadsPrec :: Int -> ReadS DeleteResolverResponse
Prelude.Read, Int -> DeleteResolverResponse -> ShowS
[DeleteResolverResponse] -> ShowS
DeleteResolverResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteResolverResponse] -> ShowS
$cshowList :: [DeleteResolverResponse] -> ShowS
show :: DeleteResolverResponse -> String
$cshow :: DeleteResolverResponse -> String
showsPrec :: Int -> DeleteResolverResponse -> ShowS
$cshowsPrec :: Int -> DeleteResolverResponse -> ShowS
Prelude.Show, forall x. Rep DeleteResolverResponse x -> DeleteResolverResponse
forall x. DeleteResolverResponse -> Rep DeleteResolverResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteResolverResponse x -> DeleteResolverResponse
$cfrom :: forall x. DeleteResolverResponse -> Rep DeleteResolverResponse x
Prelude.Generic)
newDeleteResolverResponse ::
Prelude.Int ->
DeleteResolverResponse
newDeleteResolverResponse :: Int -> DeleteResolverResponse
newDeleteResolverResponse Int
pHttpStatus_ =
DeleteResolverResponse' {$sel:httpStatus:DeleteResolverResponse' :: Int
httpStatus = Int
pHttpStatus_}
deleteResolverResponse_httpStatus :: Lens.Lens' DeleteResolverResponse Prelude.Int
deleteResolverResponse_httpStatus :: Lens' DeleteResolverResponse Int
deleteResolverResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteResolverResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteResolverResponse' :: DeleteResolverResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteResolverResponse
s@DeleteResolverResponse' {} Int
a -> DeleteResolverResponse
s {$sel:httpStatus:DeleteResolverResponse' :: Int
httpStatus = Int
a} :: DeleteResolverResponse)
instance Prelude.NFData DeleteResolverResponse where
rnf :: DeleteResolverResponse -> ()
rnf DeleteResolverResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteResolverResponse' :: DeleteResolverResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus