{-# 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.ElasticSearch.DescribeElasticsearchDomain
(
DescribeElasticsearchDomain (..),
newDescribeElasticsearchDomain,
describeElasticsearchDomain_domainName,
DescribeElasticsearchDomainResponse (..),
newDescribeElasticsearchDomainResponse,
describeElasticsearchDomainResponse_httpStatus,
describeElasticsearchDomainResponse_domainStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.ElasticSearch.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DescribeElasticsearchDomain = DescribeElasticsearchDomain'
{
DescribeElasticsearchDomain -> Text
domainName :: Prelude.Text
}
deriving (DescribeElasticsearchDomain -> DescribeElasticsearchDomain -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeElasticsearchDomain -> DescribeElasticsearchDomain -> Bool
$c/= :: DescribeElasticsearchDomain -> DescribeElasticsearchDomain -> Bool
== :: DescribeElasticsearchDomain -> DescribeElasticsearchDomain -> Bool
$c== :: DescribeElasticsearchDomain -> DescribeElasticsearchDomain -> Bool
Prelude.Eq, ReadPrec [DescribeElasticsearchDomain]
ReadPrec DescribeElasticsearchDomain
Int -> ReadS DescribeElasticsearchDomain
ReadS [DescribeElasticsearchDomain]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeElasticsearchDomain]
$creadListPrec :: ReadPrec [DescribeElasticsearchDomain]
readPrec :: ReadPrec DescribeElasticsearchDomain
$creadPrec :: ReadPrec DescribeElasticsearchDomain
readList :: ReadS [DescribeElasticsearchDomain]
$creadList :: ReadS [DescribeElasticsearchDomain]
readsPrec :: Int -> ReadS DescribeElasticsearchDomain
$creadsPrec :: Int -> ReadS DescribeElasticsearchDomain
Prelude.Read, Int -> DescribeElasticsearchDomain -> ShowS
[DescribeElasticsearchDomain] -> ShowS
DescribeElasticsearchDomain -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeElasticsearchDomain] -> ShowS
$cshowList :: [DescribeElasticsearchDomain] -> ShowS
show :: DescribeElasticsearchDomain -> String
$cshow :: DescribeElasticsearchDomain -> String
showsPrec :: Int -> DescribeElasticsearchDomain -> ShowS
$cshowsPrec :: Int -> DescribeElasticsearchDomain -> ShowS
Prelude.Show, forall x.
Rep DescribeElasticsearchDomain x -> DescribeElasticsearchDomain
forall x.
DescribeElasticsearchDomain -> Rep DescribeElasticsearchDomain x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeElasticsearchDomain x -> DescribeElasticsearchDomain
$cfrom :: forall x.
DescribeElasticsearchDomain -> Rep DescribeElasticsearchDomain x
Prelude.Generic)
newDescribeElasticsearchDomain ::
Prelude.Text ->
DescribeElasticsearchDomain
newDescribeElasticsearchDomain :: Text -> DescribeElasticsearchDomain
newDescribeElasticsearchDomain Text
pDomainName_ =
DescribeElasticsearchDomain'
{ $sel:domainName:DescribeElasticsearchDomain' :: Text
domainName =
Text
pDomainName_
}
describeElasticsearchDomain_domainName :: Lens.Lens' DescribeElasticsearchDomain Prelude.Text
describeElasticsearchDomain_domainName :: Lens' DescribeElasticsearchDomain Text
describeElasticsearchDomain_domainName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeElasticsearchDomain' {Text
domainName :: Text
$sel:domainName:DescribeElasticsearchDomain' :: DescribeElasticsearchDomain -> Text
domainName} -> Text
domainName) (\s :: DescribeElasticsearchDomain
s@DescribeElasticsearchDomain' {} Text
a -> DescribeElasticsearchDomain
s {$sel:domainName:DescribeElasticsearchDomain' :: Text
domainName = Text
a} :: DescribeElasticsearchDomain)
instance Core.AWSRequest DescribeElasticsearchDomain where
type
AWSResponse DescribeElasticsearchDomain =
DescribeElasticsearchDomainResponse
request :: (Service -> Service)
-> DescribeElasticsearchDomain
-> Request DescribeElasticsearchDomain
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 DescribeElasticsearchDomain
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeElasticsearchDomain)))
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
-> ElasticsearchDomainStatus -> DescribeElasticsearchDomainResponse
DescribeElasticsearchDomainResponse'
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
"DomainStatus")
)
instance Prelude.Hashable DescribeElasticsearchDomain where
hashWithSalt :: Int -> DescribeElasticsearchDomain -> Int
hashWithSalt Int
_salt DescribeElasticsearchDomain' {Text
domainName :: Text
$sel:domainName:DescribeElasticsearchDomain' :: DescribeElasticsearchDomain -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
domainName
instance Prelude.NFData DescribeElasticsearchDomain where
rnf :: DescribeElasticsearchDomain -> ()
rnf DescribeElasticsearchDomain' {Text
domainName :: Text
$sel:domainName:DescribeElasticsearchDomain' :: DescribeElasticsearchDomain -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
domainName
instance Data.ToHeaders DescribeElasticsearchDomain where
toHeaders :: DescribeElasticsearchDomain -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath DescribeElasticsearchDomain where
toPath :: DescribeElasticsearchDomain -> ByteString
toPath DescribeElasticsearchDomain' {Text
domainName :: Text
$sel:domainName:DescribeElasticsearchDomain' :: DescribeElasticsearchDomain -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"/2015-01-01/es/domain/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
domainName]
instance Data.ToQuery DescribeElasticsearchDomain where
toQuery :: DescribeElasticsearchDomain -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DescribeElasticsearchDomainResponse = DescribeElasticsearchDomainResponse'
{
DescribeElasticsearchDomainResponse -> Int
httpStatus :: Prelude.Int,
DescribeElasticsearchDomainResponse -> ElasticsearchDomainStatus
domainStatus :: ElasticsearchDomainStatus
}
deriving (DescribeElasticsearchDomainResponse
-> DescribeElasticsearchDomainResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeElasticsearchDomainResponse
-> DescribeElasticsearchDomainResponse -> Bool
$c/= :: DescribeElasticsearchDomainResponse
-> DescribeElasticsearchDomainResponse -> Bool
== :: DescribeElasticsearchDomainResponse
-> DescribeElasticsearchDomainResponse -> Bool
$c== :: DescribeElasticsearchDomainResponse
-> DescribeElasticsearchDomainResponse -> Bool
Prelude.Eq, ReadPrec [DescribeElasticsearchDomainResponse]
ReadPrec DescribeElasticsearchDomainResponse
Int -> ReadS DescribeElasticsearchDomainResponse
ReadS [DescribeElasticsearchDomainResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeElasticsearchDomainResponse]
$creadListPrec :: ReadPrec [DescribeElasticsearchDomainResponse]
readPrec :: ReadPrec DescribeElasticsearchDomainResponse
$creadPrec :: ReadPrec DescribeElasticsearchDomainResponse
readList :: ReadS [DescribeElasticsearchDomainResponse]
$creadList :: ReadS [DescribeElasticsearchDomainResponse]
readsPrec :: Int -> ReadS DescribeElasticsearchDomainResponse
$creadsPrec :: Int -> ReadS DescribeElasticsearchDomainResponse
Prelude.Read, Int -> DescribeElasticsearchDomainResponse -> ShowS
[DescribeElasticsearchDomainResponse] -> ShowS
DescribeElasticsearchDomainResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeElasticsearchDomainResponse] -> ShowS
$cshowList :: [DescribeElasticsearchDomainResponse] -> ShowS
show :: DescribeElasticsearchDomainResponse -> String
$cshow :: DescribeElasticsearchDomainResponse -> String
showsPrec :: Int -> DescribeElasticsearchDomainResponse -> ShowS
$cshowsPrec :: Int -> DescribeElasticsearchDomainResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeElasticsearchDomainResponse x
-> DescribeElasticsearchDomainResponse
forall x.
DescribeElasticsearchDomainResponse
-> Rep DescribeElasticsearchDomainResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeElasticsearchDomainResponse x
-> DescribeElasticsearchDomainResponse
$cfrom :: forall x.
DescribeElasticsearchDomainResponse
-> Rep DescribeElasticsearchDomainResponse x
Prelude.Generic)
newDescribeElasticsearchDomainResponse ::
Prelude.Int ->
ElasticsearchDomainStatus ->
DescribeElasticsearchDomainResponse
newDescribeElasticsearchDomainResponse :: Int
-> ElasticsearchDomainStatus -> DescribeElasticsearchDomainResponse
newDescribeElasticsearchDomainResponse
Int
pHttpStatus_
ElasticsearchDomainStatus
pDomainStatus_ =
DescribeElasticsearchDomainResponse'
{ $sel:httpStatus:DescribeElasticsearchDomainResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:domainStatus:DescribeElasticsearchDomainResponse' :: ElasticsearchDomainStatus
domainStatus = ElasticsearchDomainStatus
pDomainStatus_
}
describeElasticsearchDomainResponse_httpStatus :: Lens.Lens' DescribeElasticsearchDomainResponse Prelude.Int
describeElasticsearchDomainResponse_httpStatus :: Lens' DescribeElasticsearchDomainResponse Int
describeElasticsearchDomainResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeElasticsearchDomainResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeElasticsearchDomainResponse' :: DescribeElasticsearchDomainResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeElasticsearchDomainResponse
s@DescribeElasticsearchDomainResponse' {} Int
a -> DescribeElasticsearchDomainResponse
s {$sel:httpStatus:DescribeElasticsearchDomainResponse' :: Int
httpStatus = Int
a} :: DescribeElasticsearchDomainResponse)
describeElasticsearchDomainResponse_domainStatus :: Lens.Lens' DescribeElasticsearchDomainResponse ElasticsearchDomainStatus
describeElasticsearchDomainResponse_domainStatus :: Lens' DescribeElasticsearchDomainResponse ElasticsearchDomainStatus
describeElasticsearchDomainResponse_domainStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeElasticsearchDomainResponse' {ElasticsearchDomainStatus
domainStatus :: ElasticsearchDomainStatus
$sel:domainStatus:DescribeElasticsearchDomainResponse' :: DescribeElasticsearchDomainResponse -> ElasticsearchDomainStatus
domainStatus} -> ElasticsearchDomainStatus
domainStatus) (\s :: DescribeElasticsearchDomainResponse
s@DescribeElasticsearchDomainResponse' {} ElasticsearchDomainStatus
a -> DescribeElasticsearchDomainResponse
s {$sel:domainStatus:DescribeElasticsearchDomainResponse' :: ElasticsearchDomainStatus
domainStatus = ElasticsearchDomainStatus
a} :: DescribeElasticsearchDomainResponse)
instance
Prelude.NFData
DescribeElasticsearchDomainResponse
where
rnf :: DescribeElasticsearchDomainResponse -> ()
rnf DescribeElasticsearchDomainResponse' {Int
ElasticsearchDomainStatus
domainStatus :: ElasticsearchDomainStatus
httpStatus :: Int
$sel:domainStatus:DescribeElasticsearchDomainResponse' :: DescribeElasticsearchDomainResponse -> ElasticsearchDomainStatus
$sel:httpStatus:DescribeElasticsearchDomainResponse' :: DescribeElasticsearchDomainResponse -> 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 ElasticsearchDomainStatus
domainStatus