{-# 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.Chime.UntagMeeting
(
UntagMeeting (..),
newUntagMeeting,
untagMeeting_meetingId,
untagMeeting_tagKeys,
UntagMeetingResponse (..),
newUntagMeetingResponse,
)
where
import Amazonka.Chime.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 UntagMeeting = UntagMeeting'
{
UntagMeeting -> Text
meetingId :: Prelude.Text,
UntagMeeting -> NonEmpty (Sensitive Text)
tagKeys :: Prelude.NonEmpty (Data.Sensitive Prelude.Text)
}
deriving (UntagMeeting -> UntagMeeting -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UntagMeeting -> UntagMeeting -> Bool
$c/= :: UntagMeeting -> UntagMeeting -> Bool
== :: UntagMeeting -> UntagMeeting -> Bool
$c== :: UntagMeeting -> UntagMeeting -> Bool
Prelude.Eq, Int -> UntagMeeting -> ShowS
[UntagMeeting] -> ShowS
UntagMeeting -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UntagMeeting] -> ShowS
$cshowList :: [UntagMeeting] -> ShowS
show :: UntagMeeting -> String
$cshow :: UntagMeeting -> String
showsPrec :: Int -> UntagMeeting -> ShowS
$cshowsPrec :: Int -> UntagMeeting -> ShowS
Prelude.Show, forall x. Rep UntagMeeting x -> UntagMeeting
forall x. UntagMeeting -> Rep UntagMeeting x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep UntagMeeting x -> UntagMeeting
$cfrom :: forall x. UntagMeeting -> Rep UntagMeeting x
Prelude.Generic)
newUntagMeeting ::
Prelude.Text ->
Prelude.NonEmpty Prelude.Text ->
UntagMeeting
newUntagMeeting :: Text -> NonEmpty Text -> UntagMeeting
newUntagMeeting Text
pMeetingId_ NonEmpty Text
pTagKeys_ =
UntagMeeting'
{ $sel:meetingId:UntagMeeting' :: Text
meetingId = Text
pMeetingId_,
$sel:tagKeys:UntagMeeting' :: NonEmpty (Sensitive Text)
tagKeys = forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced forall t b. AReview t b -> b -> t
Lens.# NonEmpty Text
pTagKeys_
}
untagMeeting_meetingId :: Lens.Lens' UntagMeeting Prelude.Text
untagMeeting_meetingId :: Lens' UntagMeeting Text
untagMeeting_meetingId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UntagMeeting' {Text
meetingId :: Text
$sel:meetingId:UntagMeeting' :: UntagMeeting -> Text
meetingId} -> Text
meetingId) (\s :: UntagMeeting
s@UntagMeeting' {} Text
a -> UntagMeeting
s {$sel:meetingId:UntagMeeting' :: Text
meetingId = Text
a} :: UntagMeeting)
untagMeeting_tagKeys :: Lens.Lens' UntagMeeting (Prelude.NonEmpty Prelude.Text)
untagMeeting_tagKeys :: Lens' UntagMeeting (NonEmpty Text)
untagMeeting_tagKeys = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UntagMeeting' {NonEmpty (Sensitive Text)
tagKeys :: NonEmpty (Sensitive Text)
$sel:tagKeys:UntagMeeting' :: UntagMeeting -> NonEmpty (Sensitive Text)
tagKeys} -> NonEmpty (Sensitive Text)
tagKeys) (\s :: UntagMeeting
s@UntagMeeting' {} NonEmpty (Sensitive Text)
a -> UntagMeeting
s {$sel:tagKeys:UntagMeeting' :: NonEmpty (Sensitive Text)
tagKeys = NonEmpty (Sensitive Text)
a} :: UntagMeeting) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instance Core.AWSRequest UntagMeeting where
type AWSResponse UntagMeeting = UntagMeetingResponse
request :: (Service -> Service) -> UntagMeeting -> Request UntagMeeting
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 UntagMeeting
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse UntagMeeting)))
response = forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull UntagMeetingResponse
UntagMeetingResponse'
instance Prelude.Hashable UntagMeeting where
hashWithSalt :: Int -> UntagMeeting -> Int
hashWithSalt Int
_salt UntagMeeting' {NonEmpty (Sensitive Text)
Text
tagKeys :: NonEmpty (Sensitive Text)
meetingId :: Text
$sel:tagKeys:UntagMeeting' :: UntagMeeting -> NonEmpty (Sensitive Text)
$sel:meetingId:UntagMeeting' :: UntagMeeting -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
meetingId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` NonEmpty (Sensitive Text)
tagKeys
instance Prelude.NFData UntagMeeting where
rnf :: UntagMeeting -> ()
rnf UntagMeeting' {NonEmpty (Sensitive Text)
Text
tagKeys :: NonEmpty (Sensitive Text)
meetingId :: Text
$sel:tagKeys:UntagMeeting' :: UntagMeeting -> NonEmpty (Sensitive Text)
$sel:meetingId:UntagMeeting' :: UntagMeeting -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
meetingId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf NonEmpty (Sensitive Text)
tagKeys
instance Data.ToHeaders UntagMeeting where
toHeaders :: UntagMeeting -> [Header]
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToJSON UntagMeeting where
toJSON :: UntagMeeting -> Value
toJSON UntagMeeting' {NonEmpty (Sensitive Text)
Text
tagKeys :: NonEmpty (Sensitive Text)
meetingId :: Text
$sel:tagKeys:UntagMeeting' :: UntagMeeting -> NonEmpty (Sensitive Text)
$sel:meetingId:UntagMeeting' :: UntagMeeting -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[forall a. a -> Maybe a
Prelude.Just (Key
"TagKeys" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= NonEmpty (Sensitive Text)
tagKeys)]
)
instance Data.ToPath UntagMeeting where
toPath :: UntagMeeting -> ByteString
toPath UntagMeeting' {NonEmpty (Sensitive Text)
Text
tagKeys :: NonEmpty (Sensitive Text)
meetingId :: Text
$sel:tagKeys:UntagMeeting' :: UntagMeeting -> NonEmpty (Sensitive Text)
$sel:meetingId:UntagMeeting' :: UntagMeeting -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"/meetings/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
meetingId, ByteString
"/tags"]
instance Data.ToQuery UntagMeeting where
toQuery :: UntagMeeting -> QueryString
toQuery =
forall a b. a -> b -> a
Prelude.const
(forall a. Monoid a => [a] -> a
Prelude.mconcat [QueryString
"operation=delete"])
data UntagMeetingResponse = UntagMeetingResponse'
{
}
deriving (UntagMeetingResponse -> UntagMeetingResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UntagMeetingResponse -> UntagMeetingResponse -> Bool
$c/= :: UntagMeetingResponse -> UntagMeetingResponse -> Bool
== :: UntagMeetingResponse -> UntagMeetingResponse -> Bool
$c== :: UntagMeetingResponse -> UntagMeetingResponse -> Bool
Prelude.Eq, ReadPrec [UntagMeetingResponse]
ReadPrec UntagMeetingResponse
Int -> ReadS UntagMeetingResponse
ReadS [UntagMeetingResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UntagMeetingResponse]
$creadListPrec :: ReadPrec [UntagMeetingResponse]
readPrec :: ReadPrec UntagMeetingResponse
$creadPrec :: ReadPrec UntagMeetingResponse
readList :: ReadS [UntagMeetingResponse]
$creadList :: ReadS [UntagMeetingResponse]
readsPrec :: Int -> ReadS UntagMeetingResponse
$creadsPrec :: Int -> ReadS UntagMeetingResponse
Prelude.Read, Int -> UntagMeetingResponse -> ShowS
[UntagMeetingResponse] -> ShowS
UntagMeetingResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UntagMeetingResponse] -> ShowS
$cshowList :: [UntagMeetingResponse] -> ShowS
show :: UntagMeetingResponse -> String
$cshow :: UntagMeetingResponse -> String
showsPrec :: Int -> UntagMeetingResponse -> ShowS
$cshowsPrec :: Int -> UntagMeetingResponse -> ShowS
Prelude.Show, forall x. Rep UntagMeetingResponse x -> UntagMeetingResponse
forall x. UntagMeetingResponse -> Rep UntagMeetingResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep UntagMeetingResponse x -> UntagMeetingResponse
$cfrom :: forall x. UntagMeetingResponse -> Rep UntagMeetingResponse x
Prelude.Generic)
newUntagMeetingResponse ::
UntagMeetingResponse
newUntagMeetingResponse :: UntagMeetingResponse
newUntagMeetingResponse = UntagMeetingResponse
UntagMeetingResponse'
instance Prelude.NFData UntagMeetingResponse where
rnf :: UntagMeetingResponse -> ()
rnf UntagMeetingResponse
_ = ()