{-# 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.AlexaBusiness.UpdateConferenceProvider
(
UpdateConferenceProvider (..),
newUpdateConferenceProvider,
updateConferenceProvider_iPDialIn,
updateConferenceProvider_pSTNDialIn,
updateConferenceProvider_conferenceProviderArn,
updateConferenceProvider_conferenceProviderType,
updateConferenceProvider_meetingSetting,
UpdateConferenceProviderResponse (..),
newUpdateConferenceProviderResponse,
updateConferenceProviderResponse_httpStatus,
)
where
import Amazonka.AlexaBusiness.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 UpdateConferenceProvider = UpdateConferenceProvider'
{
UpdateConferenceProvider -> Maybe IPDialIn
iPDialIn :: Prelude.Maybe IPDialIn,
UpdateConferenceProvider -> Maybe PSTNDialIn
pSTNDialIn :: Prelude.Maybe PSTNDialIn,
UpdateConferenceProvider -> Text
conferenceProviderArn :: Prelude.Text,
UpdateConferenceProvider -> ConferenceProviderType
conferenceProviderType :: ConferenceProviderType,
UpdateConferenceProvider -> MeetingSetting
meetingSetting :: MeetingSetting
}
deriving (UpdateConferenceProvider -> UpdateConferenceProvider -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateConferenceProvider -> UpdateConferenceProvider -> Bool
$c/= :: UpdateConferenceProvider -> UpdateConferenceProvider -> Bool
== :: UpdateConferenceProvider -> UpdateConferenceProvider -> Bool
$c== :: UpdateConferenceProvider -> UpdateConferenceProvider -> Bool
Prelude.Eq, ReadPrec [UpdateConferenceProvider]
ReadPrec UpdateConferenceProvider
Int -> ReadS UpdateConferenceProvider
ReadS [UpdateConferenceProvider]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateConferenceProvider]
$creadListPrec :: ReadPrec [UpdateConferenceProvider]
readPrec :: ReadPrec UpdateConferenceProvider
$creadPrec :: ReadPrec UpdateConferenceProvider
readList :: ReadS [UpdateConferenceProvider]
$creadList :: ReadS [UpdateConferenceProvider]
readsPrec :: Int -> ReadS UpdateConferenceProvider
$creadsPrec :: Int -> ReadS UpdateConferenceProvider
Prelude.Read, Int -> UpdateConferenceProvider -> ShowS
[UpdateConferenceProvider] -> ShowS
UpdateConferenceProvider -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateConferenceProvider] -> ShowS
$cshowList :: [UpdateConferenceProvider] -> ShowS
show :: UpdateConferenceProvider -> String
$cshow :: UpdateConferenceProvider -> String
showsPrec :: Int -> UpdateConferenceProvider -> ShowS
$cshowsPrec :: Int -> UpdateConferenceProvider -> ShowS
Prelude.Show, forall x.
Rep UpdateConferenceProvider x -> UpdateConferenceProvider
forall x.
UpdateConferenceProvider -> Rep UpdateConferenceProvider x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep UpdateConferenceProvider x -> UpdateConferenceProvider
$cfrom :: forall x.
UpdateConferenceProvider -> Rep UpdateConferenceProvider x
Prelude.Generic)
newUpdateConferenceProvider ::
Prelude.Text ->
ConferenceProviderType ->
MeetingSetting ->
UpdateConferenceProvider
newUpdateConferenceProvider :: Text
-> ConferenceProviderType
-> MeetingSetting
-> UpdateConferenceProvider
newUpdateConferenceProvider
Text
pConferenceProviderArn_
ConferenceProviderType
pConferenceProviderType_
MeetingSetting
pMeetingSetting_ =
UpdateConferenceProvider'
{ $sel:iPDialIn:UpdateConferenceProvider' :: Maybe IPDialIn
iPDialIn =
forall a. Maybe a
Prelude.Nothing,
$sel:pSTNDialIn:UpdateConferenceProvider' :: Maybe PSTNDialIn
pSTNDialIn = forall a. Maybe a
Prelude.Nothing,
$sel:conferenceProviderArn:UpdateConferenceProvider' :: Text
conferenceProviderArn = Text
pConferenceProviderArn_,
$sel:conferenceProviderType:UpdateConferenceProvider' :: ConferenceProviderType
conferenceProviderType = ConferenceProviderType
pConferenceProviderType_,
$sel:meetingSetting:UpdateConferenceProvider' :: MeetingSetting
meetingSetting = MeetingSetting
pMeetingSetting_
}
updateConferenceProvider_iPDialIn :: Lens.Lens' UpdateConferenceProvider (Prelude.Maybe IPDialIn)
updateConferenceProvider_iPDialIn :: Lens' UpdateConferenceProvider (Maybe IPDialIn)
updateConferenceProvider_iPDialIn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateConferenceProvider' {Maybe IPDialIn
iPDialIn :: Maybe IPDialIn
$sel:iPDialIn:UpdateConferenceProvider' :: UpdateConferenceProvider -> Maybe IPDialIn
iPDialIn} -> Maybe IPDialIn
iPDialIn) (\s :: UpdateConferenceProvider
s@UpdateConferenceProvider' {} Maybe IPDialIn
a -> UpdateConferenceProvider
s {$sel:iPDialIn:UpdateConferenceProvider' :: Maybe IPDialIn
iPDialIn = Maybe IPDialIn
a} :: UpdateConferenceProvider)
updateConferenceProvider_pSTNDialIn :: Lens.Lens' UpdateConferenceProvider (Prelude.Maybe PSTNDialIn)
updateConferenceProvider_pSTNDialIn :: Lens' UpdateConferenceProvider (Maybe PSTNDialIn)
updateConferenceProvider_pSTNDialIn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateConferenceProvider' {Maybe PSTNDialIn
pSTNDialIn :: Maybe PSTNDialIn
$sel:pSTNDialIn:UpdateConferenceProvider' :: UpdateConferenceProvider -> Maybe PSTNDialIn
pSTNDialIn} -> Maybe PSTNDialIn
pSTNDialIn) (\s :: UpdateConferenceProvider
s@UpdateConferenceProvider' {} Maybe PSTNDialIn
a -> UpdateConferenceProvider
s {$sel:pSTNDialIn:UpdateConferenceProvider' :: Maybe PSTNDialIn
pSTNDialIn = Maybe PSTNDialIn
a} :: UpdateConferenceProvider)
updateConferenceProvider_conferenceProviderArn :: Lens.Lens' UpdateConferenceProvider Prelude.Text
updateConferenceProvider_conferenceProviderArn :: Lens' UpdateConferenceProvider Text
updateConferenceProvider_conferenceProviderArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateConferenceProvider' {Text
conferenceProviderArn :: Text
$sel:conferenceProviderArn:UpdateConferenceProvider' :: UpdateConferenceProvider -> Text
conferenceProviderArn} -> Text
conferenceProviderArn) (\s :: UpdateConferenceProvider
s@UpdateConferenceProvider' {} Text
a -> UpdateConferenceProvider
s {$sel:conferenceProviderArn:UpdateConferenceProvider' :: Text
conferenceProviderArn = Text
a} :: UpdateConferenceProvider)
updateConferenceProvider_conferenceProviderType :: Lens.Lens' UpdateConferenceProvider ConferenceProviderType
updateConferenceProvider_conferenceProviderType :: Lens' UpdateConferenceProvider ConferenceProviderType
updateConferenceProvider_conferenceProviderType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateConferenceProvider' {ConferenceProviderType
conferenceProviderType :: ConferenceProviderType
$sel:conferenceProviderType:UpdateConferenceProvider' :: UpdateConferenceProvider -> ConferenceProviderType
conferenceProviderType} -> ConferenceProviderType
conferenceProviderType) (\s :: UpdateConferenceProvider
s@UpdateConferenceProvider' {} ConferenceProviderType
a -> UpdateConferenceProvider
s {$sel:conferenceProviderType:UpdateConferenceProvider' :: ConferenceProviderType
conferenceProviderType = ConferenceProviderType
a} :: UpdateConferenceProvider)
updateConferenceProvider_meetingSetting :: Lens.Lens' UpdateConferenceProvider MeetingSetting
updateConferenceProvider_meetingSetting :: Lens' UpdateConferenceProvider MeetingSetting
updateConferenceProvider_meetingSetting = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateConferenceProvider' {MeetingSetting
meetingSetting :: MeetingSetting
$sel:meetingSetting:UpdateConferenceProvider' :: UpdateConferenceProvider -> MeetingSetting
meetingSetting} -> MeetingSetting
meetingSetting) (\s :: UpdateConferenceProvider
s@UpdateConferenceProvider' {} MeetingSetting
a -> UpdateConferenceProvider
s {$sel:meetingSetting:UpdateConferenceProvider' :: MeetingSetting
meetingSetting = MeetingSetting
a} :: UpdateConferenceProvider)
instance Core.AWSRequest UpdateConferenceProvider where
type
AWSResponse UpdateConferenceProvider =
UpdateConferenceProviderResponse
request :: (Service -> Service)
-> UpdateConferenceProvider -> Request UpdateConferenceProvider
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 UpdateConferenceProvider
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse UpdateConferenceProvider)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> () -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveEmpty
( \Int
s ResponseHeaders
h ()
x ->
Int -> UpdateConferenceProviderResponse
UpdateConferenceProviderResponse'
forall (f :: * -> *) a b. Functor 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 UpdateConferenceProvider where
hashWithSalt :: Int -> UpdateConferenceProvider -> Int
hashWithSalt Int
_salt UpdateConferenceProvider' {Maybe IPDialIn
Maybe PSTNDialIn
Text
ConferenceProviderType
MeetingSetting
meetingSetting :: MeetingSetting
conferenceProviderType :: ConferenceProviderType
conferenceProviderArn :: Text
pSTNDialIn :: Maybe PSTNDialIn
iPDialIn :: Maybe IPDialIn
$sel:meetingSetting:UpdateConferenceProvider' :: UpdateConferenceProvider -> MeetingSetting
$sel:conferenceProviderType:UpdateConferenceProvider' :: UpdateConferenceProvider -> ConferenceProviderType
$sel:conferenceProviderArn:UpdateConferenceProvider' :: UpdateConferenceProvider -> Text
$sel:pSTNDialIn:UpdateConferenceProvider' :: UpdateConferenceProvider -> Maybe PSTNDialIn
$sel:iPDialIn:UpdateConferenceProvider' :: UpdateConferenceProvider -> Maybe IPDialIn
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe IPDialIn
iPDialIn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe PSTNDialIn
pSTNDialIn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
conferenceProviderArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` ConferenceProviderType
conferenceProviderType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` MeetingSetting
meetingSetting
instance Prelude.NFData UpdateConferenceProvider where
rnf :: UpdateConferenceProvider -> ()
rnf UpdateConferenceProvider' {Maybe IPDialIn
Maybe PSTNDialIn
Text
ConferenceProviderType
MeetingSetting
meetingSetting :: MeetingSetting
conferenceProviderType :: ConferenceProviderType
conferenceProviderArn :: Text
pSTNDialIn :: Maybe PSTNDialIn
iPDialIn :: Maybe IPDialIn
$sel:meetingSetting:UpdateConferenceProvider' :: UpdateConferenceProvider -> MeetingSetting
$sel:conferenceProviderType:UpdateConferenceProvider' :: UpdateConferenceProvider -> ConferenceProviderType
$sel:conferenceProviderArn:UpdateConferenceProvider' :: UpdateConferenceProvider -> Text
$sel:pSTNDialIn:UpdateConferenceProvider' :: UpdateConferenceProvider -> Maybe PSTNDialIn
$sel:iPDialIn:UpdateConferenceProvider' :: UpdateConferenceProvider -> Maybe IPDialIn
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe IPDialIn
iPDialIn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe PSTNDialIn
pSTNDialIn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
conferenceProviderArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf ConferenceProviderType
conferenceProviderType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf MeetingSetting
meetingSetting
instance Data.ToHeaders UpdateConferenceProvider where
toHeaders :: UpdateConferenceProvider -> 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
"AlexaForBusiness.UpdateConferenceProvider" ::
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 UpdateConferenceProvider where
toJSON :: UpdateConferenceProvider -> Value
toJSON UpdateConferenceProvider' {Maybe IPDialIn
Maybe PSTNDialIn
Text
ConferenceProviderType
MeetingSetting
meetingSetting :: MeetingSetting
conferenceProviderType :: ConferenceProviderType
conferenceProviderArn :: Text
pSTNDialIn :: Maybe PSTNDialIn
iPDialIn :: Maybe IPDialIn
$sel:meetingSetting:UpdateConferenceProvider' :: UpdateConferenceProvider -> MeetingSetting
$sel:conferenceProviderType:UpdateConferenceProvider' :: UpdateConferenceProvider -> ConferenceProviderType
$sel:conferenceProviderArn:UpdateConferenceProvider' :: UpdateConferenceProvider -> Text
$sel:pSTNDialIn:UpdateConferenceProvider' :: UpdateConferenceProvider -> Maybe PSTNDialIn
$sel:iPDialIn:UpdateConferenceProvider' :: UpdateConferenceProvider -> Maybe IPDialIn
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"IPDialIn" 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 IPDialIn
iPDialIn,
(Key
"PSTNDialIn" 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 PSTNDialIn
pSTNDialIn,
forall a. a -> Maybe a
Prelude.Just
( Key
"ConferenceProviderArn"
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
conferenceProviderArn
),
forall a. a -> Maybe a
Prelude.Just
( Key
"ConferenceProviderType"
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= ConferenceProviderType
conferenceProviderType
),
forall a. a -> Maybe a
Prelude.Just
(Key
"MeetingSetting" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= MeetingSetting
meetingSetting)
]
)
instance Data.ToPath UpdateConferenceProvider where
toPath :: UpdateConferenceProvider -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery UpdateConferenceProvider where
toQuery :: UpdateConferenceProvider -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data UpdateConferenceProviderResponse = UpdateConferenceProviderResponse'
{
UpdateConferenceProviderResponse -> Int
httpStatus :: Prelude.Int
}
deriving (UpdateConferenceProviderResponse
-> UpdateConferenceProviderResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateConferenceProviderResponse
-> UpdateConferenceProviderResponse -> Bool
$c/= :: UpdateConferenceProviderResponse
-> UpdateConferenceProviderResponse -> Bool
== :: UpdateConferenceProviderResponse
-> UpdateConferenceProviderResponse -> Bool
$c== :: UpdateConferenceProviderResponse
-> UpdateConferenceProviderResponse -> Bool
Prelude.Eq, ReadPrec [UpdateConferenceProviderResponse]
ReadPrec UpdateConferenceProviderResponse
Int -> ReadS UpdateConferenceProviderResponse
ReadS [UpdateConferenceProviderResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateConferenceProviderResponse]
$creadListPrec :: ReadPrec [UpdateConferenceProviderResponse]
readPrec :: ReadPrec UpdateConferenceProviderResponse
$creadPrec :: ReadPrec UpdateConferenceProviderResponse
readList :: ReadS [UpdateConferenceProviderResponse]
$creadList :: ReadS [UpdateConferenceProviderResponse]
readsPrec :: Int -> ReadS UpdateConferenceProviderResponse
$creadsPrec :: Int -> ReadS UpdateConferenceProviderResponse
Prelude.Read, Int -> UpdateConferenceProviderResponse -> ShowS
[UpdateConferenceProviderResponse] -> ShowS
UpdateConferenceProviderResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateConferenceProviderResponse] -> ShowS
$cshowList :: [UpdateConferenceProviderResponse] -> ShowS
show :: UpdateConferenceProviderResponse -> String
$cshow :: UpdateConferenceProviderResponse -> String
showsPrec :: Int -> UpdateConferenceProviderResponse -> ShowS
$cshowsPrec :: Int -> UpdateConferenceProviderResponse -> ShowS
Prelude.Show, forall x.
Rep UpdateConferenceProviderResponse x
-> UpdateConferenceProviderResponse
forall x.
UpdateConferenceProviderResponse
-> Rep UpdateConferenceProviderResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep UpdateConferenceProviderResponse x
-> UpdateConferenceProviderResponse
$cfrom :: forall x.
UpdateConferenceProviderResponse
-> Rep UpdateConferenceProviderResponse x
Prelude.Generic)
newUpdateConferenceProviderResponse ::
Prelude.Int ->
UpdateConferenceProviderResponse
newUpdateConferenceProviderResponse :: Int -> UpdateConferenceProviderResponse
newUpdateConferenceProviderResponse Int
pHttpStatus_ =
UpdateConferenceProviderResponse'
{ $sel:httpStatus:UpdateConferenceProviderResponse' :: Int
httpStatus =
Int
pHttpStatus_
}
updateConferenceProviderResponse_httpStatus :: Lens.Lens' UpdateConferenceProviderResponse Prelude.Int
updateConferenceProviderResponse_httpStatus :: Lens' UpdateConferenceProviderResponse Int
updateConferenceProviderResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateConferenceProviderResponse' {Int
httpStatus :: Int
$sel:httpStatus:UpdateConferenceProviderResponse' :: UpdateConferenceProviderResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: UpdateConferenceProviderResponse
s@UpdateConferenceProviderResponse' {} Int
a -> UpdateConferenceProviderResponse
s {$sel:httpStatus:UpdateConferenceProviderResponse' :: Int
httpStatus = Int
a} :: UpdateConferenceProviderResponse)
instance
Prelude.NFData
UpdateConferenceProviderResponse
where
rnf :: UpdateConferenceProviderResponse -> ()
rnf UpdateConferenceProviderResponse' {Int
httpStatus :: Int
$sel:httpStatus:UpdateConferenceProviderResponse' :: UpdateConferenceProviderResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus