{-# 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.DescribeVocabulary
(
DescribeVocabulary (..),
newDescribeVocabulary,
describeVocabulary_instanceId,
describeVocabulary_vocabularyId,
DescribeVocabularyResponse (..),
newDescribeVocabularyResponse,
describeVocabularyResponse_httpStatus,
describeVocabularyResponse_vocabulary,
)
where
import Amazonka.Connect.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 DescribeVocabulary = DescribeVocabulary'
{
DescribeVocabulary -> Text
instanceId :: Prelude.Text,
DescribeVocabulary -> Text
vocabularyId :: Prelude.Text
}
deriving (DescribeVocabulary -> DescribeVocabulary -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeVocabulary -> DescribeVocabulary -> Bool
$c/= :: DescribeVocabulary -> DescribeVocabulary -> Bool
== :: DescribeVocabulary -> DescribeVocabulary -> Bool
$c== :: DescribeVocabulary -> DescribeVocabulary -> Bool
Prelude.Eq, ReadPrec [DescribeVocabulary]
ReadPrec DescribeVocabulary
Int -> ReadS DescribeVocabulary
ReadS [DescribeVocabulary]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeVocabulary]
$creadListPrec :: ReadPrec [DescribeVocabulary]
readPrec :: ReadPrec DescribeVocabulary
$creadPrec :: ReadPrec DescribeVocabulary
readList :: ReadS [DescribeVocabulary]
$creadList :: ReadS [DescribeVocabulary]
readsPrec :: Int -> ReadS DescribeVocabulary
$creadsPrec :: Int -> ReadS DescribeVocabulary
Prelude.Read, Int -> DescribeVocabulary -> ShowS
[DescribeVocabulary] -> ShowS
DescribeVocabulary -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeVocabulary] -> ShowS
$cshowList :: [DescribeVocabulary] -> ShowS
show :: DescribeVocabulary -> String
$cshow :: DescribeVocabulary -> String
showsPrec :: Int -> DescribeVocabulary -> ShowS
$cshowsPrec :: Int -> DescribeVocabulary -> ShowS
Prelude.Show, forall x. Rep DescribeVocabulary x -> DescribeVocabulary
forall x. DescribeVocabulary -> Rep DescribeVocabulary x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribeVocabulary x -> DescribeVocabulary
$cfrom :: forall x. DescribeVocabulary -> Rep DescribeVocabulary x
Prelude.Generic)
newDescribeVocabulary ::
Prelude.Text ->
Prelude.Text ->
DescribeVocabulary
newDescribeVocabulary :: Text -> Text -> DescribeVocabulary
newDescribeVocabulary Text
pInstanceId_ Text
pVocabularyId_ =
DescribeVocabulary'
{ $sel:instanceId:DescribeVocabulary' :: Text
instanceId = Text
pInstanceId_,
$sel:vocabularyId:DescribeVocabulary' :: Text
vocabularyId = Text
pVocabularyId_
}
describeVocabulary_instanceId :: Lens.Lens' DescribeVocabulary Prelude.Text
describeVocabulary_instanceId :: Lens' DescribeVocabulary Text
describeVocabulary_instanceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeVocabulary' {Text
instanceId :: Text
$sel:instanceId:DescribeVocabulary' :: DescribeVocabulary -> Text
instanceId} -> Text
instanceId) (\s :: DescribeVocabulary
s@DescribeVocabulary' {} Text
a -> DescribeVocabulary
s {$sel:instanceId:DescribeVocabulary' :: Text
instanceId = Text
a} :: DescribeVocabulary)
describeVocabulary_vocabularyId :: Lens.Lens' DescribeVocabulary Prelude.Text
describeVocabulary_vocabularyId :: Lens' DescribeVocabulary Text
describeVocabulary_vocabularyId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeVocabulary' {Text
vocabularyId :: Text
$sel:vocabularyId:DescribeVocabulary' :: DescribeVocabulary -> Text
vocabularyId} -> Text
vocabularyId) (\s :: DescribeVocabulary
s@DescribeVocabulary' {} Text
a -> DescribeVocabulary
s {$sel:vocabularyId:DescribeVocabulary' :: Text
vocabularyId = Text
a} :: DescribeVocabulary)
instance Core.AWSRequest DescribeVocabulary where
type
AWSResponse DescribeVocabulary =
DescribeVocabularyResponse
request :: (Service -> Service)
-> DescribeVocabulary -> Request DescribeVocabulary
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.get (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DescribeVocabulary
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeVocabulary)))
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 -> Vocabulary -> DescribeVocabularyResponse
DescribeVocabularyResponse'
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.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"Vocabulary")
)
instance Prelude.Hashable DescribeVocabulary where
hashWithSalt :: Int -> DescribeVocabulary -> Int
hashWithSalt Int
_salt DescribeVocabulary' {Text
vocabularyId :: Text
instanceId :: Text
$sel:vocabularyId:DescribeVocabulary' :: DescribeVocabulary -> Text
$sel:instanceId:DescribeVocabulary' :: DescribeVocabulary -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
instanceId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
vocabularyId
instance Prelude.NFData DescribeVocabulary where
rnf :: DescribeVocabulary -> ()
rnf DescribeVocabulary' {Text
vocabularyId :: Text
instanceId :: Text
$sel:vocabularyId:DescribeVocabulary' :: DescribeVocabulary -> Text
$sel:instanceId:DescribeVocabulary' :: DescribeVocabulary -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
instanceId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
vocabularyId
instance Data.ToHeaders DescribeVocabulary where
toHeaders :: DescribeVocabulary -> 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 DescribeVocabulary where
toPath :: DescribeVocabulary -> ByteString
toPath DescribeVocabulary' {Text
vocabularyId :: Text
instanceId :: Text
$sel:vocabularyId:DescribeVocabulary' :: DescribeVocabulary -> Text
$sel:instanceId:DescribeVocabulary' :: DescribeVocabulary -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/vocabulary/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
instanceId,
ByteString
"/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
vocabularyId
]
instance Data.ToQuery DescribeVocabulary where
toQuery :: DescribeVocabulary -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DescribeVocabularyResponse = DescribeVocabularyResponse'
{
DescribeVocabularyResponse -> Int
httpStatus :: Prelude.Int,
DescribeVocabularyResponse -> Vocabulary
vocabulary :: Vocabulary
}
deriving (DescribeVocabularyResponse -> DescribeVocabularyResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeVocabularyResponse -> DescribeVocabularyResponse -> Bool
$c/= :: DescribeVocabularyResponse -> DescribeVocabularyResponse -> Bool
== :: DescribeVocabularyResponse -> DescribeVocabularyResponse -> Bool
$c== :: DescribeVocabularyResponse -> DescribeVocabularyResponse -> Bool
Prelude.Eq, ReadPrec [DescribeVocabularyResponse]
ReadPrec DescribeVocabularyResponse
Int -> ReadS DescribeVocabularyResponse
ReadS [DescribeVocabularyResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeVocabularyResponse]
$creadListPrec :: ReadPrec [DescribeVocabularyResponse]
readPrec :: ReadPrec DescribeVocabularyResponse
$creadPrec :: ReadPrec DescribeVocabularyResponse
readList :: ReadS [DescribeVocabularyResponse]
$creadList :: ReadS [DescribeVocabularyResponse]
readsPrec :: Int -> ReadS DescribeVocabularyResponse
$creadsPrec :: Int -> ReadS DescribeVocabularyResponse
Prelude.Read, Int -> DescribeVocabularyResponse -> ShowS
[DescribeVocabularyResponse] -> ShowS
DescribeVocabularyResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeVocabularyResponse] -> ShowS
$cshowList :: [DescribeVocabularyResponse] -> ShowS
show :: DescribeVocabularyResponse -> String
$cshow :: DescribeVocabularyResponse -> String
showsPrec :: Int -> DescribeVocabularyResponse -> ShowS
$cshowsPrec :: Int -> DescribeVocabularyResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeVocabularyResponse x -> DescribeVocabularyResponse
forall x.
DescribeVocabularyResponse -> Rep DescribeVocabularyResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeVocabularyResponse x -> DescribeVocabularyResponse
$cfrom :: forall x.
DescribeVocabularyResponse -> Rep DescribeVocabularyResponse x
Prelude.Generic)
newDescribeVocabularyResponse ::
Prelude.Int ->
Vocabulary ->
DescribeVocabularyResponse
newDescribeVocabularyResponse :: Int -> Vocabulary -> DescribeVocabularyResponse
newDescribeVocabularyResponse
Int
pHttpStatus_
Vocabulary
pVocabulary_ =
DescribeVocabularyResponse'
{ $sel:httpStatus:DescribeVocabularyResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:vocabulary:DescribeVocabularyResponse' :: Vocabulary
vocabulary = Vocabulary
pVocabulary_
}
describeVocabularyResponse_httpStatus :: Lens.Lens' DescribeVocabularyResponse Prelude.Int
describeVocabularyResponse_httpStatus :: Lens' DescribeVocabularyResponse Int
describeVocabularyResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeVocabularyResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeVocabularyResponse' :: DescribeVocabularyResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeVocabularyResponse
s@DescribeVocabularyResponse' {} Int
a -> DescribeVocabularyResponse
s {$sel:httpStatus:DescribeVocabularyResponse' :: Int
httpStatus = Int
a} :: DescribeVocabularyResponse)
describeVocabularyResponse_vocabulary :: Lens.Lens' DescribeVocabularyResponse Vocabulary
describeVocabularyResponse_vocabulary :: Lens' DescribeVocabularyResponse Vocabulary
describeVocabularyResponse_vocabulary = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeVocabularyResponse' {Vocabulary
vocabulary :: Vocabulary
$sel:vocabulary:DescribeVocabularyResponse' :: DescribeVocabularyResponse -> Vocabulary
vocabulary} -> Vocabulary
vocabulary) (\s :: DescribeVocabularyResponse
s@DescribeVocabularyResponse' {} Vocabulary
a -> DescribeVocabularyResponse
s {$sel:vocabulary:DescribeVocabularyResponse' :: Vocabulary
vocabulary = Vocabulary
a} :: DescribeVocabularyResponse)
instance Prelude.NFData DescribeVocabularyResponse where
rnf :: DescribeVocabularyResponse -> ()
rnf DescribeVocabularyResponse' {Int
Vocabulary
vocabulary :: Vocabulary
httpStatus :: Int
$sel:vocabulary:DescribeVocabularyResponse' :: DescribeVocabularyResponse -> Vocabulary
$sel:httpStatus:DescribeVocabularyResponse' :: DescribeVocabularyResponse -> 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 Vocabulary
vocabulary