{-# 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.DeleteBucketLifecycle
(
DeleteBucketLifecycle (..),
newDeleteBucketLifecycle,
deleteBucketLifecycle_expectedBucketOwner,
deleteBucketLifecycle_bucket,
DeleteBucketLifecycleResponse (..),
newDeleteBucketLifecycleResponse,
)
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 DeleteBucketLifecycle = DeleteBucketLifecycle'
{
DeleteBucketLifecycle -> Maybe Text
expectedBucketOwner :: Prelude.Maybe Prelude.Text,
DeleteBucketLifecycle -> BucketName
bucket :: BucketName
}
deriving (DeleteBucketLifecycle -> DeleteBucketLifecycle -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteBucketLifecycle -> DeleteBucketLifecycle -> Bool
$c/= :: DeleteBucketLifecycle -> DeleteBucketLifecycle -> Bool
== :: DeleteBucketLifecycle -> DeleteBucketLifecycle -> Bool
$c== :: DeleteBucketLifecycle -> DeleteBucketLifecycle -> Bool
Prelude.Eq, ReadPrec [DeleteBucketLifecycle]
ReadPrec DeleteBucketLifecycle
Int -> ReadS DeleteBucketLifecycle
ReadS [DeleteBucketLifecycle]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteBucketLifecycle]
$creadListPrec :: ReadPrec [DeleteBucketLifecycle]
readPrec :: ReadPrec DeleteBucketLifecycle
$creadPrec :: ReadPrec DeleteBucketLifecycle
readList :: ReadS [DeleteBucketLifecycle]
$creadList :: ReadS [DeleteBucketLifecycle]
readsPrec :: Int -> ReadS DeleteBucketLifecycle
$creadsPrec :: Int -> ReadS DeleteBucketLifecycle
Prelude.Read, Int -> DeleteBucketLifecycle -> ShowS
[DeleteBucketLifecycle] -> ShowS
DeleteBucketLifecycle -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteBucketLifecycle] -> ShowS
$cshowList :: [DeleteBucketLifecycle] -> ShowS
show :: DeleteBucketLifecycle -> String
$cshow :: DeleteBucketLifecycle -> String
showsPrec :: Int -> DeleteBucketLifecycle -> ShowS
$cshowsPrec :: Int -> DeleteBucketLifecycle -> ShowS
Prelude.Show, forall x. Rep DeleteBucketLifecycle x -> DeleteBucketLifecycle
forall x. DeleteBucketLifecycle -> Rep DeleteBucketLifecycle x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteBucketLifecycle x -> DeleteBucketLifecycle
$cfrom :: forall x. DeleteBucketLifecycle -> Rep DeleteBucketLifecycle x
Prelude.Generic)
newDeleteBucketLifecycle ::
BucketName ->
DeleteBucketLifecycle
newDeleteBucketLifecycle :: BucketName -> DeleteBucketLifecycle
newDeleteBucketLifecycle BucketName
pBucket_ =
DeleteBucketLifecycle'
{ $sel:expectedBucketOwner:DeleteBucketLifecycle' :: Maybe Text
expectedBucketOwner =
forall a. Maybe a
Prelude.Nothing,
$sel:bucket:DeleteBucketLifecycle' :: BucketName
bucket = BucketName
pBucket_
}
deleteBucketLifecycle_expectedBucketOwner :: Lens.Lens' DeleteBucketLifecycle (Prelude.Maybe Prelude.Text)
deleteBucketLifecycle_expectedBucketOwner :: Lens' DeleteBucketLifecycle (Maybe Text)
deleteBucketLifecycle_expectedBucketOwner = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteBucketLifecycle' {Maybe Text
expectedBucketOwner :: Maybe Text
$sel:expectedBucketOwner:DeleteBucketLifecycle' :: DeleteBucketLifecycle -> Maybe Text
expectedBucketOwner} -> Maybe Text
expectedBucketOwner) (\s :: DeleteBucketLifecycle
s@DeleteBucketLifecycle' {} Maybe Text
a -> DeleteBucketLifecycle
s {$sel:expectedBucketOwner:DeleteBucketLifecycle' :: Maybe Text
expectedBucketOwner = Maybe Text
a} :: DeleteBucketLifecycle)
deleteBucketLifecycle_bucket :: Lens.Lens' DeleteBucketLifecycle BucketName
deleteBucketLifecycle_bucket :: Lens' DeleteBucketLifecycle BucketName
deleteBucketLifecycle_bucket = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteBucketLifecycle' {BucketName
bucket :: BucketName
$sel:bucket:DeleteBucketLifecycle' :: DeleteBucketLifecycle -> BucketName
bucket} -> BucketName
bucket) (\s :: DeleteBucketLifecycle
s@DeleteBucketLifecycle' {} BucketName
a -> DeleteBucketLifecycle
s {$sel:bucket:DeleteBucketLifecycle' :: BucketName
bucket = BucketName
a} :: DeleteBucketLifecycle)
instance Core.AWSRequest DeleteBucketLifecycle where
type
AWSResponse DeleteBucketLifecycle =
DeleteBucketLifecycleResponse
request :: (Service -> Service)
-> DeleteBucketLifecycle -> Request DeleteBucketLifecycle
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 => Service -> a -> Request a
Request.delete (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DeleteBucketLifecycle
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DeleteBucketLifecycle)))
response =
forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull DeleteBucketLifecycleResponse
DeleteBucketLifecycleResponse'
instance Prelude.Hashable DeleteBucketLifecycle where
hashWithSalt :: Int -> DeleteBucketLifecycle -> Int
hashWithSalt Int
_salt DeleteBucketLifecycle' {Maybe Text
BucketName
bucket :: BucketName
expectedBucketOwner :: Maybe Text
$sel:bucket:DeleteBucketLifecycle' :: DeleteBucketLifecycle -> BucketName
$sel:expectedBucketOwner:DeleteBucketLifecycle' :: DeleteBucketLifecycle -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
expectedBucketOwner
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` BucketName
bucket
instance Prelude.NFData DeleteBucketLifecycle where
rnf :: DeleteBucketLifecycle -> ()
rnf DeleteBucketLifecycle' {Maybe Text
BucketName
bucket :: BucketName
expectedBucketOwner :: Maybe Text
$sel:bucket:DeleteBucketLifecycle' :: DeleteBucketLifecycle -> BucketName
$sel:expectedBucketOwner:DeleteBucketLifecycle' :: DeleteBucketLifecycle -> Maybe Text
..} =
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
instance Data.ToHeaders DeleteBucketLifecycle where
toHeaders :: DeleteBucketLifecycle -> [Header]
toHeaders DeleteBucketLifecycle' {Maybe Text
BucketName
bucket :: BucketName
expectedBucketOwner :: Maybe Text
$sel:bucket:DeleteBucketLifecycle' :: DeleteBucketLifecycle -> BucketName
$sel:expectedBucketOwner:DeleteBucketLifecycle' :: DeleteBucketLifecycle -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"x-amz-expected-bucket-owner"
forall a. ToHeader a => HeaderName -> a -> [Header]
Data.=# Maybe Text
expectedBucketOwner
]
instance Data.ToPath DeleteBucketLifecycle where
toPath :: DeleteBucketLifecycle -> ByteString
toPath DeleteBucketLifecycle' {Maybe Text
BucketName
bucket :: BucketName
expectedBucketOwner :: Maybe Text
$sel:bucket:DeleteBucketLifecycle' :: DeleteBucketLifecycle -> BucketName
$sel:expectedBucketOwner:DeleteBucketLifecycle' :: DeleteBucketLifecycle -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat [ByteString
"/", forall a. ToByteString a => a -> ByteString
Data.toBS BucketName
bucket]
instance Data.ToQuery DeleteBucketLifecycle where
toQuery :: DeleteBucketLifecycle -> QueryString
toQuery =
forall a b. a -> b -> a
Prelude.const (forall a. Monoid a => [a] -> a
Prelude.mconcat [QueryString
"lifecycle"])
data DeleteBucketLifecycleResponse = DeleteBucketLifecycleResponse'
{
}
deriving (DeleteBucketLifecycleResponse
-> DeleteBucketLifecycleResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteBucketLifecycleResponse
-> DeleteBucketLifecycleResponse -> Bool
$c/= :: DeleteBucketLifecycleResponse
-> DeleteBucketLifecycleResponse -> Bool
== :: DeleteBucketLifecycleResponse
-> DeleteBucketLifecycleResponse -> Bool
$c== :: DeleteBucketLifecycleResponse
-> DeleteBucketLifecycleResponse -> Bool
Prelude.Eq, ReadPrec [DeleteBucketLifecycleResponse]
ReadPrec DeleteBucketLifecycleResponse
Int -> ReadS DeleteBucketLifecycleResponse
ReadS [DeleteBucketLifecycleResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteBucketLifecycleResponse]
$creadListPrec :: ReadPrec [DeleteBucketLifecycleResponse]
readPrec :: ReadPrec DeleteBucketLifecycleResponse
$creadPrec :: ReadPrec DeleteBucketLifecycleResponse
readList :: ReadS [DeleteBucketLifecycleResponse]
$creadList :: ReadS [DeleteBucketLifecycleResponse]
readsPrec :: Int -> ReadS DeleteBucketLifecycleResponse
$creadsPrec :: Int -> ReadS DeleteBucketLifecycleResponse
Prelude.Read, Int -> DeleteBucketLifecycleResponse -> ShowS
[DeleteBucketLifecycleResponse] -> ShowS
DeleteBucketLifecycleResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteBucketLifecycleResponse] -> ShowS
$cshowList :: [DeleteBucketLifecycleResponse] -> ShowS
show :: DeleteBucketLifecycleResponse -> String
$cshow :: DeleteBucketLifecycleResponse -> String
showsPrec :: Int -> DeleteBucketLifecycleResponse -> ShowS
$cshowsPrec :: Int -> DeleteBucketLifecycleResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteBucketLifecycleResponse x
-> DeleteBucketLifecycleResponse
forall x.
DeleteBucketLifecycleResponse
-> Rep DeleteBucketLifecycleResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteBucketLifecycleResponse x
-> DeleteBucketLifecycleResponse
$cfrom :: forall x.
DeleteBucketLifecycleResponse
-> Rep DeleteBucketLifecycleResponse x
Prelude.Generic)
newDeleteBucketLifecycleResponse ::
DeleteBucketLifecycleResponse
newDeleteBucketLifecycleResponse :: DeleteBucketLifecycleResponse
newDeleteBucketLifecycleResponse =
DeleteBucketLifecycleResponse
DeleteBucketLifecycleResponse'
instance Prelude.NFData DeleteBucketLifecycleResponse where
rnf :: DeleteBucketLifecycleResponse -> ()
rnf DeleteBucketLifecycleResponse
_ = ()