{-# 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.CloudSearch.DescribeExpressions
(
DescribeExpressions (..),
newDescribeExpressions,
describeExpressions_deployed,
describeExpressions_expressionNames,
describeExpressions_domainName,
DescribeExpressionsResponse (..),
newDescribeExpressionsResponse,
describeExpressionsResponse_httpStatus,
describeExpressionsResponse_expressions,
)
where
import Amazonka.CloudSearch.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 DescribeExpressions = DescribeExpressions'
{
DescribeExpressions -> Maybe Bool
deployed :: Prelude.Maybe Prelude.Bool,
DescribeExpressions -> Maybe [Text]
expressionNames :: Prelude.Maybe [Prelude.Text],
DescribeExpressions -> Text
domainName :: Prelude.Text
}
deriving (DescribeExpressions -> DescribeExpressions -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeExpressions -> DescribeExpressions -> Bool
$c/= :: DescribeExpressions -> DescribeExpressions -> Bool
== :: DescribeExpressions -> DescribeExpressions -> Bool
$c== :: DescribeExpressions -> DescribeExpressions -> Bool
Prelude.Eq, ReadPrec [DescribeExpressions]
ReadPrec DescribeExpressions
Int -> ReadS DescribeExpressions
ReadS [DescribeExpressions]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeExpressions]
$creadListPrec :: ReadPrec [DescribeExpressions]
readPrec :: ReadPrec DescribeExpressions
$creadPrec :: ReadPrec DescribeExpressions
readList :: ReadS [DescribeExpressions]
$creadList :: ReadS [DescribeExpressions]
readsPrec :: Int -> ReadS DescribeExpressions
$creadsPrec :: Int -> ReadS DescribeExpressions
Prelude.Read, Int -> DescribeExpressions -> ShowS
[DescribeExpressions] -> ShowS
DescribeExpressions -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeExpressions] -> ShowS
$cshowList :: [DescribeExpressions] -> ShowS
show :: DescribeExpressions -> String
$cshow :: DescribeExpressions -> String
showsPrec :: Int -> DescribeExpressions -> ShowS
$cshowsPrec :: Int -> DescribeExpressions -> ShowS
Prelude.Show, forall x. Rep DescribeExpressions x -> DescribeExpressions
forall x. DescribeExpressions -> Rep DescribeExpressions x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribeExpressions x -> DescribeExpressions
$cfrom :: forall x. DescribeExpressions -> Rep DescribeExpressions x
Prelude.Generic)
newDescribeExpressions ::
Prelude.Text ->
DescribeExpressions
newDescribeExpressions :: Text -> DescribeExpressions
newDescribeExpressions Text
pDomainName_ =
DescribeExpressions'
{ $sel:deployed:DescribeExpressions' :: Maybe Bool
deployed = forall a. Maybe a
Prelude.Nothing,
$sel:expressionNames:DescribeExpressions' :: Maybe [Text]
expressionNames = forall a. Maybe a
Prelude.Nothing,
$sel:domainName:DescribeExpressions' :: Text
domainName = Text
pDomainName_
}
describeExpressions_deployed :: Lens.Lens' DescribeExpressions (Prelude.Maybe Prelude.Bool)
describeExpressions_deployed :: Lens' DescribeExpressions (Maybe Bool)
describeExpressions_deployed = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeExpressions' {Maybe Bool
deployed :: Maybe Bool
$sel:deployed:DescribeExpressions' :: DescribeExpressions -> Maybe Bool
deployed} -> Maybe Bool
deployed) (\s :: DescribeExpressions
s@DescribeExpressions' {} Maybe Bool
a -> DescribeExpressions
s {$sel:deployed:DescribeExpressions' :: Maybe Bool
deployed = Maybe Bool
a} :: DescribeExpressions)
describeExpressions_expressionNames :: Lens.Lens' DescribeExpressions (Prelude.Maybe [Prelude.Text])
describeExpressions_expressionNames :: Lens' DescribeExpressions (Maybe [Text])
describeExpressions_expressionNames = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeExpressions' {Maybe [Text]
expressionNames :: Maybe [Text]
$sel:expressionNames:DescribeExpressions' :: DescribeExpressions -> Maybe [Text]
expressionNames} -> Maybe [Text]
expressionNames) (\s :: DescribeExpressions
s@DescribeExpressions' {} Maybe [Text]
a -> DescribeExpressions
s {$sel:expressionNames:DescribeExpressions' :: Maybe [Text]
expressionNames = Maybe [Text]
a} :: DescribeExpressions) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
describeExpressions_domainName :: Lens.Lens' DescribeExpressions Prelude.Text
describeExpressions_domainName :: Lens' DescribeExpressions Text
describeExpressions_domainName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeExpressions' {Text
domainName :: Text
$sel:domainName:DescribeExpressions' :: DescribeExpressions -> Text
domainName} -> Text
domainName) (\s :: DescribeExpressions
s@DescribeExpressions' {} Text
a -> DescribeExpressions
s {$sel:domainName:DescribeExpressions' :: Text
domainName = Text
a} :: DescribeExpressions)
instance Core.AWSRequest DescribeExpressions where
type
AWSResponse DescribeExpressions =
DescribeExpressionsResponse
request :: (Service -> Service)
-> DescribeExpressions -> Request DescribeExpressions
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.postQuery (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DescribeExpressions
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeExpressions)))
response =
forall (m :: * -> *) a.
MonadResource m =>
Text
-> (Int
-> ResponseHeaders -> [Node] -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveXMLWrapper
Text
"DescribeExpressionsResult"
( \Int
s ResponseHeaders
h [Node]
x ->
Int -> [ExpressionStatus] -> DescribeExpressionsResponse
DescribeExpressionsResponse'
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.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"Expressions"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"member"
)
)
instance Prelude.Hashable DescribeExpressions where
hashWithSalt :: Int -> DescribeExpressions -> Int
hashWithSalt Int
_salt DescribeExpressions' {Maybe Bool
Maybe [Text]
Text
domainName :: Text
expressionNames :: Maybe [Text]
deployed :: Maybe Bool
$sel:domainName:DescribeExpressions' :: DescribeExpressions -> Text
$sel:expressionNames:DescribeExpressions' :: DescribeExpressions -> Maybe [Text]
$sel:deployed:DescribeExpressions' :: DescribeExpressions -> Maybe Bool
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
deployed
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Text]
expressionNames
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
domainName
instance Prelude.NFData DescribeExpressions where
rnf :: DescribeExpressions -> ()
rnf DescribeExpressions' {Maybe Bool
Maybe [Text]
Text
domainName :: Text
expressionNames :: Maybe [Text]
deployed :: Maybe Bool
$sel:domainName:DescribeExpressions' :: DescribeExpressions -> Text
$sel:expressionNames:DescribeExpressions' :: DescribeExpressions -> Maybe [Text]
$sel:deployed:DescribeExpressions' :: DescribeExpressions -> Maybe Bool
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
deployed
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Text]
expressionNames
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
domainName
instance Data.ToHeaders DescribeExpressions where
toHeaders :: DescribeExpressions -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath DescribeExpressions where
toPath :: DescribeExpressions -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DescribeExpressions where
toQuery :: DescribeExpressions -> QueryString
toQuery DescribeExpressions' {Maybe Bool
Maybe [Text]
Text
domainName :: Text
expressionNames :: Maybe [Text]
deployed :: Maybe Bool
$sel:domainName:DescribeExpressions' :: DescribeExpressions -> Text
$sel:expressionNames:DescribeExpressions' :: DescribeExpressions -> Maybe [Text]
$sel:deployed:DescribeExpressions' :: DescribeExpressions -> Maybe Bool
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"DescribeExpressions" :: Prelude.ByteString),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2013-01-01" :: Prelude.ByteString),
ByteString
"Deployed" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Bool
deployed,
ByteString
"ExpressionNames"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: forall a. ToQuery a => a -> QueryString
Data.toQuery
( forall a.
(IsList a, ToQuery (Item a)) =>
ByteString -> a -> QueryString
Data.toQueryList ByteString
"member"
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [Text]
expressionNames
),
ByteString
"DomainName" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
domainName
]
data DescribeExpressionsResponse = DescribeExpressionsResponse'
{
DescribeExpressionsResponse -> Int
httpStatus :: Prelude.Int,
DescribeExpressionsResponse -> [ExpressionStatus]
expressions :: [ExpressionStatus]
}
deriving (DescribeExpressionsResponse -> DescribeExpressionsResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeExpressionsResponse -> DescribeExpressionsResponse -> Bool
$c/= :: DescribeExpressionsResponse -> DescribeExpressionsResponse -> Bool
== :: DescribeExpressionsResponse -> DescribeExpressionsResponse -> Bool
$c== :: DescribeExpressionsResponse -> DescribeExpressionsResponse -> Bool
Prelude.Eq, ReadPrec [DescribeExpressionsResponse]
ReadPrec DescribeExpressionsResponse
Int -> ReadS DescribeExpressionsResponse
ReadS [DescribeExpressionsResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeExpressionsResponse]
$creadListPrec :: ReadPrec [DescribeExpressionsResponse]
readPrec :: ReadPrec DescribeExpressionsResponse
$creadPrec :: ReadPrec DescribeExpressionsResponse
readList :: ReadS [DescribeExpressionsResponse]
$creadList :: ReadS [DescribeExpressionsResponse]
readsPrec :: Int -> ReadS DescribeExpressionsResponse
$creadsPrec :: Int -> ReadS DescribeExpressionsResponse
Prelude.Read, Int -> DescribeExpressionsResponse -> ShowS
[DescribeExpressionsResponse] -> ShowS
DescribeExpressionsResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeExpressionsResponse] -> ShowS
$cshowList :: [DescribeExpressionsResponse] -> ShowS
show :: DescribeExpressionsResponse -> String
$cshow :: DescribeExpressionsResponse -> String
showsPrec :: Int -> DescribeExpressionsResponse -> ShowS
$cshowsPrec :: Int -> DescribeExpressionsResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeExpressionsResponse x -> DescribeExpressionsResponse
forall x.
DescribeExpressionsResponse -> Rep DescribeExpressionsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeExpressionsResponse x -> DescribeExpressionsResponse
$cfrom :: forall x.
DescribeExpressionsResponse -> Rep DescribeExpressionsResponse x
Prelude.Generic)
newDescribeExpressionsResponse ::
Prelude.Int ->
DescribeExpressionsResponse
newDescribeExpressionsResponse :: Int -> DescribeExpressionsResponse
newDescribeExpressionsResponse Int
pHttpStatus_ =
DescribeExpressionsResponse'
{ $sel:httpStatus:DescribeExpressionsResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:expressions:DescribeExpressionsResponse' :: [ExpressionStatus]
expressions = forall a. Monoid a => a
Prelude.mempty
}
describeExpressionsResponse_httpStatus :: Lens.Lens' DescribeExpressionsResponse Prelude.Int
describeExpressionsResponse_httpStatus :: Lens' DescribeExpressionsResponse Int
describeExpressionsResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeExpressionsResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeExpressionsResponse' :: DescribeExpressionsResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeExpressionsResponse
s@DescribeExpressionsResponse' {} Int
a -> DescribeExpressionsResponse
s {$sel:httpStatus:DescribeExpressionsResponse' :: Int
httpStatus = Int
a} :: DescribeExpressionsResponse)
describeExpressionsResponse_expressions :: Lens.Lens' DescribeExpressionsResponse [ExpressionStatus]
describeExpressionsResponse_expressions :: Lens' DescribeExpressionsResponse [ExpressionStatus]
describeExpressionsResponse_expressions = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeExpressionsResponse' {[ExpressionStatus]
expressions :: [ExpressionStatus]
$sel:expressions:DescribeExpressionsResponse' :: DescribeExpressionsResponse -> [ExpressionStatus]
expressions} -> [ExpressionStatus]
expressions) (\s :: DescribeExpressionsResponse
s@DescribeExpressionsResponse' {} [ExpressionStatus]
a -> DescribeExpressionsResponse
s {$sel:expressions:DescribeExpressionsResponse' :: [ExpressionStatus]
expressions = [ExpressionStatus]
a} :: DescribeExpressionsResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instance Prelude.NFData DescribeExpressionsResponse where
rnf :: DescribeExpressionsResponse -> ()
rnf DescribeExpressionsResponse' {Int
[ExpressionStatus]
expressions :: [ExpressionStatus]
httpStatus :: Int
$sel:expressions:DescribeExpressionsResponse' :: DescribeExpressionsResponse -> [ExpressionStatus]
$sel:httpStatus:DescribeExpressionsResponse' :: DescribeExpressionsResponse -> 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 [ExpressionStatus]
expressions