{-# 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.UpdatePartnerStatus
(
UpdatePartnerStatus (..),
newUpdatePartnerStatus,
updatePartnerStatus_statusMessage,
updatePartnerStatus_accountId,
updatePartnerStatus_clusterIdentifier,
updatePartnerStatus_databaseName,
updatePartnerStatus_partnerName,
updatePartnerStatus_status,
PartnerIntegrationOutputMessage (..),
newPartnerIntegrationOutputMessage,
partnerIntegrationOutputMessage_databaseName,
partnerIntegrationOutputMessage_partnerName,
)
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 UpdatePartnerStatus = UpdatePartnerStatus'
{
UpdatePartnerStatus -> Maybe Text
statusMessage :: Prelude.Maybe Prelude.Text,
UpdatePartnerStatus -> Text
accountId :: Prelude.Text,
UpdatePartnerStatus -> Text
clusterIdentifier :: Prelude.Text,
UpdatePartnerStatus -> Text
databaseName :: Prelude.Text,
UpdatePartnerStatus -> Text
partnerName :: Prelude.Text,
UpdatePartnerStatus -> PartnerIntegrationStatus
status :: PartnerIntegrationStatus
}
deriving (UpdatePartnerStatus -> UpdatePartnerStatus -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdatePartnerStatus -> UpdatePartnerStatus -> Bool
$c/= :: UpdatePartnerStatus -> UpdatePartnerStatus -> Bool
== :: UpdatePartnerStatus -> UpdatePartnerStatus -> Bool
$c== :: UpdatePartnerStatus -> UpdatePartnerStatus -> Bool
Prelude.Eq, ReadPrec [UpdatePartnerStatus]
ReadPrec UpdatePartnerStatus
Int -> ReadS UpdatePartnerStatus
ReadS [UpdatePartnerStatus]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdatePartnerStatus]
$creadListPrec :: ReadPrec [UpdatePartnerStatus]
readPrec :: ReadPrec UpdatePartnerStatus
$creadPrec :: ReadPrec UpdatePartnerStatus
readList :: ReadS [UpdatePartnerStatus]
$creadList :: ReadS [UpdatePartnerStatus]
readsPrec :: Int -> ReadS UpdatePartnerStatus
$creadsPrec :: Int -> ReadS UpdatePartnerStatus
Prelude.Read, Int -> UpdatePartnerStatus -> ShowS
[UpdatePartnerStatus] -> ShowS
UpdatePartnerStatus -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdatePartnerStatus] -> ShowS
$cshowList :: [UpdatePartnerStatus] -> ShowS
show :: UpdatePartnerStatus -> String
$cshow :: UpdatePartnerStatus -> String
showsPrec :: Int -> UpdatePartnerStatus -> ShowS
$cshowsPrec :: Int -> UpdatePartnerStatus -> ShowS
Prelude.Show, forall x. Rep UpdatePartnerStatus x -> UpdatePartnerStatus
forall x. UpdatePartnerStatus -> Rep UpdatePartnerStatus x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep UpdatePartnerStatus x -> UpdatePartnerStatus
$cfrom :: forall x. UpdatePartnerStatus -> Rep UpdatePartnerStatus x
Prelude.Generic)
newUpdatePartnerStatus ::
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
PartnerIntegrationStatus ->
UpdatePartnerStatus
newUpdatePartnerStatus :: Text
-> Text
-> Text
-> Text
-> PartnerIntegrationStatus
-> UpdatePartnerStatus
newUpdatePartnerStatus
Text
pAccountId_
Text
pClusterIdentifier_
Text
pDatabaseName_
Text
pPartnerName_
PartnerIntegrationStatus
pStatus_ =
UpdatePartnerStatus'
{ $sel:statusMessage:UpdatePartnerStatus' :: Maybe Text
statusMessage =
forall a. Maybe a
Prelude.Nothing,
$sel:accountId:UpdatePartnerStatus' :: Text
accountId = Text
pAccountId_,
$sel:clusterIdentifier:UpdatePartnerStatus' :: Text
clusterIdentifier = Text
pClusterIdentifier_,
$sel:databaseName:UpdatePartnerStatus' :: Text
databaseName = Text
pDatabaseName_,
$sel:partnerName:UpdatePartnerStatus' :: Text
partnerName = Text
pPartnerName_,
$sel:status:UpdatePartnerStatus' :: PartnerIntegrationStatus
status = PartnerIntegrationStatus
pStatus_
}
updatePartnerStatus_statusMessage :: Lens.Lens' UpdatePartnerStatus (Prelude.Maybe Prelude.Text)
updatePartnerStatus_statusMessage :: Lens' UpdatePartnerStatus (Maybe Text)
updatePartnerStatus_statusMessage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdatePartnerStatus' {Maybe Text
statusMessage :: Maybe Text
$sel:statusMessage:UpdatePartnerStatus' :: UpdatePartnerStatus -> Maybe Text
statusMessage} -> Maybe Text
statusMessage) (\s :: UpdatePartnerStatus
s@UpdatePartnerStatus' {} Maybe Text
a -> UpdatePartnerStatus
s {$sel:statusMessage:UpdatePartnerStatus' :: Maybe Text
statusMessage = Maybe Text
a} :: UpdatePartnerStatus)
updatePartnerStatus_accountId :: Lens.Lens' UpdatePartnerStatus Prelude.Text
updatePartnerStatus_accountId :: Lens' UpdatePartnerStatus Text
updatePartnerStatus_accountId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdatePartnerStatus' {Text
accountId :: Text
$sel:accountId:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
accountId} -> Text
accountId) (\s :: UpdatePartnerStatus
s@UpdatePartnerStatus' {} Text
a -> UpdatePartnerStatus
s {$sel:accountId:UpdatePartnerStatus' :: Text
accountId = Text
a} :: UpdatePartnerStatus)
updatePartnerStatus_clusterIdentifier :: Lens.Lens' UpdatePartnerStatus Prelude.Text
updatePartnerStatus_clusterIdentifier :: Lens' UpdatePartnerStatus Text
updatePartnerStatus_clusterIdentifier = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdatePartnerStatus' {Text
clusterIdentifier :: Text
$sel:clusterIdentifier:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
clusterIdentifier} -> Text
clusterIdentifier) (\s :: UpdatePartnerStatus
s@UpdatePartnerStatus' {} Text
a -> UpdatePartnerStatus
s {$sel:clusterIdentifier:UpdatePartnerStatus' :: Text
clusterIdentifier = Text
a} :: UpdatePartnerStatus)
updatePartnerStatus_databaseName :: Lens.Lens' UpdatePartnerStatus Prelude.Text
updatePartnerStatus_databaseName :: Lens' UpdatePartnerStatus Text
updatePartnerStatus_databaseName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdatePartnerStatus' {Text
databaseName :: Text
$sel:databaseName:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
databaseName} -> Text
databaseName) (\s :: UpdatePartnerStatus
s@UpdatePartnerStatus' {} Text
a -> UpdatePartnerStatus
s {$sel:databaseName:UpdatePartnerStatus' :: Text
databaseName = Text
a} :: UpdatePartnerStatus)
updatePartnerStatus_partnerName :: Lens.Lens' UpdatePartnerStatus Prelude.Text
updatePartnerStatus_partnerName :: Lens' UpdatePartnerStatus Text
updatePartnerStatus_partnerName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdatePartnerStatus' {Text
partnerName :: Text
$sel:partnerName:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
partnerName} -> Text
partnerName) (\s :: UpdatePartnerStatus
s@UpdatePartnerStatus' {} Text
a -> UpdatePartnerStatus
s {$sel:partnerName:UpdatePartnerStatus' :: Text
partnerName = Text
a} :: UpdatePartnerStatus)
updatePartnerStatus_status :: Lens.Lens' UpdatePartnerStatus PartnerIntegrationStatus
updatePartnerStatus_status :: Lens' UpdatePartnerStatus PartnerIntegrationStatus
updatePartnerStatus_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdatePartnerStatus' {PartnerIntegrationStatus
status :: PartnerIntegrationStatus
$sel:status:UpdatePartnerStatus' :: UpdatePartnerStatus -> PartnerIntegrationStatus
status} -> PartnerIntegrationStatus
status) (\s :: UpdatePartnerStatus
s@UpdatePartnerStatus' {} PartnerIntegrationStatus
a -> UpdatePartnerStatus
s {$sel:status:UpdatePartnerStatus' :: PartnerIntegrationStatus
status = PartnerIntegrationStatus
a} :: UpdatePartnerStatus)
instance Core.AWSRequest UpdatePartnerStatus where
type
AWSResponse UpdatePartnerStatus =
PartnerIntegrationOutputMessage
request :: (Service -> Service)
-> UpdatePartnerStatus -> Request UpdatePartnerStatus
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 UpdatePartnerStatus
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse UpdatePartnerStatus)))
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
"UpdatePartnerStatusResult"
(\Int
s ResponseHeaders
h [Node]
x -> forall a. FromXML a => [Node] -> Either String a
Data.parseXML [Node]
x)
instance Prelude.Hashable UpdatePartnerStatus where
hashWithSalt :: Int -> UpdatePartnerStatus -> Int
hashWithSalt Int
_salt UpdatePartnerStatus' {Maybe Text
Text
PartnerIntegrationStatus
status :: PartnerIntegrationStatus
partnerName :: Text
databaseName :: Text
clusterIdentifier :: Text
accountId :: Text
statusMessage :: Maybe Text
$sel:status:UpdatePartnerStatus' :: UpdatePartnerStatus -> PartnerIntegrationStatus
$sel:partnerName:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
$sel:databaseName:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
$sel:clusterIdentifier:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
$sel:accountId:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
$sel:statusMessage:UpdatePartnerStatus' :: UpdatePartnerStatus -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
statusMessage
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
accountId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
clusterIdentifier
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
databaseName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
partnerName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` PartnerIntegrationStatus
status
instance Prelude.NFData UpdatePartnerStatus where
rnf :: UpdatePartnerStatus -> ()
rnf UpdatePartnerStatus' {Maybe Text
Text
PartnerIntegrationStatus
status :: PartnerIntegrationStatus
partnerName :: Text
databaseName :: Text
clusterIdentifier :: Text
accountId :: Text
statusMessage :: Maybe Text
$sel:status:UpdatePartnerStatus' :: UpdatePartnerStatus -> PartnerIntegrationStatus
$sel:partnerName:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
$sel:databaseName:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
$sel:clusterIdentifier:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
$sel:accountId:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
$sel:statusMessage:UpdatePartnerStatus' :: UpdatePartnerStatus -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
statusMessage
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
accountId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
clusterIdentifier
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
databaseName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
partnerName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf PartnerIntegrationStatus
status
instance Data.ToHeaders UpdatePartnerStatus where
toHeaders :: UpdatePartnerStatus -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath UpdatePartnerStatus where
toPath :: UpdatePartnerStatus -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery UpdatePartnerStatus where
toQuery :: UpdatePartnerStatus -> QueryString
toQuery UpdatePartnerStatus' {Maybe Text
Text
PartnerIntegrationStatus
status :: PartnerIntegrationStatus
partnerName :: Text
databaseName :: Text
clusterIdentifier :: Text
accountId :: Text
statusMessage :: Maybe Text
$sel:status:UpdatePartnerStatus' :: UpdatePartnerStatus -> PartnerIntegrationStatus
$sel:partnerName:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
$sel:databaseName:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
$sel:clusterIdentifier:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
$sel:accountId:UpdatePartnerStatus' :: UpdatePartnerStatus -> Text
$sel:statusMessage:UpdatePartnerStatus' :: UpdatePartnerStatus -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"UpdatePartnerStatus" :: Prelude.ByteString),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2012-12-01" :: Prelude.ByteString),
ByteString
"StatusMessage" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
statusMessage,
ByteString
"AccountId" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
accountId,
ByteString
"ClusterIdentifier" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
clusterIdentifier,
ByteString
"DatabaseName" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
databaseName,
ByteString
"PartnerName" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
partnerName,
ByteString
"Status" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: PartnerIntegrationStatus
status
]