{-# 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.DescribeScalingParameters
(
DescribeScalingParameters (..),
newDescribeScalingParameters,
describeScalingParameters_domainName,
DescribeScalingParametersResponse (..),
newDescribeScalingParametersResponse,
describeScalingParametersResponse_httpStatus,
describeScalingParametersResponse_scalingParameters,
)
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 DescribeScalingParameters = DescribeScalingParameters'
{ DescribeScalingParameters -> Text
domainName :: Prelude.Text
}
deriving (DescribeScalingParameters -> DescribeScalingParameters -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeScalingParameters -> DescribeScalingParameters -> Bool
$c/= :: DescribeScalingParameters -> DescribeScalingParameters -> Bool
== :: DescribeScalingParameters -> DescribeScalingParameters -> Bool
$c== :: DescribeScalingParameters -> DescribeScalingParameters -> Bool
Prelude.Eq, ReadPrec [DescribeScalingParameters]
ReadPrec DescribeScalingParameters
Int -> ReadS DescribeScalingParameters
ReadS [DescribeScalingParameters]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeScalingParameters]
$creadListPrec :: ReadPrec [DescribeScalingParameters]
readPrec :: ReadPrec DescribeScalingParameters
$creadPrec :: ReadPrec DescribeScalingParameters
readList :: ReadS [DescribeScalingParameters]
$creadList :: ReadS [DescribeScalingParameters]
readsPrec :: Int -> ReadS DescribeScalingParameters
$creadsPrec :: Int -> ReadS DescribeScalingParameters
Prelude.Read, Int -> DescribeScalingParameters -> ShowS
[DescribeScalingParameters] -> ShowS
DescribeScalingParameters -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeScalingParameters] -> ShowS
$cshowList :: [DescribeScalingParameters] -> ShowS
show :: DescribeScalingParameters -> String
$cshow :: DescribeScalingParameters -> String
showsPrec :: Int -> DescribeScalingParameters -> ShowS
$cshowsPrec :: Int -> DescribeScalingParameters -> ShowS
Prelude.Show, forall x.
Rep DescribeScalingParameters x -> DescribeScalingParameters
forall x.
DescribeScalingParameters -> Rep DescribeScalingParameters x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeScalingParameters x -> DescribeScalingParameters
$cfrom :: forall x.
DescribeScalingParameters -> Rep DescribeScalingParameters x
Prelude.Generic)
newDescribeScalingParameters ::
Prelude.Text ->
DescribeScalingParameters
newDescribeScalingParameters :: Text -> DescribeScalingParameters
newDescribeScalingParameters Text
pDomainName_ =
DescribeScalingParameters'
{ $sel:domainName:DescribeScalingParameters' :: Text
domainName =
Text
pDomainName_
}
describeScalingParameters_domainName :: Lens.Lens' DescribeScalingParameters Prelude.Text
describeScalingParameters_domainName :: Lens' DescribeScalingParameters Text
describeScalingParameters_domainName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeScalingParameters' {Text
domainName :: Text
$sel:domainName:DescribeScalingParameters' :: DescribeScalingParameters -> Text
domainName} -> Text
domainName) (\s :: DescribeScalingParameters
s@DescribeScalingParameters' {} Text
a -> DescribeScalingParameters
s {$sel:domainName:DescribeScalingParameters' :: Text
domainName = Text
a} :: DescribeScalingParameters)
instance Core.AWSRequest DescribeScalingParameters where
type
AWSResponse DescribeScalingParameters =
DescribeScalingParametersResponse
request :: (Service -> Service)
-> DescribeScalingParameters -> Request DescribeScalingParameters
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 DescribeScalingParameters
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeScalingParameters)))
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
"DescribeScalingParametersResult"
( \Int
s ResponseHeaders
h [Node]
x ->
Int -> ScalingParametersStatus -> DescribeScalingParametersResponse
DescribeScalingParametersResponse'
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 a
Data..@ Text
"ScalingParameters")
)
instance Prelude.Hashable DescribeScalingParameters where
hashWithSalt :: Int -> DescribeScalingParameters -> Int
hashWithSalt Int
_salt DescribeScalingParameters' {Text
domainName :: Text
$sel:domainName:DescribeScalingParameters' :: DescribeScalingParameters -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
domainName
instance Prelude.NFData DescribeScalingParameters where
rnf :: DescribeScalingParameters -> ()
rnf DescribeScalingParameters' {Text
domainName :: Text
$sel:domainName:DescribeScalingParameters' :: DescribeScalingParameters -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
domainName
instance Data.ToHeaders DescribeScalingParameters where
toHeaders :: DescribeScalingParameters -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath DescribeScalingParameters where
toPath :: DescribeScalingParameters -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DescribeScalingParameters where
toQuery :: DescribeScalingParameters -> QueryString
toQuery DescribeScalingParameters' {Text
domainName :: Text
$sel:domainName:DescribeScalingParameters' :: DescribeScalingParameters -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"DescribeScalingParameters" :: Prelude.ByteString),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2013-01-01" :: Prelude.ByteString),
ByteString
"DomainName" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
domainName
]
data DescribeScalingParametersResponse = DescribeScalingParametersResponse'
{
DescribeScalingParametersResponse -> Int
httpStatus :: Prelude.Int,
DescribeScalingParametersResponse -> ScalingParametersStatus
scalingParameters :: ScalingParametersStatus
}
deriving (DescribeScalingParametersResponse
-> DescribeScalingParametersResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeScalingParametersResponse
-> DescribeScalingParametersResponse -> Bool
$c/= :: DescribeScalingParametersResponse
-> DescribeScalingParametersResponse -> Bool
== :: DescribeScalingParametersResponse
-> DescribeScalingParametersResponse -> Bool
$c== :: DescribeScalingParametersResponse
-> DescribeScalingParametersResponse -> Bool
Prelude.Eq, ReadPrec [DescribeScalingParametersResponse]
ReadPrec DescribeScalingParametersResponse
Int -> ReadS DescribeScalingParametersResponse
ReadS [DescribeScalingParametersResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeScalingParametersResponse]
$creadListPrec :: ReadPrec [DescribeScalingParametersResponse]
readPrec :: ReadPrec DescribeScalingParametersResponse
$creadPrec :: ReadPrec DescribeScalingParametersResponse
readList :: ReadS [DescribeScalingParametersResponse]
$creadList :: ReadS [DescribeScalingParametersResponse]
readsPrec :: Int -> ReadS DescribeScalingParametersResponse
$creadsPrec :: Int -> ReadS DescribeScalingParametersResponse
Prelude.Read, Int -> DescribeScalingParametersResponse -> ShowS
[DescribeScalingParametersResponse] -> ShowS
DescribeScalingParametersResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeScalingParametersResponse] -> ShowS
$cshowList :: [DescribeScalingParametersResponse] -> ShowS
show :: DescribeScalingParametersResponse -> String
$cshow :: DescribeScalingParametersResponse -> String
showsPrec :: Int -> DescribeScalingParametersResponse -> ShowS
$cshowsPrec :: Int -> DescribeScalingParametersResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeScalingParametersResponse x
-> DescribeScalingParametersResponse
forall x.
DescribeScalingParametersResponse
-> Rep DescribeScalingParametersResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeScalingParametersResponse x
-> DescribeScalingParametersResponse
$cfrom :: forall x.
DescribeScalingParametersResponse
-> Rep DescribeScalingParametersResponse x
Prelude.Generic)
newDescribeScalingParametersResponse ::
Prelude.Int ->
ScalingParametersStatus ->
DescribeScalingParametersResponse
newDescribeScalingParametersResponse :: Int -> ScalingParametersStatus -> DescribeScalingParametersResponse
newDescribeScalingParametersResponse
Int
pHttpStatus_
ScalingParametersStatus
pScalingParameters_ =
DescribeScalingParametersResponse'
{ $sel:httpStatus:DescribeScalingParametersResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:scalingParameters:DescribeScalingParametersResponse' :: ScalingParametersStatus
scalingParameters = ScalingParametersStatus
pScalingParameters_
}
describeScalingParametersResponse_httpStatus :: Lens.Lens' DescribeScalingParametersResponse Prelude.Int
describeScalingParametersResponse_httpStatus :: Lens' DescribeScalingParametersResponse Int
describeScalingParametersResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeScalingParametersResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeScalingParametersResponse' :: DescribeScalingParametersResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeScalingParametersResponse
s@DescribeScalingParametersResponse' {} Int
a -> DescribeScalingParametersResponse
s {$sel:httpStatus:DescribeScalingParametersResponse' :: Int
httpStatus = Int
a} :: DescribeScalingParametersResponse)
describeScalingParametersResponse_scalingParameters :: Lens.Lens' DescribeScalingParametersResponse ScalingParametersStatus
describeScalingParametersResponse_scalingParameters :: Lens' DescribeScalingParametersResponse ScalingParametersStatus
describeScalingParametersResponse_scalingParameters = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeScalingParametersResponse' {ScalingParametersStatus
scalingParameters :: ScalingParametersStatus
$sel:scalingParameters:DescribeScalingParametersResponse' :: DescribeScalingParametersResponse -> ScalingParametersStatus
scalingParameters} -> ScalingParametersStatus
scalingParameters) (\s :: DescribeScalingParametersResponse
s@DescribeScalingParametersResponse' {} ScalingParametersStatus
a -> DescribeScalingParametersResponse
s {$sel:scalingParameters:DescribeScalingParametersResponse' :: ScalingParametersStatus
scalingParameters = ScalingParametersStatus
a} :: DescribeScalingParametersResponse)
instance
Prelude.NFData
DescribeScalingParametersResponse
where
rnf :: DescribeScalingParametersResponse -> ()
rnf DescribeScalingParametersResponse' {Int
ScalingParametersStatus
scalingParameters :: ScalingParametersStatus
httpStatus :: Int
$sel:scalingParameters:DescribeScalingParametersResponse' :: DescribeScalingParametersResponse -> ScalingParametersStatus
$sel:httpStatus:DescribeScalingParametersResponse' :: DescribeScalingParametersResponse -> 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 ScalingParametersStatus
scalingParameters