{-# 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.DescribeElasticsearchDomains
(
DescribeElasticsearchDomains (..),
newDescribeElasticsearchDomains,
describeElasticsearchDomains_domainNames,
DescribeElasticsearchDomainsResponse (..),
newDescribeElasticsearchDomainsResponse,
describeElasticsearchDomainsResponse_httpStatus,
describeElasticsearchDomainsResponse_domainStatusList,
)
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 DescribeElasticsearchDomains = DescribeElasticsearchDomains'
{
DescribeElasticsearchDomains -> [Text]
domainNames :: [Prelude.Text]
}
deriving (DescribeElasticsearchDomains
-> DescribeElasticsearchDomains -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeElasticsearchDomains
-> DescribeElasticsearchDomains -> Bool
$c/= :: DescribeElasticsearchDomains
-> DescribeElasticsearchDomains -> Bool
== :: DescribeElasticsearchDomains
-> DescribeElasticsearchDomains -> Bool
$c== :: DescribeElasticsearchDomains
-> DescribeElasticsearchDomains -> Bool
Prelude.Eq, ReadPrec [DescribeElasticsearchDomains]
ReadPrec DescribeElasticsearchDomains
Int -> ReadS DescribeElasticsearchDomains
ReadS [DescribeElasticsearchDomains]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeElasticsearchDomains]
$creadListPrec :: ReadPrec [DescribeElasticsearchDomains]
readPrec :: ReadPrec DescribeElasticsearchDomains
$creadPrec :: ReadPrec DescribeElasticsearchDomains
readList :: ReadS [DescribeElasticsearchDomains]
$creadList :: ReadS [DescribeElasticsearchDomains]
readsPrec :: Int -> ReadS DescribeElasticsearchDomains
$creadsPrec :: Int -> ReadS DescribeElasticsearchDomains
Prelude.Read, Int -> DescribeElasticsearchDomains -> ShowS
[DescribeElasticsearchDomains] -> ShowS
DescribeElasticsearchDomains -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeElasticsearchDomains] -> ShowS
$cshowList :: [DescribeElasticsearchDomains] -> ShowS
show :: DescribeElasticsearchDomains -> String
$cshow :: DescribeElasticsearchDomains -> String
showsPrec :: Int -> DescribeElasticsearchDomains -> ShowS
$cshowsPrec :: Int -> DescribeElasticsearchDomains -> ShowS
Prelude.Show, forall x.
Rep DescribeElasticsearchDomains x -> DescribeElasticsearchDomains
forall x.
DescribeElasticsearchDomains -> Rep DescribeElasticsearchDomains x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeElasticsearchDomains x -> DescribeElasticsearchDomains
$cfrom :: forall x.
DescribeElasticsearchDomains -> Rep DescribeElasticsearchDomains x
Prelude.Generic)
newDescribeElasticsearchDomains ::
DescribeElasticsearchDomains
newDescribeElasticsearchDomains :: DescribeElasticsearchDomains
newDescribeElasticsearchDomains =
DescribeElasticsearchDomains'
{ $sel:domainNames:DescribeElasticsearchDomains' :: [Text]
domainNames =
forall a. Monoid a => a
Prelude.mempty
}
describeElasticsearchDomains_domainNames :: Lens.Lens' DescribeElasticsearchDomains [Prelude.Text]
describeElasticsearchDomains_domainNames :: Lens' DescribeElasticsearchDomains [Text]
describeElasticsearchDomains_domainNames = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeElasticsearchDomains' {[Text]
domainNames :: [Text]
$sel:domainNames:DescribeElasticsearchDomains' :: DescribeElasticsearchDomains -> [Text]
domainNames} -> [Text]
domainNames) (\s :: DescribeElasticsearchDomains
s@DescribeElasticsearchDomains' {} [Text]
a -> DescribeElasticsearchDomains
s {$sel:domainNames:DescribeElasticsearchDomains' :: [Text]
domainNames = [Text]
a} :: DescribeElasticsearchDomains) 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 Core.AWSRequest DescribeElasticsearchDomains where
type
AWSResponse DescribeElasticsearchDomains =
DescribeElasticsearchDomainsResponse
request :: (Service -> Service)
-> DescribeElasticsearchDomains
-> Request DescribeElasticsearchDomains
request Service -> Service
overrides =
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DescribeElasticsearchDomains
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeElasticsearchDomains)))
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]
-> DescribeElasticsearchDomainsResponse
DescribeElasticsearchDomainsResponse'
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 (Maybe a)
Data..?> Key
"DomainStatusList"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
)
)
instance
Prelude.Hashable
DescribeElasticsearchDomains
where
hashWithSalt :: Int -> DescribeElasticsearchDomains -> Int
hashWithSalt Int
_salt DescribeElasticsearchDomains' {[Text]
domainNames :: [Text]
$sel:domainNames:DescribeElasticsearchDomains' :: DescribeElasticsearchDomains -> [Text]
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` [Text]
domainNames
instance Prelude.NFData DescribeElasticsearchDomains where
rnf :: DescribeElasticsearchDomains -> ()
rnf DescribeElasticsearchDomains' {[Text]
domainNames :: [Text]
$sel:domainNames:DescribeElasticsearchDomains' :: DescribeElasticsearchDomains -> [Text]
..} =
forall a. NFData a => a -> ()
Prelude.rnf [Text]
domainNames
instance Data.ToHeaders DescribeElasticsearchDomains where
toHeaders :: DescribeElasticsearchDomains -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToJSON DescribeElasticsearchDomains where
toJSON :: DescribeElasticsearchDomains -> Value
toJSON DescribeElasticsearchDomains' {[Text]
domainNames :: [Text]
$sel:domainNames:DescribeElasticsearchDomains' :: DescribeElasticsearchDomains -> [Text]
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[forall a. a -> Maybe a
Prelude.Just (Key
"DomainNames" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= [Text]
domainNames)]
)
instance Data.ToPath DescribeElasticsearchDomains where
toPath :: DescribeElasticsearchDomains -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/2015-01-01/es/domain-info"
instance Data.ToQuery DescribeElasticsearchDomains where
toQuery :: DescribeElasticsearchDomains -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DescribeElasticsearchDomainsResponse = DescribeElasticsearchDomainsResponse'
{
DescribeElasticsearchDomainsResponse -> Int
httpStatus :: Prelude.Int,
DescribeElasticsearchDomainsResponse -> [ElasticsearchDomainStatus]
domainStatusList :: [ElasticsearchDomainStatus]
}
deriving (DescribeElasticsearchDomainsResponse
-> DescribeElasticsearchDomainsResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeElasticsearchDomainsResponse
-> DescribeElasticsearchDomainsResponse -> Bool
$c/= :: DescribeElasticsearchDomainsResponse
-> DescribeElasticsearchDomainsResponse -> Bool
== :: DescribeElasticsearchDomainsResponse
-> DescribeElasticsearchDomainsResponse -> Bool
$c== :: DescribeElasticsearchDomainsResponse
-> DescribeElasticsearchDomainsResponse -> Bool
Prelude.Eq, ReadPrec [DescribeElasticsearchDomainsResponse]
ReadPrec DescribeElasticsearchDomainsResponse
Int -> ReadS DescribeElasticsearchDomainsResponse
ReadS [DescribeElasticsearchDomainsResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeElasticsearchDomainsResponse]
$creadListPrec :: ReadPrec [DescribeElasticsearchDomainsResponse]
readPrec :: ReadPrec DescribeElasticsearchDomainsResponse
$creadPrec :: ReadPrec DescribeElasticsearchDomainsResponse
readList :: ReadS [DescribeElasticsearchDomainsResponse]
$creadList :: ReadS [DescribeElasticsearchDomainsResponse]
readsPrec :: Int -> ReadS DescribeElasticsearchDomainsResponse
$creadsPrec :: Int -> ReadS DescribeElasticsearchDomainsResponse
Prelude.Read, Int -> DescribeElasticsearchDomainsResponse -> ShowS
[DescribeElasticsearchDomainsResponse] -> ShowS
DescribeElasticsearchDomainsResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeElasticsearchDomainsResponse] -> ShowS
$cshowList :: [DescribeElasticsearchDomainsResponse] -> ShowS
show :: DescribeElasticsearchDomainsResponse -> String
$cshow :: DescribeElasticsearchDomainsResponse -> String
showsPrec :: Int -> DescribeElasticsearchDomainsResponse -> ShowS
$cshowsPrec :: Int -> DescribeElasticsearchDomainsResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeElasticsearchDomainsResponse x
-> DescribeElasticsearchDomainsResponse
forall x.
DescribeElasticsearchDomainsResponse
-> Rep DescribeElasticsearchDomainsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeElasticsearchDomainsResponse x
-> DescribeElasticsearchDomainsResponse
$cfrom :: forall x.
DescribeElasticsearchDomainsResponse
-> Rep DescribeElasticsearchDomainsResponse x
Prelude.Generic)
newDescribeElasticsearchDomainsResponse ::
Prelude.Int ->
DescribeElasticsearchDomainsResponse
newDescribeElasticsearchDomainsResponse :: Int -> DescribeElasticsearchDomainsResponse
newDescribeElasticsearchDomainsResponse Int
pHttpStatus_ =
DescribeElasticsearchDomainsResponse'
{ $sel:httpStatus:DescribeElasticsearchDomainsResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:domainStatusList:DescribeElasticsearchDomainsResponse' :: [ElasticsearchDomainStatus]
domainStatusList = forall a. Monoid a => a
Prelude.mempty
}
describeElasticsearchDomainsResponse_httpStatus :: Lens.Lens' DescribeElasticsearchDomainsResponse Prelude.Int
describeElasticsearchDomainsResponse_httpStatus :: Lens' DescribeElasticsearchDomainsResponse Int
describeElasticsearchDomainsResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeElasticsearchDomainsResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeElasticsearchDomainsResponse' :: DescribeElasticsearchDomainsResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeElasticsearchDomainsResponse
s@DescribeElasticsearchDomainsResponse' {} Int
a -> DescribeElasticsearchDomainsResponse
s {$sel:httpStatus:DescribeElasticsearchDomainsResponse' :: Int
httpStatus = Int
a} :: DescribeElasticsearchDomainsResponse)
describeElasticsearchDomainsResponse_domainStatusList :: Lens.Lens' DescribeElasticsearchDomainsResponse [ElasticsearchDomainStatus]
describeElasticsearchDomainsResponse_domainStatusList :: Lens'
DescribeElasticsearchDomainsResponse [ElasticsearchDomainStatus]
describeElasticsearchDomainsResponse_domainStatusList = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeElasticsearchDomainsResponse' {[ElasticsearchDomainStatus]
domainStatusList :: [ElasticsearchDomainStatus]
$sel:domainStatusList:DescribeElasticsearchDomainsResponse' :: DescribeElasticsearchDomainsResponse -> [ElasticsearchDomainStatus]
domainStatusList} -> [ElasticsearchDomainStatus]
domainStatusList) (\s :: DescribeElasticsearchDomainsResponse
s@DescribeElasticsearchDomainsResponse' {} [ElasticsearchDomainStatus]
a -> DescribeElasticsearchDomainsResponse
s {$sel:domainStatusList:DescribeElasticsearchDomainsResponse' :: [ElasticsearchDomainStatus]
domainStatusList = [ElasticsearchDomainStatus]
a} :: DescribeElasticsearchDomainsResponse) 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
DescribeElasticsearchDomainsResponse
where
rnf :: DescribeElasticsearchDomainsResponse -> ()
rnf DescribeElasticsearchDomainsResponse' {Int
[ElasticsearchDomainStatus]
domainStatusList :: [ElasticsearchDomainStatus]
httpStatus :: Int
$sel:domainStatusList:DescribeElasticsearchDomainsResponse' :: DescribeElasticsearchDomainsResponse -> [ElasticsearchDomainStatus]
$sel:httpStatus:DescribeElasticsearchDomainsResponse' :: DescribeElasticsearchDomainsResponse -> 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]
domainStatusList