{-# 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.S3.PutBucketRequestPayment
(
PutBucketRequestPayment (..),
newPutBucketRequestPayment,
putBucketRequestPayment_checksumAlgorithm,
putBucketRequestPayment_contentMD5,
putBucketRequestPayment_expectedBucketOwner,
putBucketRequestPayment_bucket,
putBucketRequestPayment_requestPaymentConfiguration,
PutBucketRequestPaymentResponse (..),
newPutBucketRequestPaymentResponse,
)
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 qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
import Amazonka.S3.Types
data PutBucketRequestPayment = PutBucketRequestPayment'
{
PutBucketRequestPayment -> Maybe ChecksumAlgorithm
checksumAlgorithm :: Prelude.Maybe ChecksumAlgorithm,
PutBucketRequestPayment -> Maybe Text
contentMD5 :: Prelude.Maybe Prelude.Text,
PutBucketRequestPayment -> Maybe Text
expectedBucketOwner :: Prelude.Maybe Prelude.Text,
PutBucketRequestPayment -> BucketName
bucket :: BucketName,
PutBucketRequestPayment -> RequestPaymentConfiguration
requestPaymentConfiguration :: RequestPaymentConfiguration
}
deriving (PutBucketRequestPayment -> PutBucketRequestPayment -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PutBucketRequestPayment -> PutBucketRequestPayment -> Bool
$c/= :: PutBucketRequestPayment -> PutBucketRequestPayment -> Bool
== :: PutBucketRequestPayment -> PutBucketRequestPayment -> Bool
$c== :: PutBucketRequestPayment -> PutBucketRequestPayment -> Bool
Prelude.Eq, ReadPrec [PutBucketRequestPayment]
ReadPrec PutBucketRequestPayment
Int -> ReadS PutBucketRequestPayment
ReadS [PutBucketRequestPayment]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PutBucketRequestPayment]
$creadListPrec :: ReadPrec [PutBucketRequestPayment]
readPrec :: ReadPrec PutBucketRequestPayment
$creadPrec :: ReadPrec PutBucketRequestPayment
readList :: ReadS [PutBucketRequestPayment]
$creadList :: ReadS [PutBucketRequestPayment]
readsPrec :: Int -> ReadS PutBucketRequestPayment
$creadsPrec :: Int -> ReadS PutBucketRequestPayment
Prelude.Read, Int -> PutBucketRequestPayment -> ShowS
[PutBucketRequestPayment] -> ShowS
PutBucketRequestPayment -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PutBucketRequestPayment] -> ShowS
$cshowList :: [PutBucketRequestPayment] -> ShowS
show :: PutBucketRequestPayment -> String
$cshow :: PutBucketRequestPayment -> String
showsPrec :: Int -> PutBucketRequestPayment -> ShowS
$cshowsPrec :: Int -> PutBucketRequestPayment -> ShowS
Prelude.Show, forall x. Rep PutBucketRequestPayment x -> PutBucketRequestPayment
forall x. PutBucketRequestPayment -> Rep PutBucketRequestPayment x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep PutBucketRequestPayment x -> PutBucketRequestPayment
$cfrom :: forall x. PutBucketRequestPayment -> Rep PutBucketRequestPayment x
Prelude.Generic)
newPutBucketRequestPayment ::
BucketName ->
RequestPaymentConfiguration ->
PutBucketRequestPayment
newPutBucketRequestPayment :: BucketName
-> RequestPaymentConfiguration -> PutBucketRequestPayment
newPutBucketRequestPayment
BucketName
pBucket_
RequestPaymentConfiguration
pRequestPaymentConfiguration_ =
PutBucketRequestPayment'
{ $sel:checksumAlgorithm:PutBucketRequestPayment' :: Maybe ChecksumAlgorithm
checksumAlgorithm =
forall a. Maybe a
Prelude.Nothing,
$sel:contentMD5:PutBucketRequestPayment' :: Maybe Text
contentMD5 = forall a. Maybe a
Prelude.Nothing,
$sel:expectedBucketOwner:PutBucketRequestPayment' :: Maybe Text
expectedBucketOwner = forall a. Maybe a
Prelude.Nothing,
$sel:bucket:PutBucketRequestPayment' :: BucketName
bucket = BucketName
pBucket_,
$sel:requestPaymentConfiguration:PutBucketRequestPayment' :: RequestPaymentConfiguration
requestPaymentConfiguration =
RequestPaymentConfiguration
pRequestPaymentConfiguration_
}
putBucketRequestPayment_checksumAlgorithm :: Lens.Lens' PutBucketRequestPayment (Prelude.Maybe ChecksumAlgorithm)
putBucketRequestPayment_checksumAlgorithm :: Lens' PutBucketRequestPayment (Maybe ChecksumAlgorithm)
putBucketRequestPayment_checksumAlgorithm = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutBucketRequestPayment' {Maybe ChecksumAlgorithm
checksumAlgorithm :: Maybe ChecksumAlgorithm
$sel:checksumAlgorithm:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe ChecksumAlgorithm
checksumAlgorithm} -> Maybe ChecksumAlgorithm
checksumAlgorithm) (\s :: PutBucketRequestPayment
s@PutBucketRequestPayment' {} Maybe ChecksumAlgorithm
a -> PutBucketRequestPayment
s {$sel:checksumAlgorithm:PutBucketRequestPayment' :: Maybe ChecksumAlgorithm
checksumAlgorithm = Maybe ChecksumAlgorithm
a} :: PutBucketRequestPayment)
putBucketRequestPayment_contentMD5 :: Lens.Lens' PutBucketRequestPayment (Prelude.Maybe Prelude.Text)
putBucketRequestPayment_contentMD5 :: Lens' PutBucketRequestPayment (Maybe Text)
putBucketRequestPayment_contentMD5 = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutBucketRequestPayment' {Maybe Text
contentMD5 :: Maybe Text
$sel:contentMD5:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe Text
contentMD5} -> Maybe Text
contentMD5) (\s :: PutBucketRequestPayment
s@PutBucketRequestPayment' {} Maybe Text
a -> PutBucketRequestPayment
s {$sel:contentMD5:PutBucketRequestPayment' :: Maybe Text
contentMD5 = Maybe Text
a} :: PutBucketRequestPayment)
putBucketRequestPayment_expectedBucketOwner :: Lens.Lens' PutBucketRequestPayment (Prelude.Maybe Prelude.Text)
putBucketRequestPayment_expectedBucketOwner :: Lens' PutBucketRequestPayment (Maybe Text)
putBucketRequestPayment_expectedBucketOwner = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutBucketRequestPayment' {Maybe Text
expectedBucketOwner :: Maybe Text
$sel:expectedBucketOwner:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe Text
expectedBucketOwner} -> Maybe Text
expectedBucketOwner) (\s :: PutBucketRequestPayment
s@PutBucketRequestPayment' {} Maybe Text
a -> PutBucketRequestPayment
s {$sel:expectedBucketOwner:PutBucketRequestPayment' :: Maybe Text
expectedBucketOwner = Maybe Text
a} :: PutBucketRequestPayment)
putBucketRequestPayment_bucket :: Lens.Lens' PutBucketRequestPayment BucketName
putBucketRequestPayment_bucket :: Lens' PutBucketRequestPayment BucketName
putBucketRequestPayment_bucket = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutBucketRequestPayment' {BucketName
bucket :: BucketName
$sel:bucket:PutBucketRequestPayment' :: PutBucketRequestPayment -> BucketName
bucket} -> BucketName
bucket) (\s :: PutBucketRequestPayment
s@PutBucketRequestPayment' {} BucketName
a -> PutBucketRequestPayment
s {$sel:bucket:PutBucketRequestPayment' :: BucketName
bucket = BucketName
a} :: PutBucketRequestPayment)
putBucketRequestPayment_requestPaymentConfiguration :: Lens.Lens' PutBucketRequestPayment RequestPaymentConfiguration
putBucketRequestPayment_requestPaymentConfiguration :: Lens' PutBucketRequestPayment RequestPaymentConfiguration
putBucketRequestPayment_requestPaymentConfiguration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PutBucketRequestPayment' {RequestPaymentConfiguration
requestPaymentConfiguration :: RequestPaymentConfiguration
$sel:requestPaymentConfiguration:PutBucketRequestPayment' :: PutBucketRequestPayment -> RequestPaymentConfiguration
requestPaymentConfiguration} -> RequestPaymentConfiguration
requestPaymentConfiguration) (\s :: PutBucketRequestPayment
s@PutBucketRequestPayment' {} RequestPaymentConfiguration
a -> PutBucketRequestPayment
s {$sel:requestPaymentConfiguration:PutBucketRequestPayment' :: RequestPaymentConfiguration
requestPaymentConfiguration = RequestPaymentConfiguration
a} :: PutBucketRequestPayment)
instance Core.AWSRequest PutBucketRequestPayment where
type
AWSResponse PutBucketRequestPayment =
PutBucketRequestPaymentResponse
request :: (Service -> Service)
-> PutBucketRequestPayment -> Request PutBucketRequestPayment
request Service -> Service
overrides =
forall a. Request a -> Request a
Request.s3vhost
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a. (ToRequest a, ToElement a) => Service -> a -> Request a
Request.putXML (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy PutBucketRequestPayment
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse PutBucketRequestPayment)))
response =
forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull
PutBucketRequestPaymentResponse
PutBucketRequestPaymentResponse'
instance Prelude.Hashable PutBucketRequestPayment where
hashWithSalt :: Int -> PutBucketRequestPayment -> Int
hashWithSalt Int
_salt PutBucketRequestPayment' {Maybe Text
Maybe ChecksumAlgorithm
BucketName
RequestPaymentConfiguration
requestPaymentConfiguration :: RequestPaymentConfiguration
bucket :: BucketName
expectedBucketOwner :: Maybe Text
contentMD5 :: Maybe Text
checksumAlgorithm :: Maybe ChecksumAlgorithm
$sel:requestPaymentConfiguration:PutBucketRequestPayment' :: PutBucketRequestPayment -> RequestPaymentConfiguration
$sel:bucket:PutBucketRequestPayment' :: PutBucketRequestPayment -> BucketName
$sel:expectedBucketOwner:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe Text
$sel:contentMD5:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe Text
$sel:checksumAlgorithm:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe ChecksumAlgorithm
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ChecksumAlgorithm
checksumAlgorithm
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
contentMD5
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
expectedBucketOwner
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` BucketName
bucket
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` RequestPaymentConfiguration
requestPaymentConfiguration
instance Prelude.NFData PutBucketRequestPayment where
rnf :: PutBucketRequestPayment -> ()
rnf PutBucketRequestPayment' {Maybe Text
Maybe ChecksumAlgorithm
BucketName
RequestPaymentConfiguration
requestPaymentConfiguration :: RequestPaymentConfiguration
bucket :: BucketName
expectedBucketOwner :: Maybe Text
contentMD5 :: Maybe Text
checksumAlgorithm :: Maybe ChecksumAlgorithm
$sel:requestPaymentConfiguration:PutBucketRequestPayment' :: PutBucketRequestPayment -> RequestPaymentConfiguration
$sel:bucket:PutBucketRequestPayment' :: PutBucketRequestPayment -> BucketName
$sel:expectedBucketOwner:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe Text
$sel:contentMD5:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe Text
$sel:checksumAlgorithm:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe ChecksumAlgorithm
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe ChecksumAlgorithm
checksumAlgorithm
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
contentMD5
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
expectedBucketOwner
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf BucketName
bucket
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf RequestPaymentConfiguration
requestPaymentConfiguration
instance Data.ToElement PutBucketRequestPayment where
toElement :: PutBucketRequestPayment -> Element
toElement PutBucketRequestPayment' {Maybe Text
Maybe ChecksumAlgorithm
BucketName
RequestPaymentConfiguration
requestPaymentConfiguration :: RequestPaymentConfiguration
bucket :: BucketName
expectedBucketOwner :: Maybe Text
contentMD5 :: Maybe Text
checksumAlgorithm :: Maybe ChecksumAlgorithm
$sel:requestPaymentConfiguration:PutBucketRequestPayment' :: PutBucketRequestPayment -> RequestPaymentConfiguration
$sel:bucket:PutBucketRequestPayment' :: PutBucketRequestPayment -> BucketName
$sel:expectedBucketOwner:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe Text
$sel:contentMD5:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe Text
$sel:checksumAlgorithm:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe ChecksumAlgorithm
..} =
forall a. ToXML a => Name -> a -> Element
Data.mkElement
Name
"{http://s3.amazonaws.com/doc/2006-03-01/}RequestPaymentConfiguration"
RequestPaymentConfiguration
requestPaymentConfiguration
instance Data.ToHeaders PutBucketRequestPayment where
toHeaders :: PutBucketRequestPayment -> [Header]
toHeaders PutBucketRequestPayment' {Maybe Text
Maybe ChecksumAlgorithm
BucketName
RequestPaymentConfiguration
requestPaymentConfiguration :: RequestPaymentConfiguration
bucket :: BucketName
expectedBucketOwner :: Maybe Text
contentMD5 :: Maybe Text
checksumAlgorithm :: Maybe ChecksumAlgorithm
$sel:requestPaymentConfiguration:PutBucketRequestPayment' :: PutBucketRequestPayment -> RequestPaymentConfiguration
$sel:bucket:PutBucketRequestPayment' :: PutBucketRequestPayment -> BucketName
$sel:expectedBucketOwner:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe Text
$sel:contentMD5:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe Text
$sel:checksumAlgorithm:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe ChecksumAlgorithm
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"x-amz-sdk-checksum-algorithm"
forall a. ToHeader a => HeaderName -> a -> [Header]
Data.=# Maybe ChecksumAlgorithm
checksumAlgorithm,
HeaderName
"Content-MD5" forall a. ToHeader a => HeaderName -> a -> [Header]
Data.=# Maybe Text
contentMD5,
HeaderName
"x-amz-expected-bucket-owner"
forall a. ToHeader a => HeaderName -> a -> [Header]
Data.=# Maybe Text
expectedBucketOwner
]
instance Data.ToPath PutBucketRequestPayment where
toPath :: PutBucketRequestPayment -> ByteString
toPath PutBucketRequestPayment' {Maybe Text
Maybe ChecksumAlgorithm
BucketName
RequestPaymentConfiguration
requestPaymentConfiguration :: RequestPaymentConfiguration
bucket :: BucketName
expectedBucketOwner :: Maybe Text
contentMD5 :: Maybe Text
checksumAlgorithm :: Maybe ChecksumAlgorithm
$sel:requestPaymentConfiguration:PutBucketRequestPayment' :: PutBucketRequestPayment -> RequestPaymentConfiguration
$sel:bucket:PutBucketRequestPayment' :: PutBucketRequestPayment -> BucketName
$sel:expectedBucketOwner:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe Text
$sel:contentMD5:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe Text
$sel:checksumAlgorithm:PutBucketRequestPayment' :: PutBucketRequestPayment -> Maybe ChecksumAlgorithm
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat [ByteString
"/", forall a. ToByteString a => a -> ByteString
Data.toBS BucketName
bucket]
instance Data.ToQuery PutBucketRequestPayment where
toQuery :: PutBucketRequestPayment -> QueryString
toQuery =
forall a b. a -> b -> a
Prelude.const (forall a. Monoid a => [a] -> a
Prelude.mconcat [QueryString
"requestPayment"])
data PutBucketRequestPaymentResponse = PutBucketRequestPaymentResponse'
{
}
deriving (PutBucketRequestPaymentResponse
-> PutBucketRequestPaymentResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PutBucketRequestPaymentResponse
-> PutBucketRequestPaymentResponse -> Bool
$c/= :: PutBucketRequestPaymentResponse
-> PutBucketRequestPaymentResponse -> Bool
== :: PutBucketRequestPaymentResponse
-> PutBucketRequestPaymentResponse -> Bool
$c== :: PutBucketRequestPaymentResponse
-> PutBucketRequestPaymentResponse -> Bool
Prelude.Eq, ReadPrec [PutBucketRequestPaymentResponse]
ReadPrec PutBucketRequestPaymentResponse
Int -> ReadS PutBucketRequestPaymentResponse
ReadS [PutBucketRequestPaymentResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PutBucketRequestPaymentResponse]
$creadListPrec :: ReadPrec [PutBucketRequestPaymentResponse]
readPrec :: ReadPrec PutBucketRequestPaymentResponse
$creadPrec :: ReadPrec PutBucketRequestPaymentResponse
readList :: ReadS [PutBucketRequestPaymentResponse]
$creadList :: ReadS [PutBucketRequestPaymentResponse]
readsPrec :: Int -> ReadS PutBucketRequestPaymentResponse
$creadsPrec :: Int -> ReadS PutBucketRequestPaymentResponse
Prelude.Read, Int -> PutBucketRequestPaymentResponse -> ShowS
[PutBucketRequestPaymentResponse] -> ShowS
PutBucketRequestPaymentResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PutBucketRequestPaymentResponse] -> ShowS
$cshowList :: [PutBucketRequestPaymentResponse] -> ShowS
show :: PutBucketRequestPaymentResponse -> String
$cshow :: PutBucketRequestPaymentResponse -> String
showsPrec :: Int -> PutBucketRequestPaymentResponse -> ShowS
$cshowsPrec :: Int -> PutBucketRequestPaymentResponse -> ShowS
Prelude.Show, forall x.
Rep PutBucketRequestPaymentResponse x
-> PutBucketRequestPaymentResponse
forall x.
PutBucketRequestPaymentResponse
-> Rep PutBucketRequestPaymentResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PutBucketRequestPaymentResponse x
-> PutBucketRequestPaymentResponse
$cfrom :: forall x.
PutBucketRequestPaymentResponse
-> Rep PutBucketRequestPaymentResponse x
Prelude.Generic)
newPutBucketRequestPaymentResponse ::
PutBucketRequestPaymentResponse
newPutBucketRequestPaymentResponse :: PutBucketRequestPaymentResponse
newPutBucketRequestPaymentResponse =
PutBucketRequestPaymentResponse
PutBucketRequestPaymentResponse'
instance
Prelude.NFData
PutBucketRequestPaymentResponse
where
rnf :: PutBucketRequestPaymentResponse -> ()
rnf PutBucketRequestPaymentResponse
_ = ()