{-# 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.Redshift.DescribeDefaultClusterParameters
(
DescribeDefaultClusterParameters (..),
newDescribeDefaultClusterParameters,
describeDefaultClusterParameters_marker,
describeDefaultClusterParameters_maxRecords,
describeDefaultClusterParameters_parameterGroupFamily,
DescribeDefaultClusterParametersResponse (..),
newDescribeDefaultClusterParametersResponse,
describeDefaultClusterParametersResponse_httpStatus,
describeDefaultClusterParametersResponse_defaultClusterParameters,
)
where
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 Amazonka.Redshift.Types
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DescribeDefaultClusterParameters = DescribeDefaultClusterParameters'
{
DescribeDefaultClusterParameters -> Maybe Text
marker :: Prelude.Maybe Prelude.Text,
DescribeDefaultClusterParameters -> Maybe Int
maxRecords :: Prelude.Maybe Prelude.Int,
DescribeDefaultClusterParameters -> Text
parameterGroupFamily :: Prelude.Text
}
deriving (DescribeDefaultClusterParameters
-> DescribeDefaultClusterParameters -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeDefaultClusterParameters
-> DescribeDefaultClusterParameters -> Bool
$c/= :: DescribeDefaultClusterParameters
-> DescribeDefaultClusterParameters -> Bool
== :: DescribeDefaultClusterParameters
-> DescribeDefaultClusterParameters -> Bool
$c== :: DescribeDefaultClusterParameters
-> DescribeDefaultClusterParameters -> Bool
Prelude.Eq, ReadPrec [DescribeDefaultClusterParameters]
ReadPrec DescribeDefaultClusterParameters
Int -> ReadS DescribeDefaultClusterParameters
ReadS [DescribeDefaultClusterParameters]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeDefaultClusterParameters]
$creadListPrec :: ReadPrec [DescribeDefaultClusterParameters]
readPrec :: ReadPrec DescribeDefaultClusterParameters
$creadPrec :: ReadPrec DescribeDefaultClusterParameters
readList :: ReadS [DescribeDefaultClusterParameters]
$creadList :: ReadS [DescribeDefaultClusterParameters]
readsPrec :: Int -> ReadS DescribeDefaultClusterParameters
$creadsPrec :: Int -> ReadS DescribeDefaultClusterParameters
Prelude.Read, Int -> DescribeDefaultClusterParameters -> ShowS
[DescribeDefaultClusterParameters] -> ShowS
DescribeDefaultClusterParameters -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeDefaultClusterParameters] -> ShowS
$cshowList :: [DescribeDefaultClusterParameters] -> ShowS
show :: DescribeDefaultClusterParameters -> String
$cshow :: DescribeDefaultClusterParameters -> String
showsPrec :: Int -> DescribeDefaultClusterParameters -> ShowS
$cshowsPrec :: Int -> DescribeDefaultClusterParameters -> ShowS
Prelude.Show, forall x.
Rep DescribeDefaultClusterParameters x
-> DescribeDefaultClusterParameters
forall x.
DescribeDefaultClusterParameters
-> Rep DescribeDefaultClusterParameters x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeDefaultClusterParameters x
-> DescribeDefaultClusterParameters
$cfrom :: forall x.
DescribeDefaultClusterParameters
-> Rep DescribeDefaultClusterParameters x
Prelude.Generic)
newDescribeDefaultClusterParameters ::
Prelude.Text ->
DescribeDefaultClusterParameters
newDescribeDefaultClusterParameters :: Text -> DescribeDefaultClusterParameters
newDescribeDefaultClusterParameters
Text
pParameterGroupFamily_ =
DescribeDefaultClusterParameters'
{ $sel:marker:DescribeDefaultClusterParameters' :: Maybe Text
marker =
forall a. Maybe a
Prelude.Nothing,
$sel:maxRecords:DescribeDefaultClusterParameters' :: Maybe Int
maxRecords = forall a. Maybe a
Prelude.Nothing,
$sel:parameterGroupFamily:DescribeDefaultClusterParameters' :: Text
parameterGroupFamily =
Text
pParameterGroupFamily_
}
describeDefaultClusterParameters_marker :: Lens.Lens' DescribeDefaultClusterParameters (Prelude.Maybe Prelude.Text)
describeDefaultClusterParameters_marker :: Lens' DescribeDefaultClusterParameters (Maybe Text)
describeDefaultClusterParameters_marker = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeDefaultClusterParameters' {Maybe Text
marker :: Maybe Text
$sel:marker:DescribeDefaultClusterParameters' :: DescribeDefaultClusterParameters -> Maybe Text
marker} -> Maybe Text
marker) (\s :: DescribeDefaultClusterParameters
s@DescribeDefaultClusterParameters' {} Maybe Text
a -> DescribeDefaultClusterParameters
s {$sel:marker:DescribeDefaultClusterParameters' :: Maybe Text
marker = Maybe Text
a} :: DescribeDefaultClusterParameters)
describeDefaultClusterParameters_maxRecords :: Lens.Lens' DescribeDefaultClusterParameters (Prelude.Maybe Prelude.Int)
describeDefaultClusterParameters_maxRecords :: Lens' DescribeDefaultClusterParameters (Maybe Int)
describeDefaultClusterParameters_maxRecords = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeDefaultClusterParameters' {Maybe Int
maxRecords :: Maybe Int
$sel:maxRecords:DescribeDefaultClusterParameters' :: DescribeDefaultClusterParameters -> Maybe Int
maxRecords} -> Maybe Int
maxRecords) (\s :: DescribeDefaultClusterParameters
s@DescribeDefaultClusterParameters' {} Maybe Int
a -> DescribeDefaultClusterParameters
s {$sel:maxRecords:DescribeDefaultClusterParameters' :: Maybe Int
maxRecords = Maybe Int
a} :: DescribeDefaultClusterParameters)
describeDefaultClusterParameters_parameterGroupFamily :: Lens.Lens' DescribeDefaultClusterParameters Prelude.Text
describeDefaultClusterParameters_parameterGroupFamily :: Lens' DescribeDefaultClusterParameters Text
describeDefaultClusterParameters_parameterGroupFamily = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeDefaultClusterParameters' {Text
parameterGroupFamily :: Text
$sel:parameterGroupFamily:DescribeDefaultClusterParameters' :: DescribeDefaultClusterParameters -> Text
parameterGroupFamily} -> Text
parameterGroupFamily) (\s :: DescribeDefaultClusterParameters
s@DescribeDefaultClusterParameters' {} Text
a -> DescribeDefaultClusterParameters
s {$sel:parameterGroupFamily:DescribeDefaultClusterParameters' :: Text
parameterGroupFamily = Text
a} :: DescribeDefaultClusterParameters)
instance
Core.AWSPager
DescribeDefaultClusterParameters
where
page :: DescribeDefaultClusterParameters
-> AWSResponse DescribeDefaultClusterParameters
-> Maybe DescribeDefaultClusterParameters
page DescribeDefaultClusterParameters
rq AWSResponse DescribeDefaultClusterParameters
rs
| forall a. AWSTruncated a => a -> Bool
Core.stop
( AWSResponse DescribeDefaultClusterParameters
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens'
DescribeDefaultClusterParametersResponse DefaultClusterParameters
describeDefaultClusterParametersResponse_defaultClusterParameters
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Lens' DefaultClusterParameters (Maybe Text)
defaultClusterParameters_marker
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
) =
forall a. Maybe a
Prelude.Nothing
| forall a. AWSTruncated a => a -> Bool
Core.stop
( AWSResponse DescribeDefaultClusterParameters
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens'
DescribeDefaultClusterParametersResponse DefaultClusterParameters
describeDefaultClusterParametersResponse_defaultClusterParameters
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Lens' DefaultClusterParameters (Maybe [Parameter])
defaultClusterParameters_parameters
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
) =
forall a. Maybe a
Prelude.Nothing
| Bool
Prelude.otherwise =
forall a. a -> Maybe a
Prelude.Just
forall a b. (a -> b) -> a -> b
Prelude.$ DescribeDefaultClusterParameters
rq
forall a b. a -> (a -> b) -> b
Prelude.& Lens' DescribeDefaultClusterParameters (Maybe Text)
describeDefaultClusterParameters_marker
forall s t a b. ASetter s t a b -> b -> s -> t
Lens..~ AWSResponse DescribeDefaultClusterParameters
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens'
DescribeDefaultClusterParametersResponse DefaultClusterParameters
describeDefaultClusterParametersResponse_defaultClusterParameters
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. Lens' DefaultClusterParameters (Maybe Text)
defaultClusterParameters_marker
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
instance
Core.AWSRequest
DescribeDefaultClusterParameters
where
type
AWSResponse DescribeDefaultClusterParameters =
DescribeDefaultClusterParametersResponse
request :: (Service -> Service)
-> DescribeDefaultClusterParameters
-> Request DescribeDefaultClusterParameters
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 DescribeDefaultClusterParameters
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse (AWSResponse DescribeDefaultClusterParameters)))
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
"DescribeDefaultClusterParametersResult"
( \Int
s ResponseHeaders
h [Node]
x ->
Int
-> DefaultClusterParameters
-> DescribeDefaultClusterParametersResponse
DescribeDefaultClusterParametersResponse'
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
"DefaultClusterParameters")
)
instance
Prelude.Hashable
DescribeDefaultClusterParameters
where
hashWithSalt :: Int -> DescribeDefaultClusterParameters -> Int
hashWithSalt
Int
_salt
DescribeDefaultClusterParameters' {Maybe Int
Maybe Text
Text
parameterGroupFamily :: Text
maxRecords :: Maybe Int
marker :: Maybe Text
$sel:parameterGroupFamily:DescribeDefaultClusterParameters' :: DescribeDefaultClusterParameters -> Text
$sel:maxRecords:DescribeDefaultClusterParameters' :: DescribeDefaultClusterParameters -> Maybe Int
$sel:marker:DescribeDefaultClusterParameters' :: DescribeDefaultClusterParameters -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
marker
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
maxRecords
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
parameterGroupFamily
instance
Prelude.NFData
DescribeDefaultClusterParameters
where
rnf :: DescribeDefaultClusterParameters -> ()
rnf DescribeDefaultClusterParameters' {Maybe Int
Maybe Text
Text
parameterGroupFamily :: Text
maxRecords :: Maybe Int
marker :: Maybe Text
$sel:parameterGroupFamily:DescribeDefaultClusterParameters' :: DescribeDefaultClusterParameters -> Text
$sel:maxRecords:DescribeDefaultClusterParameters' :: DescribeDefaultClusterParameters -> Maybe Int
$sel:marker:DescribeDefaultClusterParameters' :: DescribeDefaultClusterParameters -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
marker
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
maxRecords
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
parameterGroupFamily
instance
Data.ToHeaders
DescribeDefaultClusterParameters
where
toHeaders :: DescribeDefaultClusterParameters -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath DescribeDefaultClusterParameters where
toPath :: DescribeDefaultClusterParameters -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance
Data.ToQuery
DescribeDefaultClusterParameters
where
toQuery :: DescribeDefaultClusterParameters -> QueryString
toQuery DescribeDefaultClusterParameters' {Maybe Int
Maybe Text
Text
parameterGroupFamily :: Text
maxRecords :: Maybe Int
marker :: Maybe Text
$sel:parameterGroupFamily:DescribeDefaultClusterParameters' :: DescribeDefaultClusterParameters -> Text
$sel:maxRecords:DescribeDefaultClusterParameters' :: DescribeDefaultClusterParameters -> Maybe Int
$sel:marker:DescribeDefaultClusterParameters' :: DescribeDefaultClusterParameters -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: ( ByteString
"DescribeDefaultClusterParameters" ::
Prelude.ByteString
),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2012-12-01" :: Prelude.ByteString),
ByteString
"Marker" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
marker,
ByteString
"MaxRecords" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Int
maxRecords,
ByteString
"ParameterGroupFamily" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
parameterGroupFamily
]
data DescribeDefaultClusterParametersResponse = DescribeDefaultClusterParametersResponse'
{
DescribeDefaultClusterParametersResponse -> Int
httpStatus :: Prelude.Int,
DescribeDefaultClusterParametersResponse
-> DefaultClusterParameters
defaultClusterParameters :: DefaultClusterParameters
}
deriving (DescribeDefaultClusterParametersResponse
-> DescribeDefaultClusterParametersResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeDefaultClusterParametersResponse
-> DescribeDefaultClusterParametersResponse -> Bool
$c/= :: DescribeDefaultClusterParametersResponse
-> DescribeDefaultClusterParametersResponse -> Bool
== :: DescribeDefaultClusterParametersResponse
-> DescribeDefaultClusterParametersResponse -> Bool
$c== :: DescribeDefaultClusterParametersResponse
-> DescribeDefaultClusterParametersResponse -> Bool
Prelude.Eq, ReadPrec [DescribeDefaultClusterParametersResponse]
ReadPrec DescribeDefaultClusterParametersResponse
Int -> ReadS DescribeDefaultClusterParametersResponse
ReadS [DescribeDefaultClusterParametersResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeDefaultClusterParametersResponse]
$creadListPrec :: ReadPrec [DescribeDefaultClusterParametersResponse]
readPrec :: ReadPrec DescribeDefaultClusterParametersResponse
$creadPrec :: ReadPrec DescribeDefaultClusterParametersResponse
readList :: ReadS [DescribeDefaultClusterParametersResponse]
$creadList :: ReadS [DescribeDefaultClusterParametersResponse]
readsPrec :: Int -> ReadS DescribeDefaultClusterParametersResponse
$creadsPrec :: Int -> ReadS DescribeDefaultClusterParametersResponse
Prelude.Read, Int -> DescribeDefaultClusterParametersResponse -> ShowS
[DescribeDefaultClusterParametersResponse] -> ShowS
DescribeDefaultClusterParametersResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeDefaultClusterParametersResponse] -> ShowS
$cshowList :: [DescribeDefaultClusterParametersResponse] -> ShowS
show :: DescribeDefaultClusterParametersResponse -> String
$cshow :: DescribeDefaultClusterParametersResponse -> String
showsPrec :: Int -> DescribeDefaultClusterParametersResponse -> ShowS
$cshowsPrec :: Int -> DescribeDefaultClusterParametersResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeDefaultClusterParametersResponse x
-> DescribeDefaultClusterParametersResponse
forall x.
DescribeDefaultClusterParametersResponse
-> Rep DescribeDefaultClusterParametersResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeDefaultClusterParametersResponse x
-> DescribeDefaultClusterParametersResponse
$cfrom :: forall x.
DescribeDefaultClusterParametersResponse
-> Rep DescribeDefaultClusterParametersResponse x
Prelude.Generic)
newDescribeDefaultClusterParametersResponse ::
Prelude.Int ->
DefaultClusterParameters ->
DescribeDefaultClusterParametersResponse
newDescribeDefaultClusterParametersResponse :: Int
-> DefaultClusterParameters
-> DescribeDefaultClusterParametersResponse
newDescribeDefaultClusterParametersResponse
Int
pHttpStatus_
DefaultClusterParameters
pDefaultClusterParameters_ =
DescribeDefaultClusterParametersResponse'
{ $sel:httpStatus:DescribeDefaultClusterParametersResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:defaultClusterParameters:DescribeDefaultClusterParametersResponse' :: DefaultClusterParameters
defaultClusterParameters =
DefaultClusterParameters
pDefaultClusterParameters_
}
describeDefaultClusterParametersResponse_httpStatus :: Lens.Lens' DescribeDefaultClusterParametersResponse Prelude.Int
describeDefaultClusterParametersResponse_httpStatus :: Lens' DescribeDefaultClusterParametersResponse Int
describeDefaultClusterParametersResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeDefaultClusterParametersResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeDefaultClusterParametersResponse' :: DescribeDefaultClusterParametersResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeDefaultClusterParametersResponse
s@DescribeDefaultClusterParametersResponse' {} Int
a -> DescribeDefaultClusterParametersResponse
s {$sel:httpStatus:DescribeDefaultClusterParametersResponse' :: Int
httpStatus = Int
a} :: DescribeDefaultClusterParametersResponse)
describeDefaultClusterParametersResponse_defaultClusterParameters :: Lens.Lens' DescribeDefaultClusterParametersResponse DefaultClusterParameters
describeDefaultClusterParametersResponse_defaultClusterParameters :: Lens'
DescribeDefaultClusterParametersResponse DefaultClusterParameters
describeDefaultClusterParametersResponse_defaultClusterParameters = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeDefaultClusterParametersResponse' {DefaultClusterParameters
defaultClusterParameters :: DefaultClusterParameters
$sel:defaultClusterParameters:DescribeDefaultClusterParametersResponse' :: DescribeDefaultClusterParametersResponse
-> DefaultClusterParameters
defaultClusterParameters} -> DefaultClusterParameters
defaultClusterParameters) (\s :: DescribeDefaultClusterParametersResponse
s@DescribeDefaultClusterParametersResponse' {} DefaultClusterParameters
a -> DescribeDefaultClusterParametersResponse
s {$sel:defaultClusterParameters:DescribeDefaultClusterParametersResponse' :: DefaultClusterParameters
defaultClusterParameters = DefaultClusterParameters
a} :: DescribeDefaultClusterParametersResponse)
instance
Prelude.NFData
DescribeDefaultClusterParametersResponse
where
rnf :: DescribeDefaultClusterParametersResponse -> ()
rnf DescribeDefaultClusterParametersResponse' {Int
DefaultClusterParameters
defaultClusterParameters :: DefaultClusterParameters
httpStatus :: Int
$sel:defaultClusterParameters:DescribeDefaultClusterParametersResponse' :: DescribeDefaultClusterParametersResponse
-> DefaultClusterParameters
$sel:httpStatus:DescribeDefaultClusterParametersResponse' :: DescribeDefaultClusterParametersResponse -> 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 DefaultClusterParameters
defaultClusterParameters