{-# 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.Lightsail.DeleteRelationalDatabaseSnapshot
(
DeleteRelationalDatabaseSnapshot (..),
newDeleteRelationalDatabaseSnapshot,
deleteRelationalDatabaseSnapshot_relationalDatabaseSnapshotName,
DeleteRelationalDatabaseSnapshotResponse (..),
newDeleteRelationalDatabaseSnapshotResponse,
deleteRelationalDatabaseSnapshotResponse_operations,
deleteRelationalDatabaseSnapshotResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Lightsail.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DeleteRelationalDatabaseSnapshot = DeleteRelationalDatabaseSnapshot'
{
DeleteRelationalDatabaseSnapshot -> Text
relationalDatabaseSnapshotName :: Prelude.Text
}
deriving (DeleteRelationalDatabaseSnapshot
-> DeleteRelationalDatabaseSnapshot -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteRelationalDatabaseSnapshot
-> DeleteRelationalDatabaseSnapshot -> Bool
$c/= :: DeleteRelationalDatabaseSnapshot
-> DeleteRelationalDatabaseSnapshot -> Bool
== :: DeleteRelationalDatabaseSnapshot
-> DeleteRelationalDatabaseSnapshot -> Bool
$c== :: DeleteRelationalDatabaseSnapshot
-> DeleteRelationalDatabaseSnapshot -> Bool
Prelude.Eq, ReadPrec [DeleteRelationalDatabaseSnapshot]
ReadPrec DeleteRelationalDatabaseSnapshot
Int -> ReadS DeleteRelationalDatabaseSnapshot
ReadS [DeleteRelationalDatabaseSnapshot]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteRelationalDatabaseSnapshot]
$creadListPrec :: ReadPrec [DeleteRelationalDatabaseSnapshot]
readPrec :: ReadPrec DeleteRelationalDatabaseSnapshot
$creadPrec :: ReadPrec DeleteRelationalDatabaseSnapshot
readList :: ReadS [DeleteRelationalDatabaseSnapshot]
$creadList :: ReadS [DeleteRelationalDatabaseSnapshot]
readsPrec :: Int -> ReadS DeleteRelationalDatabaseSnapshot
$creadsPrec :: Int -> ReadS DeleteRelationalDatabaseSnapshot
Prelude.Read, Int -> DeleteRelationalDatabaseSnapshot -> ShowS
[DeleteRelationalDatabaseSnapshot] -> ShowS
DeleteRelationalDatabaseSnapshot -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteRelationalDatabaseSnapshot] -> ShowS
$cshowList :: [DeleteRelationalDatabaseSnapshot] -> ShowS
show :: DeleteRelationalDatabaseSnapshot -> String
$cshow :: DeleteRelationalDatabaseSnapshot -> String
showsPrec :: Int -> DeleteRelationalDatabaseSnapshot -> ShowS
$cshowsPrec :: Int -> DeleteRelationalDatabaseSnapshot -> ShowS
Prelude.Show, forall x.
Rep DeleteRelationalDatabaseSnapshot x
-> DeleteRelationalDatabaseSnapshot
forall x.
DeleteRelationalDatabaseSnapshot
-> Rep DeleteRelationalDatabaseSnapshot x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteRelationalDatabaseSnapshot x
-> DeleteRelationalDatabaseSnapshot
$cfrom :: forall x.
DeleteRelationalDatabaseSnapshot
-> Rep DeleteRelationalDatabaseSnapshot x
Prelude.Generic)
newDeleteRelationalDatabaseSnapshot ::
Prelude.Text ->
DeleteRelationalDatabaseSnapshot
newDeleteRelationalDatabaseSnapshot :: Text -> DeleteRelationalDatabaseSnapshot
newDeleteRelationalDatabaseSnapshot
Text
pRelationalDatabaseSnapshotName_ =
DeleteRelationalDatabaseSnapshot'
{ $sel:relationalDatabaseSnapshotName:DeleteRelationalDatabaseSnapshot' :: Text
relationalDatabaseSnapshotName =
Text
pRelationalDatabaseSnapshotName_
}
deleteRelationalDatabaseSnapshot_relationalDatabaseSnapshotName :: Lens.Lens' DeleteRelationalDatabaseSnapshot Prelude.Text
deleteRelationalDatabaseSnapshot_relationalDatabaseSnapshotName :: Lens' DeleteRelationalDatabaseSnapshot Text
deleteRelationalDatabaseSnapshot_relationalDatabaseSnapshotName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteRelationalDatabaseSnapshot' {Text
relationalDatabaseSnapshotName :: Text
$sel:relationalDatabaseSnapshotName:DeleteRelationalDatabaseSnapshot' :: DeleteRelationalDatabaseSnapshot -> Text
relationalDatabaseSnapshotName} -> Text
relationalDatabaseSnapshotName) (\s :: DeleteRelationalDatabaseSnapshot
s@DeleteRelationalDatabaseSnapshot' {} Text
a -> DeleteRelationalDatabaseSnapshot
s {$sel:relationalDatabaseSnapshotName:DeleteRelationalDatabaseSnapshot' :: Text
relationalDatabaseSnapshotName = Text
a} :: DeleteRelationalDatabaseSnapshot)
instance
Core.AWSRequest
DeleteRelationalDatabaseSnapshot
where
type
AWSResponse DeleteRelationalDatabaseSnapshot =
DeleteRelationalDatabaseSnapshotResponse
request :: (Service -> Service)
-> DeleteRelationalDatabaseSnapshot
-> Request DeleteRelationalDatabaseSnapshot
request Service -> Service
overrides =
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DeleteRelationalDatabaseSnapshot
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse (AWSResponse DeleteRelationalDatabaseSnapshot)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Maybe [Operation]
-> Int -> DeleteRelationalDatabaseSnapshotResponse
DeleteRelationalDatabaseSnapshotResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"operations" forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance
Prelude.Hashable
DeleteRelationalDatabaseSnapshot
where
hashWithSalt :: Int -> DeleteRelationalDatabaseSnapshot -> Int
hashWithSalt
Int
_salt
DeleteRelationalDatabaseSnapshot' {Text
relationalDatabaseSnapshotName :: Text
$sel:relationalDatabaseSnapshotName:DeleteRelationalDatabaseSnapshot' :: DeleteRelationalDatabaseSnapshot -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
relationalDatabaseSnapshotName
instance
Prelude.NFData
DeleteRelationalDatabaseSnapshot
where
rnf :: DeleteRelationalDatabaseSnapshot -> ()
rnf DeleteRelationalDatabaseSnapshot' {Text
relationalDatabaseSnapshotName :: Text
$sel:relationalDatabaseSnapshotName:DeleteRelationalDatabaseSnapshot' :: DeleteRelationalDatabaseSnapshot -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
relationalDatabaseSnapshotName
instance
Data.ToHeaders
DeleteRelationalDatabaseSnapshot
where
toHeaders :: DeleteRelationalDatabaseSnapshot -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"X-Amz-Target"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"Lightsail_20161128.DeleteRelationalDatabaseSnapshot" ::
Prelude.ByteString
),
HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON DeleteRelationalDatabaseSnapshot where
toJSON :: DeleteRelationalDatabaseSnapshot -> Value
toJSON DeleteRelationalDatabaseSnapshot' {Text
relationalDatabaseSnapshotName :: Text
$sel:relationalDatabaseSnapshotName:DeleteRelationalDatabaseSnapshot' :: DeleteRelationalDatabaseSnapshot -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just
( Key
"relationalDatabaseSnapshotName"
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
relationalDatabaseSnapshotName
)
]
)
instance Data.ToPath DeleteRelationalDatabaseSnapshot where
toPath :: DeleteRelationalDatabaseSnapshot -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance
Data.ToQuery
DeleteRelationalDatabaseSnapshot
where
toQuery :: DeleteRelationalDatabaseSnapshot -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeleteRelationalDatabaseSnapshotResponse = DeleteRelationalDatabaseSnapshotResponse'
{
DeleteRelationalDatabaseSnapshotResponse -> Maybe [Operation]
operations :: Prelude.Maybe [Operation],
DeleteRelationalDatabaseSnapshotResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeleteRelationalDatabaseSnapshotResponse
-> DeleteRelationalDatabaseSnapshotResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteRelationalDatabaseSnapshotResponse
-> DeleteRelationalDatabaseSnapshotResponse -> Bool
$c/= :: DeleteRelationalDatabaseSnapshotResponse
-> DeleteRelationalDatabaseSnapshotResponse -> Bool
== :: DeleteRelationalDatabaseSnapshotResponse
-> DeleteRelationalDatabaseSnapshotResponse -> Bool
$c== :: DeleteRelationalDatabaseSnapshotResponse
-> DeleteRelationalDatabaseSnapshotResponse -> Bool
Prelude.Eq, ReadPrec [DeleteRelationalDatabaseSnapshotResponse]
ReadPrec DeleteRelationalDatabaseSnapshotResponse
Int -> ReadS DeleteRelationalDatabaseSnapshotResponse
ReadS [DeleteRelationalDatabaseSnapshotResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteRelationalDatabaseSnapshotResponse]
$creadListPrec :: ReadPrec [DeleteRelationalDatabaseSnapshotResponse]
readPrec :: ReadPrec DeleteRelationalDatabaseSnapshotResponse
$creadPrec :: ReadPrec DeleteRelationalDatabaseSnapshotResponse
readList :: ReadS [DeleteRelationalDatabaseSnapshotResponse]
$creadList :: ReadS [DeleteRelationalDatabaseSnapshotResponse]
readsPrec :: Int -> ReadS DeleteRelationalDatabaseSnapshotResponse
$creadsPrec :: Int -> ReadS DeleteRelationalDatabaseSnapshotResponse
Prelude.Read, Int -> DeleteRelationalDatabaseSnapshotResponse -> ShowS
[DeleteRelationalDatabaseSnapshotResponse] -> ShowS
DeleteRelationalDatabaseSnapshotResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteRelationalDatabaseSnapshotResponse] -> ShowS
$cshowList :: [DeleteRelationalDatabaseSnapshotResponse] -> ShowS
show :: DeleteRelationalDatabaseSnapshotResponse -> String
$cshow :: DeleteRelationalDatabaseSnapshotResponse -> String
showsPrec :: Int -> DeleteRelationalDatabaseSnapshotResponse -> ShowS
$cshowsPrec :: Int -> DeleteRelationalDatabaseSnapshotResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteRelationalDatabaseSnapshotResponse x
-> DeleteRelationalDatabaseSnapshotResponse
forall x.
DeleteRelationalDatabaseSnapshotResponse
-> Rep DeleteRelationalDatabaseSnapshotResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteRelationalDatabaseSnapshotResponse x
-> DeleteRelationalDatabaseSnapshotResponse
$cfrom :: forall x.
DeleteRelationalDatabaseSnapshotResponse
-> Rep DeleteRelationalDatabaseSnapshotResponse x
Prelude.Generic)
newDeleteRelationalDatabaseSnapshotResponse ::
Prelude.Int ->
DeleteRelationalDatabaseSnapshotResponse
newDeleteRelationalDatabaseSnapshotResponse :: Int -> DeleteRelationalDatabaseSnapshotResponse
newDeleteRelationalDatabaseSnapshotResponse
Int
pHttpStatus_ =
DeleteRelationalDatabaseSnapshotResponse'
{ $sel:operations:DeleteRelationalDatabaseSnapshotResponse' :: Maybe [Operation]
operations =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DeleteRelationalDatabaseSnapshotResponse' :: Int
httpStatus = Int
pHttpStatus_
}
deleteRelationalDatabaseSnapshotResponse_operations :: Lens.Lens' DeleteRelationalDatabaseSnapshotResponse (Prelude.Maybe [Operation])
deleteRelationalDatabaseSnapshotResponse_operations :: Lens' DeleteRelationalDatabaseSnapshotResponse (Maybe [Operation])
deleteRelationalDatabaseSnapshotResponse_operations = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteRelationalDatabaseSnapshotResponse' {Maybe [Operation]
operations :: Maybe [Operation]
$sel:operations:DeleteRelationalDatabaseSnapshotResponse' :: DeleteRelationalDatabaseSnapshotResponse -> Maybe [Operation]
operations} -> Maybe [Operation]
operations) (\s :: DeleteRelationalDatabaseSnapshotResponse
s@DeleteRelationalDatabaseSnapshotResponse' {} Maybe [Operation]
a -> DeleteRelationalDatabaseSnapshotResponse
s {$sel:operations:DeleteRelationalDatabaseSnapshotResponse' :: Maybe [Operation]
operations = Maybe [Operation]
a} :: DeleteRelationalDatabaseSnapshotResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
deleteRelationalDatabaseSnapshotResponse_httpStatus :: Lens.Lens' DeleteRelationalDatabaseSnapshotResponse Prelude.Int
deleteRelationalDatabaseSnapshotResponse_httpStatus :: Lens' DeleteRelationalDatabaseSnapshotResponse Int
deleteRelationalDatabaseSnapshotResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteRelationalDatabaseSnapshotResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteRelationalDatabaseSnapshotResponse' :: DeleteRelationalDatabaseSnapshotResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteRelationalDatabaseSnapshotResponse
s@DeleteRelationalDatabaseSnapshotResponse' {} Int
a -> DeleteRelationalDatabaseSnapshotResponse
s {$sel:httpStatus:DeleteRelationalDatabaseSnapshotResponse' :: Int
httpStatus = Int
a} :: DeleteRelationalDatabaseSnapshotResponse)
instance
Prelude.NFData
DeleteRelationalDatabaseSnapshotResponse
where
rnf :: DeleteRelationalDatabaseSnapshotResponse -> ()
rnf DeleteRelationalDatabaseSnapshotResponse' {Int
Maybe [Operation]
httpStatus :: Int
operations :: Maybe [Operation]
$sel:httpStatus:DeleteRelationalDatabaseSnapshotResponse' :: DeleteRelationalDatabaseSnapshotResponse -> Int
$sel:operations:DeleteRelationalDatabaseSnapshotResponse' :: DeleteRelationalDatabaseSnapshotResponse -> Maybe [Operation]
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe [Operation]
operations
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus