{-# 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.GetSipMediaApplication
(
GetSipMediaApplication (..),
newGetSipMediaApplication,
getSipMediaApplication_sipMediaApplicationId,
GetSipMediaApplicationResponse (..),
newGetSipMediaApplicationResponse,
getSipMediaApplicationResponse_sipMediaApplication,
getSipMediaApplicationResponse_httpStatus,
)
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 GetSipMediaApplication = GetSipMediaApplication'
{
GetSipMediaApplication -> Text
sipMediaApplicationId :: Prelude.Text
}
deriving (GetSipMediaApplication -> GetSipMediaApplication -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetSipMediaApplication -> GetSipMediaApplication -> Bool
$c/= :: GetSipMediaApplication -> GetSipMediaApplication -> Bool
== :: GetSipMediaApplication -> GetSipMediaApplication -> Bool
$c== :: GetSipMediaApplication -> GetSipMediaApplication -> Bool
Prelude.Eq, ReadPrec [GetSipMediaApplication]
ReadPrec GetSipMediaApplication
Int -> ReadS GetSipMediaApplication
ReadS [GetSipMediaApplication]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetSipMediaApplication]
$creadListPrec :: ReadPrec [GetSipMediaApplication]
readPrec :: ReadPrec GetSipMediaApplication
$creadPrec :: ReadPrec GetSipMediaApplication
readList :: ReadS [GetSipMediaApplication]
$creadList :: ReadS [GetSipMediaApplication]
readsPrec :: Int -> ReadS GetSipMediaApplication
$creadsPrec :: Int -> ReadS GetSipMediaApplication
Prelude.Read, Int -> GetSipMediaApplication -> ShowS
[GetSipMediaApplication] -> ShowS
GetSipMediaApplication -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetSipMediaApplication] -> ShowS
$cshowList :: [GetSipMediaApplication] -> ShowS
show :: GetSipMediaApplication -> String
$cshow :: GetSipMediaApplication -> String
showsPrec :: Int -> GetSipMediaApplication -> ShowS
$cshowsPrec :: Int -> GetSipMediaApplication -> ShowS
Prelude.Show, forall x. Rep GetSipMediaApplication x -> GetSipMediaApplication
forall x. GetSipMediaApplication -> Rep GetSipMediaApplication x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetSipMediaApplication x -> GetSipMediaApplication
$cfrom :: forall x. GetSipMediaApplication -> Rep GetSipMediaApplication x
Prelude.Generic)
newGetSipMediaApplication ::
Prelude.Text ->
GetSipMediaApplication
newGetSipMediaApplication :: Text -> GetSipMediaApplication
newGetSipMediaApplication Text
pSipMediaApplicationId_ =
GetSipMediaApplication'
{ $sel:sipMediaApplicationId:GetSipMediaApplication' :: Text
sipMediaApplicationId =
Text
pSipMediaApplicationId_
}
getSipMediaApplication_sipMediaApplicationId :: Lens.Lens' GetSipMediaApplication Prelude.Text
getSipMediaApplication_sipMediaApplicationId :: Lens' GetSipMediaApplication Text
getSipMediaApplication_sipMediaApplicationId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSipMediaApplication' {Text
sipMediaApplicationId :: Text
$sel:sipMediaApplicationId:GetSipMediaApplication' :: GetSipMediaApplication -> Text
sipMediaApplicationId} -> Text
sipMediaApplicationId) (\s :: GetSipMediaApplication
s@GetSipMediaApplication' {} Text
a -> GetSipMediaApplication
s {$sel:sipMediaApplicationId:GetSipMediaApplication' :: Text
sipMediaApplicationId = Text
a} :: GetSipMediaApplication)
instance Core.AWSRequest GetSipMediaApplication where
type
AWSResponse GetSipMediaApplication =
GetSipMediaApplicationResponse
request :: (Service -> Service)
-> GetSipMediaApplication -> Request GetSipMediaApplication
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.get (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetSipMediaApplication
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse GetSipMediaApplication)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Maybe SipMediaApplication -> Int -> GetSipMediaApplicationResponse
GetSipMediaApplicationResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"SipMediaApplication")
forall (f :: * -> *) a b. Applicative f => 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 GetSipMediaApplication where
hashWithSalt :: Int -> GetSipMediaApplication -> Int
hashWithSalt Int
_salt GetSipMediaApplication' {Text
sipMediaApplicationId :: Text
$sel:sipMediaApplicationId:GetSipMediaApplication' :: GetSipMediaApplication -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
sipMediaApplicationId
instance Prelude.NFData GetSipMediaApplication where
rnf :: GetSipMediaApplication -> ()
rnf GetSipMediaApplication' {Text
sipMediaApplicationId :: Text
$sel:sipMediaApplicationId:GetSipMediaApplication' :: GetSipMediaApplication -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
sipMediaApplicationId
instance Data.ToHeaders GetSipMediaApplication where
toHeaders :: GetSipMediaApplication -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath GetSipMediaApplication where
toPath :: GetSipMediaApplication -> ByteString
toPath GetSipMediaApplication' {Text
sipMediaApplicationId :: Text
$sel:sipMediaApplicationId:GetSipMediaApplication' :: GetSipMediaApplication -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/sip-media-applications/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
sipMediaApplicationId
]
instance Data.ToQuery GetSipMediaApplication where
toQuery :: GetSipMediaApplication -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data GetSipMediaApplicationResponse = GetSipMediaApplicationResponse'
{
GetSipMediaApplicationResponse -> Maybe SipMediaApplication
sipMediaApplication :: Prelude.Maybe SipMediaApplication,
GetSipMediaApplicationResponse -> Int
httpStatus :: Prelude.Int
}
deriving (GetSipMediaApplicationResponse
-> GetSipMediaApplicationResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetSipMediaApplicationResponse
-> GetSipMediaApplicationResponse -> Bool
$c/= :: GetSipMediaApplicationResponse
-> GetSipMediaApplicationResponse -> Bool
== :: GetSipMediaApplicationResponse
-> GetSipMediaApplicationResponse -> Bool
$c== :: GetSipMediaApplicationResponse
-> GetSipMediaApplicationResponse -> Bool
Prelude.Eq, Int -> GetSipMediaApplicationResponse -> ShowS
[GetSipMediaApplicationResponse] -> ShowS
GetSipMediaApplicationResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetSipMediaApplicationResponse] -> ShowS
$cshowList :: [GetSipMediaApplicationResponse] -> ShowS
show :: GetSipMediaApplicationResponse -> String
$cshow :: GetSipMediaApplicationResponse -> String
showsPrec :: Int -> GetSipMediaApplicationResponse -> ShowS
$cshowsPrec :: Int -> GetSipMediaApplicationResponse -> ShowS
Prelude.Show, forall x.
Rep GetSipMediaApplicationResponse x
-> GetSipMediaApplicationResponse
forall x.
GetSipMediaApplicationResponse
-> Rep GetSipMediaApplicationResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetSipMediaApplicationResponse x
-> GetSipMediaApplicationResponse
$cfrom :: forall x.
GetSipMediaApplicationResponse
-> Rep GetSipMediaApplicationResponse x
Prelude.Generic)
newGetSipMediaApplicationResponse ::
Prelude.Int ->
GetSipMediaApplicationResponse
newGetSipMediaApplicationResponse :: Int -> GetSipMediaApplicationResponse
newGetSipMediaApplicationResponse Int
pHttpStatus_ =
GetSipMediaApplicationResponse'
{ $sel:sipMediaApplication:GetSipMediaApplicationResponse' :: Maybe SipMediaApplication
sipMediaApplication =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetSipMediaApplicationResponse' :: Int
httpStatus = Int
pHttpStatus_
}
getSipMediaApplicationResponse_sipMediaApplication :: Lens.Lens' GetSipMediaApplicationResponse (Prelude.Maybe SipMediaApplication)
getSipMediaApplicationResponse_sipMediaApplication :: Lens' GetSipMediaApplicationResponse (Maybe SipMediaApplication)
getSipMediaApplicationResponse_sipMediaApplication = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSipMediaApplicationResponse' {Maybe SipMediaApplication
sipMediaApplication :: Maybe SipMediaApplication
$sel:sipMediaApplication:GetSipMediaApplicationResponse' :: GetSipMediaApplicationResponse -> Maybe SipMediaApplication
sipMediaApplication} -> Maybe SipMediaApplication
sipMediaApplication) (\s :: GetSipMediaApplicationResponse
s@GetSipMediaApplicationResponse' {} Maybe SipMediaApplication
a -> GetSipMediaApplicationResponse
s {$sel:sipMediaApplication:GetSipMediaApplicationResponse' :: Maybe SipMediaApplication
sipMediaApplication = Maybe SipMediaApplication
a} :: GetSipMediaApplicationResponse)
getSipMediaApplicationResponse_httpStatus :: Lens.Lens' GetSipMediaApplicationResponse Prelude.Int
getSipMediaApplicationResponse_httpStatus :: Lens' GetSipMediaApplicationResponse Int
getSipMediaApplicationResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSipMediaApplicationResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetSipMediaApplicationResponse' :: GetSipMediaApplicationResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetSipMediaApplicationResponse
s@GetSipMediaApplicationResponse' {} Int
a -> GetSipMediaApplicationResponse
s {$sel:httpStatus:GetSipMediaApplicationResponse' :: Int
httpStatus = Int
a} :: GetSipMediaApplicationResponse)
instance
Prelude.NFData
GetSipMediaApplicationResponse
where
rnf :: GetSipMediaApplicationResponse -> ()
rnf GetSipMediaApplicationResponse' {Int
Maybe SipMediaApplication
httpStatus :: Int
sipMediaApplication :: Maybe SipMediaApplication
$sel:httpStatus:GetSipMediaApplicationResponse' :: GetSipMediaApplicationResponse -> Int
$sel:sipMediaApplication:GetSipMediaApplicationResponse' :: GetSipMediaApplicationResponse -> Maybe SipMediaApplication
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe SipMediaApplication
sipMediaApplication
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus