{-# 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.Connect.ReleasePhoneNumber
(
ReleasePhoneNumber (..),
newReleasePhoneNumber,
releasePhoneNumber_clientToken,
releasePhoneNumber_phoneNumberId,
ReleasePhoneNumberResponse (..),
newReleasePhoneNumberResponse,
)
where
import Amazonka.Connect.Types
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
data ReleasePhoneNumber = ReleasePhoneNumber'
{
ReleasePhoneNumber -> Maybe Text
clientToken :: Prelude.Maybe Prelude.Text,
ReleasePhoneNumber -> Text
phoneNumberId :: Prelude.Text
}
deriving (ReleasePhoneNumber -> ReleasePhoneNumber -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ReleasePhoneNumber -> ReleasePhoneNumber -> Bool
$c/= :: ReleasePhoneNumber -> ReleasePhoneNumber -> Bool
== :: ReleasePhoneNumber -> ReleasePhoneNumber -> Bool
$c== :: ReleasePhoneNumber -> ReleasePhoneNumber -> Bool
Prelude.Eq, ReadPrec [ReleasePhoneNumber]
ReadPrec ReleasePhoneNumber
Int -> ReadS ReleasePhoneNumber
ReadS [ReleasePhoneNumber]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ReleasePhoneNumber]
$creadListPrec :: ReadPrec [ReleasePhoneNumber]
readPrec :: ReadPrec ReleasePhoneNumber
$creadPrec :: ReadPrec ReleasePhoneNumber
readList :: ReadS [ReleasePhoneNumber]
$creadList :: ReadS [ReleasePhoneNumber]
readsPrec :: Int -> ReadS ReleasePhoneNumber
$creadsPrec :: Int -> ReadS ReleasePhoneNumber
Prelude.Read, Int -> ReleasePhoneNumber -> ShowS
[ReleasePhoneNumber] -> ShowS
ReleasePhoneNumber -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ReleasePhoneNumber] -> ShowS
$cshowList :: [ReleasePhoneNumber] -> ShowS
show :: ReleasePhoneNumber -> String
$cshow :: ReleasePhoneNumber -> String
showsPrec :: Int -> ReleasePhoneNumber -> ShowS
$cshowsPrec :: Int -> ReleasePhoneNumber -> ShowS
Prelude.Show, forall x. Rep ReleasePhoneNumber x -> ReleasePhoneNumber
forall x. ReleasePhoneNumber -> Rep ReleasePhoneNumber x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ReleasePhoneNumber x -> ReleasePhoneNumber
$cfrom :: forall x. ReleasePhoneNumber -> Rep ReleasePhoneNumber x
Prelude.Generic)
newReleasePhoneNumber ::
Prelude.Text ->
ReleasePhoneNumber
newReleasePhoneNumber :: Text -> ReleasePhoneNumber
newReleasePhoneNumber Text
pPhoneNumberId_ =
ReleasePhoneNumber'
{ $sel:clientToken:ReleasePhoneNumber' :: Maybe Text
clientToken = forall a. Maybe a
Prelude.Nothing,
$sel:phoneNumberId:ReleasePhoneNumber' :: Text
phoneNumberId = Text
pPhoneNumberId_
}
releasePhoneNumber_clientToken :: Lens.Lens' ReleasePhoneNumber (Prelude.Maybe Prelude.Text)
releasePhoneNumber_clientToken :: Lens' ReleasePhoneNumber (Maybe Text)
releasePhoneNumber_clientToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReleasePhoneNumber' {Maybe Text
clientToken :: Maybe Text
$sel:clientToken:ReleasePhoneNumber' :: ReleasePhoneNumber -> Maybe Text
clientToken} -> Maybe Text
clientToken) (\s :: ReleasePhoneNumber
s@ReleasePhoneNumber' {} Maybe Text
a -> ReleasePhoneNumber
s {$sel:clientToken:ReleasePhoneNumber' :: Maybe Text
clientToken = Maybe Text
a} :: ReleasePhoneNumber)
releasePhoneNumber_phoneNumberId :: Lens.Lens' ReleasePhoneNumber Prelude.Text
releasePhoneNumber_phoneNumberId :: Lens' ReleasePhoneNumber Text
releasePhoneNumber_phoneNumberId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReleasePhoneNumber' {Text
phoneNumberId :: Text
$sel:phoneNumberId:ReleasePhoneNumber' :: ReleasePhoneNumber -> Text
phoneNumberId} -> Text
phoneNumberId) (\s :: ReleasePhoneNumber
s@ReleasePhoneNumber' {} Text
a -> ReleasePhoneNumber
s {$sel:phoneNumberId:ReleasePhoneNumber' :: Text
phoneNumberId = Text
a} :: ReleasePhoneNumber)
instance Core.AWSRequest ReleasePhoneNumber where
type
AWSResponse ReleasePhoneNumber =
ReleasePhoneNumberResponse
request :: (Service -> Service)
-> ReleasePhoneNumber -> Request ReleasePhoneNumber
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 ReleasePhoneNumber
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse ReleasePhoneNumber)))
response =
forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull ReleasePhoneNumberResponse
ReleasePhoneNumberResponse'
instance Prelude.Hashable ReleasePhoneNumber where
hashWithSalt :: Int -> ReleasePhoneNumber -> Int
hashWithSalt Int
_salt ReleasePhoneNumber' {Maybe Text
Text
phoneNumberId :: Text
clientToken :: Maybe Text
$sel:phoneNumberId:ReleasePhoneNumber' :: ReleasePhoneNumber -> Text
$sel:clientToken:ReleasePhoneNumber' :: ReleasePhoneNumber -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
clientToken
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
phoneNumberId
instance Prelude.NFData ReleasePhoneNumber where
rnf :: ReleasePhoneNumber -> ()
rnf ReleasePhoneNumber' {Maybe Text
Text
phoneNumberId :: Text
clientToken :: Maybe Text
$sel:phoneNumberId:ReleasePhoneNumber' :: ReleasePhoneNumber -> Text
$sel:clientToken:ReleasePhoneNumber' :: ReleasePhoneNumber -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
clientToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
phoneNumberId
instance Data.ToHeaders ReleasePhoneNumber where
toHeaders :: ReleasePhoneNumber -> [Header]
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 -> [Header]
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToPath ReleasePhoneNumber where
toPath :: ReleasePhoneNumber -> ByteString
toPath ReleasePhoneNumber' {Maybe Text
Text
phoneNumberId :: Text
clientToken :: Maybe Text
$sel:phoneNumberId:ReleasePhoneNumber' :: ReleasePhoneNumber -> Text
$sel:clientToken:ReleasePhoneNumber' :: ReleasePhoneNumber -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"/phone-number/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
phoneNumberId]
instance Data.ToQuery ReleasePhoneNumber where
toQuery :: ReleasePhoneNumber -> QueryString
toQuery ReleasePhoneNumber' {Maybe Text
Text
phoneNumberId :: Text
clientToken :: Maybe Text
$sel:phoneNumberId:ReleasePhoneNumber' :: ReleasePhoneNumber -> Text
$sel:clientToken:ReleasePhoneNumber' :: ReleasePhoneNumber -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat [ByteString
"clientToken" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
clientToken]
data ReleasePhoneNumberResponse = ReleasePhoneNumberResponse'
{
}
deriving (ReleasePhoneNumberResponse -> ReleasePhoneNumberResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ReleasePhoneNumberResponse -> ReleasePhoneNumberResponse -> Bool
$c/= :: ReleasePhoneNumberResponse -> ReleasePhoneNumberResponse -> Bool
== :: ReleasePhoneNumberResponse -> ReleasePhoneNumberResponse -> Bool
$c== :: ReleasePhoneNumberResponse -> ReleasePhoneNumberResponse -> Bool
Prelude.Eq, ReadPrec [ReleasePhoneNumberResponse]
ReadPrec ReleasePhoneNumberResponse
Int -> ReadS ReleasePhoneNumberResponse
ReadS [ReleasePhoneNumberResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ReleasePhoneNumberResponse]
$creadListPrec :: ReadPrec [ReleasePhoneNumberResponse]
readPrec :: ReadPrec ReleasePhoneNumberResponse
$creadPrec :: ReadPrec ReleasePhoneNumberResponse
readList :: ReadS [ReleasePhoneNumberResponse]
$creadList :: ReadS [ReleasePhoneNumberResponse]
readsPrec :: Int -> ReadS ReleasePhoneNumberResponse
$creadsPrec :: Int -> ReadS ReleasePhoneNumberResponse
Prelude.Read, Int -> ReleasePhoneNumberResponse -> ShowS
[ReleasePhoneNumberResponse] -> ShowS
ReleasePhoneNumberResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ReleasePhoneNumberResponse] -> ShowS
$cshowList :: [ReleasePhoneNumberResponse] -> ShowS
show :: ReleasePhoneNumberResponse -> String
$cshow :: ReleasePhoneNumberResponse -> String
showsPrec :: Int -> ReleasePhoneNumberResponse -> ShowS
$cshowsPrec :: Int -> ReleasePhoneNumberResponse -> ShowS
Prelude.Show, forall x.
Rep ReleasePhoneNumberResponse x -> ReleasePhoneNumberResponse
forall x.
ReleasePhoneNumberResponse -> Rep ReleasePhoneNumberResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ReleasePhoneNumberResponse x -> ReleasePhoneNumberResponse
$cfrom :: forall x.
ReleasePhoneNumberResponse -> Rep ReleasePhoneNumberResponse x
Prelude.Generic)
newReleasePhoneNumberResponse ::
ReleasePhoneNumberResponse
newReleasePhoneNumberResponse :: ReleasePhoneNumberResponse
newReleasePhoneNumberResponse =
ReleasePhoneNumberResponse
ReleasePhoneNumberResponse'
instance Prelude.NFData ReleasePhoneNumberResponse where
rnf :: ReleasePhoneNumberResponse -> ()
rnf ReleasePhoneNumberResponse
_ = ()