{-# 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.DeprovisionByoipCidr
(
DeprovisionByoipCidr (..),
newDeprovisionByoipCidr,
deprovisionByoipCidr_cidr,
DeprovisionByoipCidrResponse (..),
newDeprovisionByoipCidrResponse,
deprovisionByoipCidrResponse_byoipCidr,
deprovisionByoipCidrResponse_httpStatus,
)
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 DeprovisionByoipCidr = DeprovisionByoipCidr'
{
DeprovisionByoipCidr -> Text
cidr :: Prelude.Text
}
deriving (DeprovisionByoipCidr -> DeprovisionByoipCidr -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeprovisionByoipCidr -> DeprovisionByoipCidr -> Bool
$c/= :: DeprovisionByoipCidr -> DeprovisionByoipCidr -> Bool
== :: DeprovisionByoipCidr -> DeprovisionByoipCidr -> Bool
$c== :: DeprovisionByoipCidr -> DeprovisionByoipCidr -> Bool
Prelude.Eq, ReadPrec [DeprovisionByoipCidr]
ReadPrec DeprovisionByoipCidr
Int -> ReadS DeprovisionByoipCidr
ReadS [DeprovisionByoipCidr]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeprovisionByoipCidr]
$creadListPrec :: ReadPrec [DeprovisionByoipCidr]
readPrec :: ReadPrec DeprovisionByoipCidr
$creadPrec :: ReadPrec DeprovisionByoipCidr
readList :: ReadS [DeprovisionByoipCidr]
$creadList :: ReadS [DeprovisionByoipCidr]
readsPrec :: Int -> ReadS DeprovisionByoipCidr
$creadsPrec :: Int -> ReadS DeprovisionByoipCidr
Prelude.Read, Int -> DeprovisionByoipCidr -> ShowS
[DeprovisionByoipCidr] -> ShowS
DeprovisionByoipCidr -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeprovisionByoipCidr] -> ShowS
$cshowList :: [DeprovisionByoipCidr] -> ShowS
show :: DeprovisionByoipCidr -> String
$cshow :: DeprovisionByoipCidr -> String
showsPrec :: Int -> DeprovisionByoipCidr -> ShowS
$cshowsPrec :: Int -> DeprovisionByoipCidr -> ShowS
Prelude.Show, forall x. Rep DeprovisionByoipCidr x -> DeprovisionByoipCidr
forall x. DeprovisionByoipCidr -> Rep DeprovisionByoipCidr x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeprovisionByoipCidr x -> DeprovisionByoipCidr
$cfrom :: forall x. DeprovisionByoipCidr -> Rep DeprovisionByoipCidr x
Prelude.Generic)
newDeprovisionByoipCidr ::
Prelude.Text ->
DeprovisionByoipCidr
newDeprovisionByoipCidr :: Text -> DeprovisionByoipCidr
newDeprovisionByoipCidr Text
pCidr_ =
DeprovisionByoipCidr' {$sel:cidr:DeprovisionByoipCidr' :: Text
cidr = Text
pCidr_}
deprovisionByoipCidr_cidr :: Lens.Lens' DeprovisionByoipCidr Prelude.Text
deprovisionByoipCidr_cidr :: Lens' DeprovisionByoipCidr Text
deprovisionByoipCidr_cidr = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeprovisionByoipCidr' {Text
cidr :: Text
$sel:cidr:DeprovisionByoipCidr' :: DeprovisionByoipCidr -> Text
cidr} -> Text
cidr) (\s :: DeprovisionByoipCidr
s@DeprovisionByoipCidr' {} Text
a -> DeprovisionByoipCidr
s {$sel:cidr:DeprovisionByoipCidr' :: Text
cidr = Text
a} :: DeprovisionByoipCidr)
instance Core.AWSRequest DeprovisionByoipCidr where
type
AWSResponse DeprovisionByoipCidr =
DeprovisionByoipCidrResponse
request :: (Service -> Service)
-> DeprovisionByoipCidr -> Request DeprovisionByoipCidr
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 DeprovisionByoipCidr
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DeprovisionByoipCidr)))
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 ByoipCidr -> Int -> DeprovisionByoipCidrResponse
DeprovisionByoipCidrResponse'
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
"ByoipCidr")
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 DeprovisionByoipCidr where
hashWithSalt :: Int -> DeprovisionByoipCidr -> Int
hashWithSalt Int
_salt DeprovisionByoipCidr' {Text
cidr :: Text
$sel:cidr:DeprovisionByoipCidr' :: DeprovisionByoipCidr -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
cidr
instance Prelude.NFData DeprovisionByoipCidr where
rnf :: DeprovisionByoipCidr -> ()
rnf DeprovisionByoipCidr' {Text
cidr :: Text
$sel:cidr:DeprovisionByoipCidr' :: DeprovisionByoipCidr -> Text
..} = forall a. NFData a => a -> ()
Prelude.rnf Text
cidr
instance Data.ToHeaders DeprovisionByoipCidr where
toHeaders :: DeprovisionByoipCidr -> 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
"GlobalAccelerator_V20180706.DeprovisionByoipCidr" ::
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 DeprovisionByoipCidr where
toJSON :: DeprovisionByoipCidr -> Value
toJSON DeprovisionByoipCidr' {Text
cidr :: Text
$sel:cidr:DeprovisionByoipCidr' :: DeprovisionByoipCidr -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[forall a. a -> Maybe a
Prelude.Just (Key
"Cidr" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
cidr)]
)
instance Data.ToPath DeprovisionByoipCidr where
toPath :: DeprovisionByoipCidr -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DeprovisionByoipCidr where
toQuery :: DeprovisionByoipCidr -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeprovisionByoipCidrResponse = DeprovisionByoipCidrResponse'
{
DeprovisionByoipCidrResponse -> Maybe ByoipCidr
byoipCidr :: Prelude.Maybe ByoipCidr,
DeprovisionByoipCidrResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeprovisionByoipCidrResponse
-> DeprovisionByoipCidrResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeprovisionByoipCidrResponse
-> DeprovisionByoipCidrResponse -> Bool
$c/= :: DeprovisionByoipCidrResponse
-> DeprovisionByoipCidrResponse -> Bool
== :: DeprovisionByoipCidrResponse
-> DeprovisionByoipCidrResponse -> Bool
$c== :: DeprovisionByoipCidrResponse
-> DeprovisionByoipCidrResponse -> Bool
Prelude.Eq, ReadPrec [DeprovisionByoipCidrResponse]
ReadPrec DeprovisionByoipCidrResponse
Int -> ReadS DeprovisionByoipCidrResponse
ReadS [DeprovisionByoipCidrResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeprovisionByoipCidrResponse]
$creadListPrec :: ReadPrec [DeprovisionByoipCidrResponse]
readPrec :: ReadPrec DeprovisionByoipCidrResponse
$creadPrec :: ReadPrec DeprovisionByoipCidrResponse
readList :: ReadS [DeprovisionByoipCidrResponse]
$creadList :: ReadS [DeprovisionByoipCidrResponse]
readsPrec :: Int -> ReadS DeprovisionByoipCidrResponse
$creadsPrec :: Int -> ReadS DeprovisionByoipCidrResponse
Prelude.Read, Int -> DeprovisionByoipCidrResponse -> ShowS
[DeprovisionByoipCidrResponse] -> ShowS
DeprovisionByoipCidrResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeprovisionByoipCidrResponse] -> ShowS
$cshowList :: [DeprovisionByoipCidrResponse] -> ShowS
show :: DeprovisionByoipCidrResponse -> String
$cshow :: DeprovisionByoipCidrResponse -> String
showsPrec :: Int -> DeprovisionByoipCidrResponse -> ShowS
$cshowsPrec :: Int -> DeprovisionByoipCidrResponse -> ShowS
Prelude.Show, forall x.
Rep DeprovisionByoipCidrResponse x -> DeprovisionByoipCidrResponse
forall x.
DeprovisionByoipCidrResponse -> Rep DeprovisionByoipCidrResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeprovisionByoipCidrResponse x -> DeprovisionByoipCidrResponse
$cfrom :: forall x.
DeprovisionByoipCidrResponse -> Rep DeprovisionByoipCidrResponse x
Prelude.Generic)
newDeprovisionByoipCidrResponse ::
Prelude.Int ->
DeprovisionByoipCidrResponse
newDeprovisionByoipCidrResponse :: Int -> DeprovisionByoipCidrResponse
newDeprovisionByoipCidrResponse Int
pHttpStatus_ =
DeprovisionByoipCidrResponse'
{ $sel:byoipCidr:DeprovisionByoipCidrResponse' :: Maybe ByoipCidr
byoipCidr =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DeprovisionByoipCidrResponse' :: Int
httpStatus = Int
pHttpStatus_
}
deprovisionByoipCidrResponse_byoipCidr :: Lens.Lens' DeprovisionByoipCidrResponse (Prelude.Maybe ByoipCidr)
deprovisionByoipCidrResponse_byoipCidr :: Lens' DeprovisionByoipCidrResponse (Maybe ByoipCidr)
deprovisionByoipCidrResponse_byoipCidr = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeprovisionByoipCidrResponse' {Maybe ByoipCidr
byoipCidr :: Maybe ByoipCidr
$sel:byoipCidr:DeprovisionByoipCidrResponse' :: DeprovisionByoipCidrResponse -> Maybe ByoipCidr
byoipCidr} -> Maybe ByoipCidr
byoipCidr) (\s :: DeprovisionByoipCidrResponse
s@DeprovisionByoipCidrResponse' {} Maybe ByoipCidr
a -> DeprovisionByoipCidrResponse
s {$sel:byoipCidr:DeprovisionByoipCidrResponse' :: Maybe ByoipCidr
byoipCidr = Maybe ByoipCidr
a} :: DeprovisionByoipCidrResponse)
deprovisionByoipCidrResponse_httpStatus :: Lens.Lens' DeprovisionByoipCidrResponse Prelude.Int
deprovisionByoipCidrResponse_httpStatus :: Lens' DeprovisionByoipCidrResponse Int
deprovisionByoipCidrResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeprovisionByoipCidrResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeprovisionByoipCidrResponse' :: DeprovisionByoipCidrResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeprovisionByoipCidrResponse
s@DeprovisionByoipCidrResponse' {} Int
a -> DeprovisionByoipCidrResponse
s {$sel:httpStatus:DeprovisionByoipCidrResponse' :: Int
httpStatus = Int
a} :: DeprovisionByoipCidrResponse)
instance Prelude.NFData DeprovisionByoipCidrResponse where
rnf :: DeprovisionByoipCidrResponse -> ()
rnf DeprovisionByoipCidrResponse' {Int
Maybe ByoipCidr
httpStatus :: Int
byoipCidr :: Maybe ByoipCidr
$sel:httpStatus:DeprovisionByoipCidrResponse' :: DeprovisionByoipCidrResponse -> Int
$sel:byoipCidr:DeprovisionByoipCidrResponse' :: DeprovisionByoipCidrResponse -> Maybe ByoipCidr
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe ByoipCidr
byoipCidr
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus