{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Network.AWS.Redshift.EnableLogging
(
enableLogging
, EnableLogging
, elS3KeyPrefix
, elClusterIdentifier
, elBucketName
, loggingStatus
, LoggingStatus
, lsLastFailureTime
, lsLastSuccessfulDeliveryTime
, lsS3KeyPrefix
, lsBucketName
, lsLoggingEnabled
, lsLastFailureMessage
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Redshift.Types
import Network.AWS.Redshift.Types.Product
import Network.AWS.Request
import Network.AWS.Response
data EnableLogging = EnableLogging'
{ _elS3KeyPrefix :: !(Maybe Text)
, _elClusterIdentifier :: !Text
, _elBucketName :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
enableLogging
:: Text
-> Text
-> EnableLogging
enableLogging pClusterIdentifier_ pBucketName_ =
EnableLogging'
{ _elS3KeyPrefix = Nothing
, _elClusterIdentifier = pClusterIdentifier_
, _elBucketName = pBucketName_
}
elS3KeyPrefix :: Lens' EnableLogging (Maybe Text)
elS3KeyPrefix = lens _elS3KeyPrefix (\ s a -> s{_elS3KeyPrefix = a})
elClusterIdentifier :: Lens' EnableLogging Text
elClusterIdentifier = lens _elClusterIdentifier (\ s a -> s{_elClusterIdentifier = a})
elBucketName :: Lens' EnableLogging Text
elBucketName = lens _elBucketName (\ s a -> s{_elBucketName = a})
instance AWSRequest EnableLogging where
type Rs EnableLogging = LoggingStatus
request = postQuery redshift
response
= receiveXMLWrapper "EnableLoggingResult"
(\ s h x -> parseXML x)
instance Hashable EnableLogging where
instance NFData EnableLogging where
instance ToHeaders EnableLogging where
toHeaders = const mempty
instance ToPath EnableLogging where
toPath = const "/"
instance ToQuery EnableLogging where
toQuery EnableLogging'{..}
= mconcat
["Action" =: ("EnableLogging" :: ByteString),
"Version" =: ("2012-12-01" :: ByteString),
"S3KeyPrefix" =: _elS3KeyPrefix,
"ClusterIdentifier" =: _elClusterIdentifier,
"BucketName" =: _elBucketName]