{-# 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.Connect.DisassociateLexBot
(
DisassociateLexBot (..),
newDisassociateLexBot,
disassociateLexBot_instanceId,
disassociateLexBot_botName,
disassociateLexBot_lexRegion,
DisassociateLexBotResponse (..),
newDisassociateLexBotResponse,
)
where
import Amazonka.Connect.Types
import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DisassociateLexBot = DisassociateLexBot'
{
DisassociateLexBot -> Text
instanceId :: Prelude.Text,
DisassociateLexBot -> Text
botName :: Prelude.Text,
DisassociateLexBot -> Text
lexRegion :: Prelude.Text
}
deriving (DisassociateLexBot -> DisassociateLexBot -> Bool
(DisassociateLexBot -> DisassociateLexBot -> Bool)
-> (DisassociateLexBot -> DisassociateLexBot -> Bool)
-> Eq DisassociateLexBot
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DisassociateLexBot -> DisassociateLexBot -> Bool
$c/= :: DisassociateLexBot -> DisassociateLexBot -> Bool
== :: DisassociateLexBot -> DisassociateLexBot -> Bool
$c== :: DisassociateLexBot -> DisassociateLexBot -> Bool
Prelude.Eq, ReadPrec [DisassociateLexBot]
ReadPrec DisassociateLexBot
Int -> ReadS DisassociateLexBot
ReadS [DisassociateLexBot]
(Int -> ReadS DisassociateLexBot)
-> ReadS [DisassociateLexBot]
-> ReadPrec DisassociateLexBot
-> ReadPrec [DisassociateLexBot]
-> Read DisassociateLexBot
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DisassociateLexBot]
$creadListPrec :: ReadPrec [DisassociateLexBot]
readPrec :: ReadPrec DisassociateLexBot
$creadPrec :: ReadPrec DisassociateLexBot
readList :: ReadS [DisassociateLexBot]
$creadList :: ReadS [DisassociateLexBot]
readsPrec :: Int -> ReadS DisassociateLexBot
$creadsPrec :: Int -> ReadS DisassociateLexBot
Prelude.Read, Int -> DisassociateLexBot -> ShowS
[DisassociateLexBot] -> ShowS
DisassociateLexBot -> String
(Int -> DisassociateLexBot -> ShowS)
-> (DisassociateLexBot -> String)
-> ([DisassociateLexBot] -> ShowS)
-> Show DisassociateLexBot
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DisassociateLexBot] -> ShowS
$cshowList :: [DisassociateLexBot] -> ShowS
show :: DisassociateLexBot -> String
$cshow :: DisassociateLexBot -> String
showsPrec :: Int -> DisassociateLexBot -> ShowS
$cshowsPrec :: Int -> DisassociateLexBot -> ShowS
Prelude.Show, (forall x. DisassociateLexBot -> Rep DisassociateLexBot x)
-> (forall x. Rep DisassociateLexBot x -> DisassociateLexBot)
-> Generic DisassociateLexBot
forall x. Rep DisassociateLexBot x -> DisassociateLexBot
forall x. DisassociateLexBot -> Rep DisassociateLexBot x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DisassociateLexBot x -> DisassociateLexBot
$cfrom :: forall x. DisassociateLexBot -> Rep DisassociateLexBot x
Prelude.Generic)
newDisassociateLexBot ::
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
DisassociateLexBot
newDisassociateLexBot :: Text -> Text -> Text -> DisassociateLexBot
newDisassociateLexBot
Text
pInstanceId_
Text
pBotName_
Text
pLexRegion_ =
DisassociateLexBot' :: Text -> Text -> Text -> DisassociateLexBot
DisassociateLexBot'
{ $sel:instanceId:DisassociateLexBot' :: Text
instanceId = Text
pInstanceId_,
$sel:botName:DisassociateLexBot' :: Text
botName = Text
pBotName_,
$sel:lexRegion:DisassociateLexBot' :: Text
lexRegion = Text
pLexRegion_
}
disassociateLexBot_instanceId :: Lens.Lens' DisassociateLexBot Prelude.Text
disassociateLexBot_instanceId :: (Text -> f Text) -> DisassociateLexBot -> f DisassociateLexBot
disassociateLexBot_instanceId = (DisassociateLexBot -> Text)
-> (DisassociateLexBot -> Text -> DisassociateLexBot)
-> Lens DisassociateLexBot DisassociateLexBot Text Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DisassociateLexBot' {Text
instanceId :: Text
$sel:instanceId:DisassociateLexBot' :: DisassociateLexBot -> Text
instanceId} -> Text
instanceId) (\s :: DisassociateLexBot
s@DisassociateLexBot' {} Text
a -> DisassociateLexBot
s {$sel:instanceId:DisassociateLexBot' :: Text
instanceId = Text
a} :: DisassociateLexBot)
disassociateLexBot_botName :: Lens.Lens' DisassociateLexBot Prelude.Text
disassociateLexBot_botName :: (Text -> f Text) -> DisassociateLexBot -> f DisassociateLexBot
disassociateLexBot_botName = (DisassociateLexBot -> Text)
-> (DisassociateLexBot -> Text -> DisassociateLexBot)
-> Lens DisassociateLexBot DisassociateLexBot Text Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DisassociateLexBot' {Text
botName :: Text
$sel:botName:DisassociateLexBot' :: DisassociateLexBot -> Text
botName} -> Text
botName) (\s :: DisassociateLexBot
s@DisassociateLexBot' {} Text
a -> DisassociateLexBot
s {$sel:botName:DisassociateLexBot' :: Text
botName = Text
a} :: DisassociateLexBot)
disassociateLexBot_lexRegion :: Lens.Lens' DisassociateLexBot Prelude.Text
disassociateLexBot_lexRegion :: (Text -> f Text) -> DisassociateLexBot -> f DisassociateLexBot
disassociateLexBot_lexRegion = (DisassociateLexBot -> Text)
-> (DisassociateLexBot -> Text -> DisassociateLexBot)
-> Lens DisassociateLexBot DisassociateLexBot Text Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DisassociateLexBot' {Text
lexRegion :: Text
$sel:lexRegion:DisassociateLexBot' :: DisassociateLexBot -> Text
lexRegion} -> Text
lexRegion) (\s :: DisassociateLexBot
s@DisassociateLexBot' {} Text
a -> DisassociateLexBot
s {$sel:lexRegion:DisassociateLexBot' :: Text
lexRegion = Text
a} :: DisassociateLexBot)
instance Core.AWSRequest DisassociateLexBot where
type
AWSResponse DisassociateLexBot =
DisassociateLexBotResponse
request :: DisassociateLexBot -> Request DisassociateLexBot
request = Service -> DisassociateLexBot -> Request DisassociateLexBot
forall a. ToRequest a => Service -> a -> Request a
Request.delete Service
defaultService
response :: Logger
-> Service
-> Proxy DisassociateLexBot
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DisassociateLexBot)))
response =
AWSResponse DisassociateLexBot
-> Logger
-> Service
-> Proxy DisassociateLexBot
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DisassociateLexBot)))
forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> Logger
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull AWSResponse DisassociateLexBot
DisassociateLexBotResponse
DisassociateLexBotResponse'
instance Prelude.Hashable DisassociateLexBot
instance Prelude.NFData DisassociateLexBot
instance Core.ToHeaders DisassociateLexBot where
toHeaders :: DisassociateLexBot -> [Header]
toHeaders =
[Header] -> DisassociateLexBot -> [Header]
forall a b. a -> b -> a
Prelude.const
( [[Header]] -> [Header]
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"Content-Type"
HeaderName -> ByteString -> [Header]
forall a. ToHeader a => HeaderName -> a -> [Header]
Core.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Core.ToPath DisassociateLexBot where
toPath :: DisassociateLexBot -> ByteString
toPath DisassociateLexBot' {Text
lexRegion :: Text
botName :: Text
instanceId :: Text
$sel:lexRegion:DisassociateLexBot' :: DisassociateLexBot -> Text
$sel:botName:DisassociateLexBot' :: DisassociateLexBot -> Text
$sel:instanceId:DisassociateLexBot' :: DisassociateLexBot -> Text
..} =
[ByteString] -> ByteString
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"/instance/", Text -> ByteString
forall a. ToByteString a => a -> ByteString
Core.toBS Text
instanceId, ByteString
"/lex-bot"]
instance Core.ToQuery DisassociateLexBot where
toQuery :: DisassociateLexBot -> QueryString
toQuery DisassociateLexBot' {Text
lexRegion :: Text
botName :: Text
instanceId :: Text
$sel:lexRegion:DisassociateLexBot' :: DisassociateLexBot -> Text
$sel:botName:DisassociateLexBot' :: DisassociateLexBot -> Text
$sel:instanceId:DisassociateLexBot' :: DisassociateLexBot -> Text
..} =
[QueryString] -> QueryString
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"botName" ByteString -> Text -> QueryString
forall a. ToQuery a => ByteString -> a -> QueryString
Core.=: Text
botName,
ByteString
"lexRegion" ByteString -> Text -> QueryString
forall a. ToQuery a => ByteString -> a -> QueryString
Core.=: Text
lexRegion
]
data DisassociateLexBotResponse = DisassociateLexBotResponse'
{
}
deriving (DisassociateLexBotResponse -> DisassociateLexBotResponse -> Bool
(DisassociateLexBotResponse -> DisassociateLexBotResponse -> Bool)
-> (DisassociateLexBotResponse
-> DisassociateLexBotResponse -> Bool)
-> Eq DisassociateLexBotResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DisassociateLexBotResponse -> DisassociateLexBotResponse -> Bool
$c/= :: DisassociateLexBotResponse -> DisassociateLexBotResponse -> Bool
== :: DisassociateLexBotResponse -> DisassociateLexBotResponse -> Bool
$c== :: DisassociateLexBotResponse -> DisassociateLexBotResponse -> Bool
Prelude.Eq, ReadPrec [DisassociateLexBotResponse]
ReadPrec DisassociateLexBotResponse
Int -> ReadS DisassociateLexBotResponse
ReadS [DisassociateLexBotResponse]
(Int -> ReadS DisassociateLexBotResponse)
-> ReadS [DisassociateLexBotResponse]
-> ReadPrec DisassociateLexBotResponse
-> ReadPrec [DisassociateLexBotResponse]
-> Read DisassociateLexBotResponse
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DisassociateLexBotResponse]
$creadListPrec :: ReadPrec [DisassociateLexBotResponse]
readPrec :: ReadPrec DisassociateLexBotResponse
$creadPrec :: ReadPrec DisassociateLexBotResponse
readList :: ReadS [DisassociateLexBotResponse]
$creadList :: ReadS [DisassociateLexBotResponse]
readsPrec :: Int -> ReadS DisassociateLexBotResponse
$creadsPrec :: Int -> ReadS DisassociateLexBotResponse
Prelude.Read, Int -> DisassociateLexBotResponse -> ShowS
[DisassociateLexBotResponse] -> ShowS
DisassociateLexBotResponse -> String
(Int -> DisassociateLexBotResponse -> ShowS)
-> (DisassociateLexBotResponse -> String)
-> ([DisassociateLexBotResponse] -> ShowS)
-> Show DisassociateLexBotResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DisassociateLexBotResponse] -> ShowS
$cshowList :: [DisassociateLexBotResponse] -> ShowS
show :: DisassociateLexBotResponse -> String
$cshow :: DisassociateLexBotResponse -> String
showsPrec :: Int -> DisassociateLexBotResponse -> ShowS
$cshowsPrec :: Int -> DisassociateLexBotResponse -> ShowS
Prelude.Show, (forall x.
DisassociateLexBotResponse -> Rep DisassociateLexBotResponse x)
-> (forall x.
Rep DisassociateLexBotResponse x -> DisassociateLexBotResponse)
-> Generic DisassociateLexBotResponse
forall x.
Rep DisassociateLexBotResponse x -> DisassociateLexBotResponse
forall x.
DisassociateLexBotResponse -> Rep DisassociateLexBotResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DisassociateLexBotResponse x -> DisassociateLexBotResponse
$cfrom :: forall x.
DisassociateLexBotResponse -> Rep DisassociateLexBotResponse x
Prelude.Generic)
newDisassociateLexBotResponse ::
DisassociateLexBotResponse
newDisassociateLexBotResponse :: DisassociateLexBotResponse
newDisassociateLexBotResponse =
DisassociateLexBotResponse
DisassociateLexBotResponse'
instance Prelude.NFData DisassociateLexBotResponse