{-# 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.Route53RecoveryReadiness.DeleteCrossAccountAuthorization
(
DeleteCrossAccountAuthorization (..),
newDeleteCrossAccountAuthorization,
deleteCrossAccountAuthorization_crossAccountAuthorization,
DeleteCrossAccountAuthorizationResponse (..),
newDeleteCrossAccountAuthorizationResponse,
deleteCrossAccountAuthorizationResponse_httpStatus,
)
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.Route53RecoveryReadiness.Types
data DeleteCrossAccountAuthorization = DeleteCrossAccountAuthorization'
{
DeleteCrossAccountAuthorization -> Text
crossAccountAuthorization :: Prelude.Text
}
deriving (DeleteCrossAccountAuthorization
-> DeleteCrossAccountAuthorization -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteCrossAccountAuthorization
-> DeleteCrossAccountAuthorization -> Bool
$c/= :: DeleteCrossAccountAuthorization
-> DeleteCrossAccountAuthorization -> Bool
== :: DeleteCrossAccountAuthorization
-> DeleteCrossAccountAuthorization -> Bool
$c== :: DeleteCrossAccountAuthorization
-> DeleteCrossAccountAuthorization -> Bool
Prelude.Eq, ReadPrec [DeleteCrossAccountAuthorization]
ReadPrec DeleteCrossAccountAuthorization
Int -> ReadS DeleteCrossAccountAuthorization
ReadS [DeleteCrossAccountAuthorization]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteCrossAccountAuthorization]
$creadListPrec :: ReadPrec [DeleteCrossAccountAuthorization]
readPrec :: ReadPrec DeleteCrossAccountAuthorization
$creadPrec :: ReadPrec DeleteCrossAccountAuthorization
readList :: ReadS [DeleteCrossAccountAuthorization]
$creadList :: ReadS [DeleteCrossAccountAuthorization]
readsPrec :: Int -> ReadS DeleteCrossAccountAuthorization
$creadsPrec :: Int -> ReadS DeleteCrossAccountAuthorization
Prelude.Read, Int -> DeleteCrossAccountAuthorization -> ShowS
[DeleteCrossAccountAuthorization] -> ShowS
DeleteCrossAccountAuthorization -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteCrossAccountAuthorization] -> ShowS
$cshowList :: [DeleteCrossAccountAuthorization] -> ShowS
show :: DeleteCrossAccountAuthorization -> String
$cshow :: DeleteCrossAccountAuthorization -> String
showsPrec :: Int -> DeleteCrossAccountAuthorization -> ShowS
$cshowsPrec :: Int -> DeleteCrossAccountAuthorization -> ShowS
Prelude.Show, forall x.
Rep DeleteCrossAccountAuthorization x
-> DeleteCrossAccountAuthorization
forall x.
DeleteCrossAccountAuthorization
-> Rep DeleteCrossAccountAuthorization x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteCrossAccountAuthorization x
-> DeleteCrossAccountAuthorization
$cfrom :: forall x.
DeleteCrossAccountAuthorization
-> Rep DeleteCrossAccountAuthorization x
Prelude.Generic)
newDeleteCrossAccountAuthorization ::
Prelude.Text ->
DeleteCrossAccountAuthorization
newDeleteCrossAccountAuthorization :: Text -> DeleteCrossAccountAuthorization
newDeleteCrossAccountAuthorization
Text
pCrossAccountAuthorization_ =
DeleteCrossAccountAuthorization'
{ $sel:crossAccountAuthorization:DeleteCrossAccountAuthorization' :: Text
crossAccountAuthorization =
Text
pCrossAccountAuthorization_
}
deleteCrossAccountAuthorization_crossAccountAuthorization :: Lens.Lens' DeleteCrossAccountAuthorization Prelude.Text
deleteCrossAccountAuthorization_crossAccountAuthorization :: Lens' DeleteCrossAccountAuthorization Text
deleteCrossAccountAuthorization_crossAccountAuthorization = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteCrossAccountAuthorization' {Text
crossAccountAuthorization :: Text
$sel:crossAccountAuthorization:DeleteCrossAccountAuthorization' :: DeleteCrossAccountAuthorization -> Text
crossAccountAuthorization} -> Text
crossAccountAuthorization) (\s :: DeleteCrossAccountAuthorization
s@DeleteCrossAccountAuthorization' {} Text
a -> DeleteCrossAccountAuthorization
s {$sel:crossAccountAuthorization:DeleteCrossAccountAuthorization' :: Text
crossAccountAuthorization = Text
a} :: DeleteCrossAccountAuthorization)
instance
Core.AWSRequest
DeleteCrossAccountAuthorization
where
type
AWSResponse DeleteCrossAccountAuthorization =
DeleteCrossAccountAuthorizationResponse
request :: (Service -> Service)
-> DeleteCrossAccountAuthorization
-> Request DeleteCrossAccountAuthorization
request Service -> Service
overrides =
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 DeleteCrossAccountAuthorization
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse (AWSResponse DeleteCrossAccountAuthorization)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> () -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveEmpty
( \Int
s ResponseHeaders
h ()
x ->
Int -> DeleteCrossAccountAuthorizationResponse
DeleteCrossAccountAuthorizationResponse'
forall (f :: * -> *) a b. Functor 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
DeleteCrossAccountAuthorization
where
hashWithSalt :: Int -> DeleteCrossAccountAuthorization -> Int
hashWithSalt
Int
_salt
DeleteCrossAccountAuthorization' {Text
crossAccountAuthorization :: Text
$sel:crossAccountAuthorization:DeleteCrossAccountAuthorization' :: DeleteCrossAccountAuthorization -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
crossAccountAuthorization
instance
Prelude.NFData
DeleteCrossAccountAuthorization
where
rnf :: DeleteCrossAccountAuthorization -> ()
rnf DeleteCrossAccountAuthorization' {Text
crossAccountAuthorization :: Text
$sel:crossAccountAuthorization:DeleteCrossAccountAuthorization' :: DeleteCrossAccountAuthorization -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
crossAccountAuthorization
instance
Data.ToHeaders
DeleteCrossAccountAuthorization
where
toHeaders :: DeleteCrossAccountAuthorization -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToPath DeleteCrossAccountAuthorization where
toPath :: DeleteCrossAccountAuthorization -> ByteString
toPath DeleteCrossAccountAuthorization' {Text
crossAccountAuthorization :: Text
$sel:crossAccountAuthorization:DeleteCrossAccountAuthorization' :: DeleteCrossAccountAuthorization -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/crossaccountauthorizations/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
crossAccountAuthorization
]
instance Data.ToQuery DeleteCrossAccountAuthorization where
toQuery :: DeleteCrossAccountAuthorization -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeleteCrossAccountAuthorizationResponse = DeleteCrossAccountAuthorizationResponse'
{
DeleteCrossAccountAuthorizationResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeleteCrossAccountAuthorizationResponse
-> DeleteCrossAccountAuthorizationResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteCrossAccountAuthorizationResponse
-> DeleteCrossAccountAuthorizationResponse -> Bool
$c/= :: DeleteCrossAccountAuthorizationResponse
-> DeleteCrossAccountAuthorizationResponse -> Bool
== :: DeleteCrossAccountAuthorizationResponse
-> DeleteCrossAccountAuthorizationResponse -> Bool
$c== :: DeleteCrossAccountAuthorizationResponse
-> DeleteCrossAccountAuthorizationResponse -> Bool
Prelude.Eq, ReadPrec [DeleteCrossAccountAuthorizationResponse]
ReadPrec DeleteCrossAccountAuthorizationResponse
Int -> ReadS DeleteCrossAccountAuthorizationResponse
ReadS [DeleteCrossAccountAuthorizationResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteCrossAccountAuthorizationResponse]
$creadListPrec :: ReadPrec [DeleteCrossAccountAuthorizationResponse]
readPrec :: ReadPrec DeleteCrossAccountAuthorizationResponse
$creadPrec :: ReadPrec DeleteCrossAccountAuthorizationResponse
readList :: ReadS [DeleteCrossAccountAuthorizationResponse]
$creadList :: ReadS [DeleteCrossAccountAuthorizationResponse]
readsPrec :: Int -> ReadS DeleteCrossAccountAuthorizationResponse
$creadsPrec :: Int -> ReadS DeleteCrossAccountAuthorizationResponse
Prelude.Read, Int -> DeleteCrossAccountAuthorizationResponse -> ShowS
[DeleteCrossAccountAuthorizationResponse] -> ShowS
DeleteCrossAccountAuthorizationResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteCrossAccountAuthorizationResponse] -> ShowS
$cshowList :: [DeleteCrossAccountAuthorizationResponse] -> ShowS
show :: DeleteCrossAccountAuthorizationResponse -> String
$cshow :: DeleteCrossAccountAuthorizationResponse -> String
showsPrec :: Int -> DeleteCrossAccountAuthorizationResponse -> ShowS
$cshowsPrec :: Int -> DeleteCrossAccountAuthorizationResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteCrossAccountAuthorizationResponse x
-> DeleteCrossAccountAuthorizationResponse
forall x.
DeleteCrossAccountAuthorizationResponse
-> Rep DeleteCrossAccountAuthorizationResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteCrossAccountAuthorizationResponse x
-> DeleteCrossAccountAuthorizationResponse
$cfrom :: forall x.
DeleteCrossAccountAuthorizationResponse
-> Rep DeleteCrossAccountAuthorizationResponse x
Prelude.Generic)
newDeleteCrossAccountAuthorizationResponse ::
Prelude.Int ->
DeleteCrossAccountAuthorizationResponse
newDeleteCrossAccountAuthorizationResponse :: Int -> DeleteCrossAccountAuthorizationResponse
newDeleteCrossAccountAuthorizationResponse
Int
pHttpStatus_ =
DeleteCrossAccountAuthorizationResponse'
{ $sel:httpStatus:DeleteCrossAccountAuthorizationResponse' :: Int
httpStatus =
Int
pHttpStatus_
}
deleteCrossAccountAuthorizationResponse_httpStatus :: Lens.Lens' DeleteCrossAccountAuthorizationResponse Prelude.Int
deleteCrossAccountAuthorizationResponse_httpStatus :: Lens' DeleteCrossAccountAuthorizationResponse Int
deleteCrossAccountAuthorizationResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteCrossAccountAuthorizationResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteCrossAccountAuthorizationResponse' :: DeleteCrossAccountAuthorizationResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteCrossAccountAuthorizationResponse
s@DeleteCrossAccountAuthorizationResponse' {} Int
a -> DeleteCrossAccountAuthorizationResponse
s {$sel:httpStatus:DeleteCrossAccountAuthorizationResponse' :: Int
httpStatus = Int
a} :: DeleteCrossAccountAuthorizationResponse)
instance
Prelude.NFData
DeleteCrossAccountAuthorizationResponse
where
rnf :: DeleteCrossAccountAuthorizationResponse -> ()
rnf DeleteCrossAccountAuthorizationResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteCrossAccountAuthorizationResponse' :: DeleteCrossAccountAuthorizationResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus