{-# 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.DescribeResize
(
DescribeResize (..),
newDescribeResize,
describeResize_clusterIdentifier,
ResizeProgressMessage (..),
newResizeProgressMessage,
resizeProgressMessage_avgResizeRateInMegaBytesPerSecond,
resizeProgressMessage_dataTransferProgressPercent,
resizeProgressMessage_elapsedTimeInSeconds,
resizeProgressMessage_estimatedTimeToCompletionInSeconds,
resizeProgressMessage_importTablesCompleted,
resizeProgressMessage_importTablesInProgress,
resizeProgressMessage_importTablesNotStarted,
resizeProgressMessage_message,
resizeProgressMessage_progressInMegaBytes,
resizeProgressMessage_resizeType,
resizeProgressMessage_status,
resizeProgressMessage_targetClusterType,
resizeProgressMessage_targetEncryptionType,
resizeProgressMessage_targetNodeType,
resizeProgressMessage_targetNumberOfNodes,
resizeProgressMessage_totalResizeDataInMegaBytes,
)
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 DescribeResize = DescribeResize'
{
DescribeResize -> Text
clusterIdentifier :: Prelude.Text
}
deriving (DescribeResize -> DescribeResize -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeResize -> DescribeResize -> Bool
$c/= :: DescribeResize -> DescribeResize -> Bool
== :: DescribeResize -> DescribeResize -> Bool
$c== :: DescribeResize -> DescribeResize -> Bool
Prelude.Eq, ReadPrec [DescribeResize]
ReadPrec DescribeResize
Int -> ReadS DescribeResize
ReadS [DescribeResize]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeResize]
$creadListPrec :: ReadPrec [DescribeResize]
readPrec :: ReadPrec DescribeResize
$creadPrec :: ReadPrec DescribeResize
readList :: ReadS [DescribeResize]
$creadList :: ReadS [DescribeResize]
readsPrec :: Int -> ReadS DescribeResize
$creadsPrec :: Int -> ReadS DescribeResize
Prelude.Read, Int -> DescribeResize -> ShowS
[DescribeResize] -> ShowS
DescribeResize -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeResize] -> ShowS
$cshowList :: [DescribeResize] -> ShowS
show :: DescribeResize -> String
$cshow :: DescribeResize -> String
showsPrec :: Int -> DescribeResize -> ShowS
$cshowsPrec :: Int -> DescribeResize -> ShowS
Prelude.Show, forall x. Rep DescribeResize x -> DescribeResize
forall x. DescribeResize -> Rep DescribeResize x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribeResize x -> DescribeResize
$cfrom :: forall x. DescribeResize -> Rep DescribeResize x
Prelude.Generic)
newDescribeResize ::
Prelude.Text ->
DescribeResize
newDescribeResize :: Text -> DescribeResize
newDescribeResize Text
pClusterIdentifier_ =
DescribeResize'
{ $sel:clusterIdentifier:DescribeResize' :: Text
clusterIdentifier =
Text
pClusterIdentifier_
}
describeResize_clusterIdentifier :: Lens.Lens' DescribeResize Prelude.Text
describeResize_clusterIdentifier :: Lens' DescribeResize Text
describeResize_clusterIdentifier = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeResize' {Text
clusterIdentifier :: Text
$sel:clusterIdentifier:DescribeResize' :: DescribeResize -> Text
clusterIdentifier} -> Text
clusterIdentifier) (\s :: DescribeResize
s@DescribeResize' {} Text
a -> DescribeResize
s {$sel:clusterIdentifier:DescribeResize' :: Text
clusterIdentifier = Text
a} :: DescribeResize)
instance Core.AWSRequest DescribeResize where
type
AWSResponse DescribeResize =
ResizeProgressMessage
request :: (Service -> Service) -> DescribeResize -> Request DescribeResize
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 DescribeResize
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse DescribeResize)))
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
"DescribeResizeResult"
(\Int
s ResponseHeaders
h [Node]
x -> forall a. FromXML a => [Node] -> Either String a
Data.parseXML [Node]
x)
instance Prelude.Hashable DescribeResize where
hashWithSalt :: Int -> DescribeResize -> Int
hashWithSalt Int
_salt DescribeResize' {Text
clusterIdentifier :: Text
$sel:clusterIdentifier:DescribeResize' :: DescribeResize -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
clusterIdentifier
instance Prelude.NFData DescribeResize where
rnf :: DescribeResize -> ()
rnf DescribeResize' {Text
clusterIdentifier :: Text
$sel:clusterIdentifier:DescribeResize' :: DescribeResize -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
clusterIdentifier
instance Data.ToHeaders DescribeResize where
toHeaders :: DescribeResize -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath DescribeResize where
toPath :: DescribeResize -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DescribeResize where
toQuery :: DescribeResize -> QueryString
toQuery DescribeResize' {Text
clusterIdentifier :: Text
$sel:clusterIdentifier:DescribeResize' :: DescribeResize -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"DescribeResize" :: Prelude.ByteString),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2012-12-01" :: Prelude.ByteString),
ByteString
"ClusterIdentifier" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
clusterIdentifier
]