{-# 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.UpdateQueueStatus
(
UpdateQueueStatus (..),
newUpdateQueueStatus,
updateQueueStatus_instanceId,
updateQueueStatus_queueId,
updateQueueStatus_status,
UpdateQueueStatusResponse (..),
newUpdateQueueStatusResponse,
)
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 UpdateQueueStatus = UpdateQueueStatus'
{
UpdateQueueStatus -> Text
instanceId :: Prelude.Text,
UpdateQueueStatus -> Text
queueId :: Prelude.Text,
UpdateQueueStatus -> QueueStatus
status :: QueueStatus
}
deriving (UpdateQueueStatus -> UpdateQueueStatus -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateQueueStatus -> UpdateQueueStatus -> Bool
$c/= :: UpdateQueueStatus -> UpdateQueueStatus -> Bool
== :: UpdateQueueStatus -> UpdateQueueStatus -> Bool
$c== :: UpdateQueueStatus -> UpdateQueueStatus -> Bool
Prelude.Eq, ReadPrec [UpdateQueueStatus]
ReadPrec UpdateQueueStatus
Int -> ReadS UpdateQueueStatus
ReadS [UpdateQueueStatus]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateQueueStatus]
$creadListPrec :: ReadPrec [UpdateQueueStatus]
readPrec :: ReadPrec UpdateQueueStatus
$creadPrec :: ReadPrec UpdateQueueStatus
readList :: ReadS [UpdateQueueStatus]
$creadList :: ReadS [UpdateQueueStatus]
readsPrec :: Int -> ReadS UpdateQueueStatus
$creadsPrec :: Int -> ReadS UpdateQueueStatus
Prelude.Read, Int -> UpdateQueueStatus -> ShowS
[UpdateQueueStatus] -> ShowS
UpdateQueueStatus -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateQueueStatus] -> ShowS
$cshowList :: [UpdateQueueStatus] -> ShowS
show :: UpdateQueueStatus -> String
$cshow :: UpdateQueueStatus -> String
showsPrec :: Int -> UpdateQueueStatus -> ShowS
$cshowsPrec :: Int -> UpdateQueueStatus -> ShowS
Prelude.Show, forall x. Rep UpdateQueueStatus x -> UpdateQueueStatus
forall x. UpdateQueueStatus -> Rep UpdateQueueStatus x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep UpdateQueueStatus x -> UpdateQueueStatus
$cfrom :: forall x. UpdateQueueStatus -> Rep UpdateQueueStatus x
Prelude.Generic)
newUpdateQueueStatus ::
Prelude.Text ->
Prelude.Text ->
QueueStatus ->
UpdateQueueStatus
newUpdateQueueStatus :: Text -> Text -> QueueStatus -> UpdateQueueStatus
newUpdateQueueStatus Text
pInstanceId_ Text
pQueueId_ QueueStatus
pStatus_ =
UpdateQueueStatus'
{ $sel:instanceId:UpdateQueueStatus' :: Text
instanceId = Text
pInstanceId_,
$sel:queueId:UpdateQueueStatus' :: Text
queueId = Text
pQueueId_,
$sel:status:UpdateQueueStatus' :: QueueStatus
status = QueueStatus
pStatus_
}
updateQueueStatus_instanceId :: Lens.Lens' UpdateQueueStatus Prelude.Text
updateQueueStatus_instanceId :: Lens' UpdateQueueStatus Text
updateQueueStatus_instanceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateQueueStatus' {Text
instanceId :: Text
$sel:instanceId:UpdateQueueStatus' :: UpdateQueueStatus -> Text
instanceId} -> Text
instanceId) (\s :: UpdateQueueStatus
s@UpdateQueueStatus' {} Text
a -> UpdateQueueStatus
s {$sel:instanceId:UpdateQueueStatus' :: Text
instanceId = Text
a} :: UpdateQueueStatus)
updateQueueStatus_queueId :: Lens.Lens' UpdateQueueStatus Prelude.Text
updateQueueStatus_queueId :: Lens' UpdateQueueStatus Text
updateQueueStatus_queueId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateQueueStatus' {Text
queueId :: Text
$sel:queueId:UpdateQueueStatus' :: UpdateQueueStatus -> Text
queueId} -> Text
queueId) (\s :: UpdateQueueStatus
s@UpdateQueueStatus' {} Text
a -> UpdateQueueStatus
s {$sel:queueId:UpdateQueueStatus' :: Text
queueId = Text
a} :: UpdateQueueStatus)
updateQueueStatus_status :: Lens.Lens' UpdateQueueStatus QueueStatus
updateQueueStatus_status :: Lens' UpdateQueueStatus QueueStatus
updateQueueStatus_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateQueueStatus' {QueueStatus
status :: QueueStatus
$sel:status:UpdateQueueStatus' :: UpdateQueueStatus -> QueueStatus
status} -> QueueStatus
status) (\s :: UpdateQueueStatus
s@UpdateQueueStatus' {} QueueStatus
a -> UpdateQueueStatus
s {$sel:status:UpdateQueueStatus' :: QueueStatus
status = QueueStatus
a} :: UpdateQueueStatus)
instance Core.AWSRequest UpdateQueueStatus where
type
AWSResponse UpdateQueueStatus =
UpdateQueueStatusResponse
request :: (Service -> Service)
-> UpdateQueueStatus -> Request UpdateQueueStatus
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 UpdateQueueStatus
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse UpdateQueueStatus)))
response =
forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull UpdateQueueStatusResponse
UpdateQueueStatusResponse'
instance Prelude.Hashable UpdateQueueStatus where
hashWithSalt :: Int -> UpdateQueueStatus -> Int
hashWithSalt Int
_salt UpdateQueueStatus' {Text
QueueStatus
status :: QueueStatus
queueId :: Text
instanceId :: Text
$sel:status:UpdateQueueStatus' :: UpdateQueueStatus -> QueueStatus
$sel:queueId:UpdateQueueStatus' :: UpdateQueueStatus -> Text
$sel:instanceId:UpdateQueueStatus' :: UpdateQueueStatus -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
instanceId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
queueId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` QueueStatus
status
instance Prelude.NFData UpdateQueueStatus where
rnf :: UpdateQueueStatus -> ()
rnf UpdateQueueStatus' {Text
QueueStatus
status :: QueueStatus
queueId :: Text
instanceId :: Text
$sel:status:UpdateQueueStatus' :: UpdateQueueStatus -> QueueStatus
$sel:queueId:UpdateQueueStatus' :: UpdateQueueStatus -> Text
$sel:instanceId:UpdateQueueStatus' :: UpdateQueueStatus -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
instanceId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
queueId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf QueueStatus
status
instance Data.ToHeaders UpdateQueueStatus where
toHeaders :: UpdateQueueStatus -> [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.ToJSON UpdateQueueStatus where
toJSON :: UpdateQueueStatus -> Value
toJSON UpdateQueueStatus' {Text
QueueStatus
status :: QueueStatus
queueId :: Text
instanceId :: Text
$sel:status:UpdateQueueStatus' :: UpdateQueueStatus -> QueueStatus
$sel:queueId:UpdateQueueStatus' :: UpdateQueueStatus -> Text
$sel:instanceId:UpdateQueueStatus' :: UpdateQueueStatus -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[forall a. a -> Maybe a
Prelude.Just (Key
"Status" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= QueueStatus
status)]
)
instance Data.ToPath UpdateQueueStatus where
toPath :: UpdateQueueStatus -> ByteString
toPath UpdateQueueStatus' {Text
QueueStatus
status :: QueueStatus
queueId :: Text
instanceId :: Text
$sel:status:UpdateQueueStatus' :: UpdateQueueStatus -> QueueStatus
$sel:queueId:UpdateQueueStatus' :: UpdateQueueStatus -> Text
$sel:instanceId:UpdateQueueStatus' :: UpdateQueueStatus -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/queues/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
instanceId,
ByteString
"/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
queueId,
ByteString
"/status"
]
instance Data.ToQuery UpdateQueueStatus where
toQuery :: UpdateQueueStatus -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data UpdateQueueStatusResponse = UpdateQueueStatusResponse'
{
}
deriving (UpdateQueueStatusResponse -> UpdateQueueStatusResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateQueueStatusResponse -> UpdateQueueStatusResponse -> Bool
$c/= :: UpdateQueueStatusResponse -> UpdateQueueStatusResponse -> Bool
== :: UpdateQueueStatusResponse -> UpdateQueueStatusResponse -> Bool
$c== :: UpdateQueueStatusResponse -> UpdateQueueStatusResponse -> Bool
Prelude.Eq, ReadPrec [UpdateQueueStatusResponse]
ReadPrec UpdateQueueStatusResponse
Int -> ReadS UpdateQueueStatusResponse
ReadS [UpdateQueueStatusResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateQueueStatusResponse]
$creadListPrec :: ReadPrec [UpdateQueueStatusResponse]
readPrec :: ReadPrec UpdateQueueStatusResponse
$creadPrec :: ReadPrec UpdateQueueStatusResponse
readList :: ReadS [UpdateQueueStatusResponse]
$creadList :: ReadS [UpdateQueueStatusResponse]
readsPrec :: Int -> ReadS UpdateQueueStatusResponse
$creadsPrec :: Int -> ReadS UpdateQueueStatusResponse
Prelude.Read, Int -> UpdateQueueStatusResponse -> ShowS
[UpdateQueueStatusResponse] -> ShowS
UpdateQueueStatusResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateQueueStatusResponse] -> ShowS
$cshowList :: [UpdateQueueStatusResponse] -> ShowS
show :: UpdateQueueStatusResponse -> String
$cshow :: UpdateQueueStatusResponse -> String
showsPrec :: Int -> UpdateQueueStatusResponse -> ShowS
$cshowsPrec :: Int -> UpdateQueueStatusResponse -> ShowS
Prelude.Show, forall x.
Rep UpdateQueueStatusResponse x -> UpdateQueueStatusResponse
forall x.
UpdateQueueStatusResponse -> Rep UpdateQueueStatusResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep UpdateQueueStatusResponse x -> UpdateQueueStatusResponse
$cfrom :: forall x.
UpdateQueueStatusResponse -> Rep UpdateQueueStatusResponse x
Prelude.Generic)
newUpdateQueueStatusResponse ::
UpdateQueueStatusResponse
newUpdateQueueStatusResponse :: UpdateQueueStatusResponse
newUpdateQueueStatusResponse =
UpdateQueueStatusResponse
UpdateQueueStatusResponse'
instance Prelude.NFData UpdateQueueStatusResponse where
rnf :: UpdateQueueStatusResponse -> ()
rnf UpdateQueueStatusResponse
_ = ()