{-# 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.GlobalAccelerator.DeleteAccelerator
(
DeleteAccelerator (..),
newDeleteAccelerator,
deleteAccelerator_acceleratorArn,
DeleteAcceleratorResponse (..),
newDeleteAcceleratorResponse,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.GlobalAccelerator.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DeleteAccelerator = DeleteAccelerator'
{
DeleteAccelerator -> Text
acceleratorArn :: Prelude.Text
}
deriving (DeleteAccelerator -> DeleteAccelerator -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteAccelerator -> DeleteAccelerator -> Bool
$c/= :: DeleteAccelerator -> DeleteAccelerator -> Bool
== :: DeleteAccelerator -> DeleteAccelerator -> Bool
$c== :: DeleteAccelerator -> DeleteAccelerator -> Bool
Prelude.Eq, ReadPrec [DeleteAccelerator]
ReadPrec DeleteAccelerator
Int -> ReadS DeleteAccelerator
ReadS [DeleteAccelerator]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteAccelerator]
$creadListPrec :: ReadPrec [DeleteAccelerator]
readPrec :: ReadPrec DeleteAccelerator
$creadPrec :: ReadPrec DeleteAccelerator
readList :: ReadS [DeleteAccelerator]
$creadList :: ReadS [DeleteAccelerator]
readsPrec :: Int -> ReadS DeleteAccelerator
$creadsPrec :: Int -> ReadS DeleteAccelerator
Prelude.Read, Int -> DeleteAccelerator -> ShowS
[DeleteAccelerator] -> ShowS
DeleteAccelerator -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteAccelerator] -> ShowS
$cshowList :: [DeleteAccelerator] -> ShowS
show :: DeleteAccelerator -> String
$cshow :: DeleteAccelerator -> String
showsPrec :: Int -> DeleteAccelerator -> ShowS
$cshowsPrec :: Int -> DeleteAccelerator -> ShowS
Prelude.Show, forall x. Rep DeleteAccelerator x -> DeleteAccelerator
forall x. DeleteAccelerator -> Rep DeleteAccelerator x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteAccelerator x -> DeleteAccelerator
$cfrom :: forall x. DeleteAccelerator -> Rep DeleteAccelerator x
Prelude.Generic)
newDeleteAccelerator ::
Prelude.Text ->
DeleteAccelerator
newDeleteAccelerator :: Text -> DeleteAccelerator
newDeleteAccelerator Text
pAcceleratorArn_ =
DeleteAccelerator'
{ $sel:acceleratorArn:DeleteAccelerator' :: Text
acceleratorArn =
Text
pAcceleratorArn_
}
deleteAccelerator_acceleratorArn :: Lens.Lens' DeleteAccelerator Prelude.Text
deleteAccelerator_acceleratorArn :: Lens' DeleteAccelerator Text
deleteAccelerator_acceleratorArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteAccelerator' {Text
acceleratorArn :: Text
$sel:acceleratorArn:DeleteAccelerator' :: DeleteAccelerator -> Text
acceleratorArn} -> Text
acceleratorArn) (\s :: DeleteAccelerator
s@DeleteAccelerator' {} Text
a -> DeleteAccelerator
s {$sel:acceleratorArn:DeleteAccelerator' :: Text
acceleratorArn = Text
a} :: DeleteAccelerator)
instance Core.AWSRequest DeleteAccelerator where
type
AWSResponse DeleteAccelerator =
DeleteAcceleratorResponse
request :: (Service -> Service)
-> DeleteAccelerator -> Request DeleteAccelerator
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 DeleteAccelerator
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DeleteAccelerator)))
response =
forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull DeleteAcceleratorResponse
DeleteAcceleratorResponse'
instance Prelude.Hashable DeleteAccelerator where
hashWithSalt :: Int -> DeleteAccelerator -> Int
hashWithSalt Int
_salt DeleteAccelerator' {Text
acceleratorArn :: Text
$sel:acceleratorArn:DeleteAccelerator' :: DeleteAccelerator -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
acceleratorArn
instance Prelude.NFData DeleteAccelerator where
rnf :: DeleteAccelerator -> ()
rnf DeleteAccelerator' {Text
acceleratorArn :: Text
$sel:acceleratorArn:DeleteAccelerator' :: DeleteAccelerator -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
acceleratorArn
instance Data.ToHeaders DeleteAccelerator where
toHeaders :: DeleteAccelerator -> [Header]
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 -> [Header]
Data.=# ( ByteString
"GlobalAccelerator_V20180706.DeleteAccelerator" ::
Prelude.ByteString
),
HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> [Header]
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON DeleteAccelerator where
toJSON :: DeleteAccelerator -> Value
toJSON DeleteAccelerator' {Text
acceleratorArn :: Text
$sel:acceleratorArn:DeleteAccelerator' :: DeleteAccelerator -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just
(Key
"AcceleratorArn" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
acceleratorArn)
]
)
instance Data.ToPath DeleteAccelerator where
toPath :: DeleteAccelerator -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DeleteAccelerator where
toQuery :: DeleteAccelerator -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeleteAcceleratorResponse = DeleteAcceleratorResponse'
{
}
deriving (DeleteAcceleratorResponse -> DeleteAcceleratorResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteAcceleratorResponse -> DeleteAcceleratorResponse -> Bool
$c/= :: DeleteAcceleratorResponse -> DeleteAcceleratorResponse -> Bool
== :: DeleteAcceleratorResponse -> DeleteAcceleratorResponse -> Bool
$c== :: DeleteAcceleratorResponse -> DeleteAcceleratorResponse -> Bool
Prelude.Eq, ReadPrec [DeleteAcceleratorResponse]
ReadPrec DeleteAcceleratorResponse
Int -> ReadS DeleteAcceleratorResponse
ReadS [DeleteAcceleratorResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteAcceleratorResponse]
$creadListPrec :: ReadPrec [DeleteAcceleratorResponse]
readPrec :: ReadPrec DeleteAcceleratorResponse
$creadPrec :: ReadPrec DeleteAcceleratorResponse
readList :: ReadS [DeleteAcceleratorResponse]
$creadList :: ReadS [DeleteAcceleratorResponse]
readsPrec :: Int -> ReadS DeleteAcceleratorResponse
$creadsPrec :: Int -> ReadS DeleteAcceleratorResponse
Prelude.Read, Int -> DeleteAcceleratorResponse -> ShowS
[DeleteAcceleratorResponse] -> ShowS
DeleteAcceleratorResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteAcceleratorResponse] -> ShowS
$cshowList :: [DeleteAcceleratorResponse] -> ShowS
show :: DeleteAcceleratorResponse -> String
$cshow :: DeleteAcceleratorResponse -> String
showsPrec :: Int -> DeleteAcceleratorResponse -> ShowS
$cshowsPrec :: Int -> DeleteAcceleratorResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteAcceleratorResponse x -> DeleteAcceleratorResponse
forall x.
DeleteAcceleratorResponse -> Rep DeleteAcceleratorResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteAcceleratorResponse x -> DeleteAcceleratorResponse
$cfrom :: forall x.
DeleteAcceleratorResponse -> Rep DeleteAcceleratorResponse x
Prelude.Generic)
newDeleteAcceleratorResponse ::
DeleteAcceleratorResponse
newDeleteAcceleratorResponse :: DeleteAcceleratorResponse
newDeleteAcceleratorResponse =
DeleteAcceleratorResponse
DeleteAcceleratorResponse'
instance Prelude.NFData DeleteAcceleratorResponse where
rnf :: DeleteAcceleratorResponse -> ()
rnf DeleteAcceleratorResponse
_ = ()