{-# 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.UpdateAgentStatus
(
UpdateAgentStatus (..),
newUpdateAgentStatus,
updateAgentStatus_description,
updateAgentStatus_displayOrder,
updateAgentStatus_name,
updateAgentStatus_resetOrderNumber,
updateAgentStatus_state,
updateAgentStatus_instanceId,
updateAgentStatus_agentStatusId,
UpdateAgentStatusResponse (..),
newUpdateAgentStatusResponse,
)
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 UpdateAgentStatus = UpdateAgentStatus'
{
UpdateAgentStatus -> Maybe Text
description :: Prelude.Maybe Prelude.Text,
UpdateAgentStatus -> Maybe Natural
displayOrder :: Prelude.Maybe Prelude.Natural,
UpdateAgentStatus -> Maybe Text
name :: Prelude.Maybe Prelude.Text,
UpdateAgentStatus -> Maybe Bool
resetOrderNumber :: Prelude.Maybe Prelude.Bool,
UpdateAgentStatus -> Maybe AgentStatusState
state :: Prelude.Maybe AgentStatusState,
UpdateAgentStatus -> Text
instanceId :: Prelude.Text,
UpdateAgentStatus -> Text
agentStatusId :: Prelude.Text
}
deriving (UpdateAgentStatus -> UpdateAgentStatus -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateAgentStatus -> UpdateAgentStatus -> Bool
$c/= :: UpdateAgentStatus -> UpdateAgentStatus -> Bool
== :: UpdateAgentStatus -> UpdateAgentStatus -> Bool
$c== :: UpdateAgentStatus -> UpdateAgentStatus -> Bool
Prelude.Eq, ReadPrec [UpdateAgentStatus]
ReadPrec UpdateAgentStatus
Int -> ReadS UpdateAgentStatus
ReadS [UpdateAgentStatus]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateAgentStatus]
$creadListPrec :: ReadPrec [UpdateAgentStatus]
readPrec :: ReadPrec UpdateAgentStatus
$creadPrec :: ReadPrec UpdateAgentStatus
readList :: ReadS [UpdateAgentStatus]
$creadList :: ReadS [UpdateAgentStatus]
readsPrec :: Int -> ReadS UpdateAgentStatus
$creadsPrec :: Int -> ReadS UpdateAgentStatus
Prelude.Read, Int -> UpdateAgentStatus -> ShowS
[UpdateAgentStatus] -> ShowS
UpdateAgentStatus -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateAgentStatus] -> ShowS
$cshowList :: [UpdateAgentStatus] -> ShowS
show :: UpdateAgentStatus -> String
$cshow :: UpdateAgentStatus -> String
showsPrec :: Int -> UpdateAgentStatus -> ShowS
$cshowsPrec :: Int -> UpdateAgentStatus -> ShowS
Prelude.Show, forall x. Rep UpdateAgentStatus x -> UpdateAgentStatus
forall x. UpdateAgentStatus -> Rep UpdateAgentStatus x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep UpdateAgentStatus x -> UpdateAgentStatus
$cfrom :: forall x. UpdateAgentStatus -> Rep UpdateAgentStatus x
Prelude.Generic)
newUpdateAgentStatus ::
Prelude.Text ->
Prelude.Text ->
UpdateAgentStatus
newUpdateAgentStatus :: Text -> Text -> UpdateAgentStatus
newUpdateAgentStatus Text
pInstanceId_ Text
pAgentStatusId_ =
UpdateAgentStatus'
{ $sel:description:UpdateAgentStatus' :: Maybe Text
description = forall a. Maybe a
Prelude.Nothing,
$sel:displayOrder:UpdateAgentStatus' :: Maybe Natural
displayOrder = forall a. Maybe a
Prelude.Nothing,
$sel:name:UpdateAgentStatus' :: Maybe Text
name = forall a. Maybe a
Prelude.Nothing,
$sel:resetOrderNumber:UpdateAgentStatus' :: Maybe Bool
resetOrderNumber = forall a. Maybe a
Prelude.Nothing,
$sel:state:UpdateAgentStatus' :: Maybe AgentStatusState
state = forall a. Maybe a
Prelude.Nothing,
$sel:instanceId:UpdateAgentStatus' :: Text
instanceId = Text
pInstanceId_,
$sel:agentStatusId:UpdateAgentStatus' :: Text
agentStatusId = Text
pAgentStatusId_
}
updateAgentStatus_description :: Lens.Lens' UpdateAgentStatus (Prelude.Maybe Prelude.Text)
updateAgentStatus_description :: Lens' UpdateAgentStatus (Maybe Text)
updateAgentStatus_description = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAgentStatus' {Maybe Text
description :: Maybe Text
$sel:description:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Text
description} -> Maybe Text
description) (\s :: UpdateAgentStatus
s@UpdateAgentStatus' {} Maybe Text
a -> UpdateAgentStatus
s {$sel:description:UpdateAgentStatus' :: Maybe Text
description = Maybe Text
a} :: UpdateAgentStatus)
updateAgentStatus_displayOrder :: Lens.Lens' UpdateAgentStatus (Prelude.Maybe Prelude.Natural)
updateAgentStatus_displayOrder :: Lens' UpdateAgentStatus (Maybe Natural)
updateAgentStatus_displayOrder = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAgentStatus' {Maybe Natural
displayOrder :: Maybe Natural
$sel:displayOrder:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Natural
displayOrder} -> Maybe Natural
displayOrder) (\s :: UpdateAgentStatus
s@UpdateAgentStatus' {} Maybe Natural
a -> UpdateAgentStatus
s {$sel:displayOrder:UpdateAgentStatus' :: Maybe Natural
displayOrder = Maybe Natural
a} :: UpdateAgentStatus)
updateAgentStatus_name :: Lens.Lens' UpdateAgentStatus (Prelude.Maybe Prelude.Text)
updateAgentStatus_name :: Lens' UpdateAgentStatus (Maybe Text)
updateAgentStatus_name = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAgentStatus' {Maybe Text
name :: Maybe Text
$sel:name:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Text
name} -> Maybe Text
name) (\s :: UpdateAgentStatus
s@UpdateAgentStatus' {} Maybe Text
a -> UpdateAgentStatus
s {$sel:name:UpdateAgentStatus' :: Maybe Text
name = Maybe Text
a} :: UpdateAgentStatus)
updateAgentStatus_resetOrderNumber :: Lens.Lens' UpdateAgentStatus (Prelude.Maybe Prelude.Bool)
updateAgentStatus_resetOrderNumber :: Lens' UpdateAgentStatus (Maybe Bool)
updateAgentStatus_resetOrderNumber = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAgentStatus' {Maybe Bool
resetOrderNumber :: Maybe Bool
$sel:resetOrderNumber:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Bool
resetOrderNumber} -> Maybe Bool
resetOrderNumber) (\s :: UpdateAgentStatus
s@UpdateAgentStatus' {} Maybe Bool
a -> UpdateAgentStatus
s {$sel:resetOrderNumber:UpdateAgentStatus' :: Maybe Bool
resetOrderNumber = Maybe Bool
a} :: UpdateAgentStatus)
updateAgentStatus_state :: Lens.Lens' UpdateAgentStatus (Prelude.Maybe AgentStatusState)
updateAgentStatus_state :: Lens' UpdateAgentStatus (Maybe AgentStatusState)
updateAgentStatus_state = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAgentStatus' {Maybe AgentStatusState
state :: Maybe AgentStatusState
$sel:state:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe AgentStatusState
state} -> Maybe AgentStatusState
state) (\s :: UpdateAgentStatus
s@UpdateAgentStatus' {} Maybe AgentStatusState
a -> UpdateAgentStatus
s {$sel:state:UpdateAgentStatus' :: Maybe AgentStatusState
state = Maybe AgentStatusState
a} :: UpdateAgentStatus)
updateAgentStatus_instanceId :: Lens.Lens' UpdateAgentStatus Prelude.Text
updateAgentStatus_instanceId :: Lens' UpdateAgentStatus Text
updateAgentStatus_instanceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAgentStatus' {Text
instanceId :: Text
$sel:instanceId:UpdateAgentStatus' :: UpdateAgentStatus -> Text
instanceId} -> Text
instanceId) (\s :: UpdateAgentStatus
s@UpdateAgentStatus' {} Text
a -> UpdateAgentStatus
s {$sel:instanceId:UpdateAgentStatus' :: Text
instanceId = Text
a} :: UpdateAgentStatus)
updateAgentStatus_agentStatusId :: Lens.Lens' UpdateAgentStatus Prelude.Text
updateAgentStatus_agentStatusId :: Lens' UpdateAgentStatus Text
updateAgentStatus_agentStatusId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateAgentStatus' {Text
agentStatusId :: Text
$sel:agentStatusId:UpdateAgentStatus' :: UpdateAgentStatus -> Text
agentStatusId} -> Text
agentStatusId) (\s :: UpdateAgentStatus
s@UpdateAgentStatus' {} Text
a -> UpdateAgentStatus
s {$sel:agentStatusId:UpdateAgentStatus' :: Text
agentStatusId = Text
a} :: UpdateAgentStatus)
instance Core.AWSRequest UpdateAgentStatus where
type
AWSResponse UpdateAgentStatus =
UpdateAgentStatusResponse
request :: (Service -> Service)
-> UpdateAgentStatus -> Request UpdateAgentStatus
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 UpdateAgentStatus
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse UpdateAgentStatus)))
response =
forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull UpdateAgentStatusResponse
UpdateAgentStatusResponse'
instance Prelude.Hashable UpdateAgentStatus where
hashWithSalt :: Int -> UpdateAgentStatus -> Int
hashWithSalt Int
_salt UpdateAgentStatus' {Maybe Bool
Maybe Natural
Maybe Text
Maybe AgentStatusState
Text
agentStatusId :: Text
instanceId :: Text
state :: Maybe AgentStatusState
resetOrderNumber :: Maybe Bool
name :: Maybe Text
displayOrder :: Maybe Natural
description :: Maybe Text
$sel:agentStatusId:UpdateAgentStatus' :: UpdateAgentStatus -> Text
$sel:instanceId:UpdateAgentStatus' :: UpdateAgentStatus -> Text
$sel:state:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe AgentStatusState
$sel:resetOrderNumber:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Bool
$sel:name:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Text
$sel:displayOrder:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Natural
$sel:description:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
description
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
displayOrder
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
name
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
resetOrderNumber
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe AgentStatusState
state
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
instanceId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
agentStatusId
instance Prelude.NFData UpdateAgentStatus where
rnf :: UpdateAgentStatus -> ()
rnf UpdateAgentStatus' {Maybe Bool
Maybe Natural
Maybe Text
Maybe AgentStatusState
Text
agentStatusId :: Text
instanceId :: Text
state :: Maybe AgentStatusState
resetOrderNumber :: Maybe Bool
name :: Maybe Text
displayOrder :: Maybe Natural
description :: Maybe Text
$sel:agentStatusId:UpdateAgentStatus' :: UpdateAgentStatus -> Text
$sel:instanceId:UpdateAgentStatus' :: UpdateAgentStatus -> Text
$sel:state:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe AgentStatusState
$sel:resetOrderNumber:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Bool
$sel:name:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Text
$sel:displayOrder:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Natural
$sel:description:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
description
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
displayOrder
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
name
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
resetOrderNumber
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe AgentStatusState
state
seq :: forall a b. a -> b -> b
`Prelude.seq` 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
agentStatusId
instance Data.ToHeaders UpdateAgentStatus where
toHeaders :: UpdateAgentStatus -> [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 UpdateAgentStatus where
toJSON :: UpdateAgentStatus -> Value
toJSON UpdateAgentStatus' {Maybe Bool
Maybe Natural
Maybe Text
Maybe AgentStatusState
Text
agentStatusId :: Text
instanceId :: Text
state :: Maybe AgentStatusState
resetOrderNumber :: Maybe Bool
name :: Maybe Text
displayOrder :: Maybe Natural
description :: Maybe Text
$sel:agentStatusId:UpdateAgentStatus' :: UpdateAgentStatus -> Text
$sel:instanceId:UpdateAgentStatus' :: UpdateAgentStatus -> Text
$sel:state:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe AgentStatusState
$sel:resetOrderNumber:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Bool
$sel:name:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Text
$sel:displayOrder:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Natural
$sel:description:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"Description" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
description,
(Key
"DisplayOrder" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Natural
displayOrder,
(Key
"Name" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
name,
(Key
"ResetOrderNumber" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Bool
resetOrderNumber,
(Key
"State" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe AgentStatusState
state
]
)
instance Data.ToPath UpdateAgentStatus where
toPath :: UpdateAgentStatus -> ByteString
toPath UpdateAgentStatus' {Maybe Bool
Maybe Natural
Maybe Text
Maybe AgentStatusState
Text
agentStatusId :: Text
instanceId :: Text
state :: Maybe AgentStatusState
resetOrderNumber :: Maybe Bool
name :: Maybe Text
displayOrder :: Maybe Natural
description :: Maybe Text
$sel:agentStatusId:UpdateAgentStatus' :: UpdateAgentStatus -> Text
$sel:instanceId:UpdateAgentStatus' :: UpdateAgentStatus -> Text
$sel:state:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe AgentStatusState
$sel:resetOrderNumber:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Bool
$sel:name:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Text
$sel:displayOrder:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Natural
$sel:description:UpdateAgentStatus' :: UpdateAgentStatus -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/agent-status/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
instanceId,
ByteString
"/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
agentStatusId
]
instance Data.ToQuery UpdateAgentStatus where
toQuery :: UpdateAgentStatus -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data UpdateAgentStatusResponse = UpdateAgentStatusResponse'
{
}
deriving (UpdateAgentStatusResponse -> UpdateAgentStatusResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateAgentStatusResponse -> UpdateAgentStatusResponse -> Bool
$c/= :: UpdateAgentStatusResponse -> UpdateAgentStatusResponse -> Bool
== :: UpdateAgentStatusResponse -> UpdateAgentStatusResponse -> Bool
$c== :: UpdateAgentStatusResponse -> UpdateAgentStatusResponse -> Bool
Prelude.Eq, ReadPrec [UpdateAgentStatusResponse]
ReadPrec UpdateAgentStatusResponse
Int -> ReadS UpdateAgentStatusResponse
ReadS [UpdateAgentStatusResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateAgentStatusResponse]
$creadListPrec :: ReadPrec [UpdateAgentStatusResponse]
readPrec :: ReadPrec UpdateAgentStatusResponse
$creadPrec :: ReadPrec UpdateAgentStatusResponse
readList :: ReadS [UpdateAgentStatusResponse]
$creadList :: ReadS [UpdateAgentStatusResponse]
readsPrec :: Int -> ReadS UpdateAgentStatusResponse
$creadsPrec :: Int -> ReadS UpdateAgentStatusResponse
Prelude.Read, Int -> UpdateAgentStatusResponse -> ShowS
[UpdateAgentStatusResponse] -> ShowS
UpdateAgentStatusResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateAgentStatusResponse] -> ShowS
$cshowList :: [UpdateAgentStatusResponse] -> ShowS
show :: UpdateAgentStatusResponse -> String
$cshow :: UpdateAgentStatusResponse -> String
showsPrec :: Int -> UpdateAgentStatusResponse -> ShowS
$cshowsPrec :: Int -> UpdateAgentStatusResponse -> ShowS
Prelude.Show, forall x.
Rep UpdateAgentStatusResponse x -> UpdateAgentStatusResponse
forall x.
UpdateAgentStatusResponse -> Rep UpdateAgentStatusResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep UpdateAgentStatusResponse x -> UpdateAgentStatusResponse
$cfrom :: forall x.
UpdateAgentStatusResponse -> Rep UpdateAgentStatusResponse x
Prelude.Generic)
newUpdateAgentStatusResponse ::
UpdateAgentStatusResponse
newUpdateAgentStatusResponse :: UpdateAgentStatusResponse
newUpdateAgentStatusResponse =
UpdateAgentStatusResponse
UpdateAgentStatusResponse'
instance Prelude.NFData UpdateAgentStatusResponse where
rnf :: UpdateAgentStatusResponse -> ()
rnf UpdateAgentStatusResponse
_ = ()