{-# 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.ChimeSDKIdentity.DescribeAppInstance
(
DescribeAppInstance (..),
newDescribeAppInstance,
describeAppInstance_appInstanceArn,
DescribeAppInstanceResponse (..),
newDescribeAppInstanceResponse,
describeAppInstanceResponse_appInstance,
describeAppInstanceResponse_httpStatus,
)
where
import Amazonka.ChimeSDKIdentity.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 DescribeAppInstance = DescribeAppInstance'
{
DescribeAppInstance -> Text
appInstanceArn :: Prelude.Text
}
deriving (DescribeAppInstance -> DescribeAppInstance -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeAppInstance -> DescribeAppInstance -> Bool
$c/= :: DescribeAppInstance -> DescribeAppInstance -> Bool
== :: DescribeAppInstance -> DescribeAppInstance -> Bool
$c== :: DescribeAppInstance -> DescribeAppInstance -> Bool
Prelude.Eq, ReadPrec [DescribeAppInstance]
ReadPrec DescribeAppInstance
Int -> ReadS DescribeAppInstance
ReadS [DescribeAppInstance]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeAppInstance]
$creadListPrec :: ReadPrec [DescribeAppInstance]
readPrec :: ReadPrec DescribeAppInstance
$creadPrec :: ReadPrec DescribeAppInstance
readList :: ReadS [DescribeAppInstance]
$creadList :: ReadS [DescribeAppInstance]
readsPrec :: Int -> ReadS DescribeAppInstance
$creadsPrec :: Int -> ReadS DescribeAppInstance
Prelude.Read, Int -> DescribeAppInstance -> ShowS
[DescribeAppInstance] -> ShowS
DescribeAppInstance -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeAppInstance] -> ShowS
$cshowList :: [DescribeAppInstance] -> ShowS
show :: DescribeAppInstance -> String
$cshow :: DescribeAppInstance -> String
showsPrec :: Int -> DescribeAppInstance -> ShowS
$cshowsPrec :: Int -> DescribeAppInstance -> ShowS
Prelude.Show, forall x. Rep DescribeAppInstance x -> DescribeAppInstance
forall x. DescribeAppInstance -> Rep DescribeAppInstance x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribeAppInstance x -> DescribeAppInstance
$cfrom :: forall x. DescribeAppInstance -> Rep DescribeAppInstance x
Prelude.Generic)
newDescribeAppInstance ::
Prelude.Text ->
DescribeAppInstance
newDescribeAppInstance :: Text -> DescribeAppInstance
newDescribeAppInstance Text
pAppInstanceArn_ =
DescribeAppInstance'
{ $sel:appInstanceArn:DescribeAppInstance' :: Text
appInstanceArn =
Text
pAppInstanceArn_
}
describeAppInstance_appInstanceArn :: Lens.Lens' DescribeAppInstance Prelude.Text
describeAppInstance_appInstanceArn :: Lens' DescribeAppInstance Text
describeAppInstance_appInstanceArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeAppInstance' {Text
appInstanceArn :: Text
$sel:appInstanceArn:DescribeAppInstance' :: DescribeAppInstance -> Text
appInstanceArn} -> Text
appInstanceArn) (\s :: DescribeAppInstance
s@DescribeAppInstance' {} Text
a -> DescribeAppInstance
s {$sel:appInstanceArn:DescribeAppInstance' :: Text
appInstanceArn = Text
a} :: DescribeAppInstance)
instance Core.AWSRequest DescribeAppInstance where
type
AWSResponse DescribeAppInstance =
DescribeAppInstanceResponse
request :: (Service -> Service)
-> DescribeAppInstance -> Request DescribeAppInstance
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 DescribeAppInstance
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeAppInstance)))
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 AppInstance -> Int -> DescribeAppInstanceResponse
DescribeAppInstanceResponse'
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
"AppInstance")
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 DescribeAppInstance where
hashWithSalt :: Int -> DescribeAppInstance -> Int
hashWithSalt Int
_salt DescribeAppInstance' {Text
appInstanceArn :: Text
$sel:appInstanceArn:DescribeAppInstance' :: DescribeAppInstance -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
appInstanceArn
instance Prelude.NFData DescribeAppInstance where
rnf :: DescribeAppInstance -> ()
rnf DescribeAppInstance' {Text
appInstanceArn :: Text
$sel:appInstanceArn:DescribeAppInstance' :: DescribeAppInstance -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
appInstanceArn
instance Data.ToHeaders DescribeAppInstance where
toHeaders :: DescribeAppInstance -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath DescribeAppInstance where
toPath :: DescribeAppInstance -> ByteString
toPath DescribeAppInstance' {Text
appInstanceArn :: Text
$sel:appInstanceArn:DescribeAppInstance' :: DescribeAppInstance -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"/app-instances/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
appInstanceArn]
instance Data.ToQuery DescribeAppInstance where
toQuery :: DescribeAppInstance -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DescribeAppInstanceResponse = DescribeAppInstanceResponse'
{
DescribeAppInstanceResponse -> Maybe AppInstance
appInstance :: Prelude.Maybe AppInstance,
DescribeAppInstanceResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DescribeAppInstanceResponse -> DescribeAppInstanceResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeAppInstanceResponse -> DescribeAppInstanceResponse -> Bool
$c/= :: DescribeAppInstanceResponse -> DescribeAppInstanceResponse -> Bool
== :: DescribeAppInstanceResponse -> DescribeAppInstanceResponse -> Bool
$c== :: DescribeAppInstanceResponse -> DescribeAppInstanceResponse -> Bool
Prelude.Eq, Int -> DescribeAppInstanceResponse -> ShowS
[DescribeAppInstanceResponse] -> ShowS
DescribeAppInstanceResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeAppInstanceResponse] -> ShowS
$cshowList :: [DescribeAppInstanceResponse] -> ShowS
show :: DescribeAppInstanceResponse -> String
$cshow :: DescribeAppInstanceResponse -> String
showsPrec :: Int -> DescribeAppInstanceResponse -> ShowS
$cshowsPrec :: Int -> DescribeAppInstanceResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeAppInstanceResponse x -> DescribeAppInstanceResponse
forall x.
DescribeAppInstanceResponse -> Rep DescribeAppInstanceResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeAppInstanceResponse x -> DescribeAppInstanceResponse
$cfrom :: forall x.
DescribeAppInstanceResponse -> Rep DescribeAppInstanceResponse x
Prelude.Generic)
newDescribeAppInstanceResponse ::
Prelude.Int ->
DescribeAppInstanceResponse
newDescribeAppInstanceResponse :: Int -> DescribeAppInstanceResponse
newDescribeAppInstanceResponse Int
pHttpStatus_ =
DescribeAppInstanceResponse'
{ $sel:appInstance:DescribeAppInstanceResponse' :: Maybe AppInstance
appInstance =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DescribeAppInstanceResponse' :: Int
httpStatus = Int
pHttpStatus_
}
describeAppInstanceResponse_appInstance :: Lens.Lens' DescribeAppInstanceResponse (Prelude.Maybe AppInstance)
describeAppInstanceResponse_appInstance :: Lens' DescribeAppInstanceResponse (Maybe AppInstance)
describeAppInstanceResponse_appInstance = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeAppInstanceResponse' {Maybe AppInstance
appInstance :: Maybe AppInstance
$sel:appInstance:DescribeAppInstanceResponse' :: DescribeAppInstanceResponse -> Maybe AppInstance
appInstance} -> Maybe AppInstance
appInstance) (\s :: DescribeAppInstanceResponse
s@DescribeAppInstanceResponse' {} Maybe AppInstance
a -> DescribeAppInstanceResponse
s {$sel:appInstance:DescribeAppInstanceResponse' :: Maybe AppInstance
appInstance = Maybe AppInstance
a} :: DescribeAppInstanceResponse)
describeAppInstanceResponse_httpStatus :: Lens.Lens' DescribeAppInstanceResponse Prelude.Int
describeAppInstanceResponse_httpStatus :: Lens' DescribeAppInstanceResponse Int
describeAppInstanceResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeAppInstanceResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeAppInstanceResponse' :: DescribeAppInstanceResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeAppInstanceResponse
s@DescribeAppInstanceResponse' {} Int
a -> DescribeAppInstanceResponse
s {$sel:httpStatus:DescribeAppInstanceResponse' :: Int
httpStatus = Int
a} :: DescribeAppInstanceResponse)
instance Prelude.NFData DescribeAppInstanceResponse where
rnf :: DescribeAppInstanceResponse -> ()
rnf DescribeAppInstanceResponse' {Int
Maybe AppInstance
httpStatus :: Int
appInstance :: Maybe AppInstance
$sel:httpStatus:DescribeAppInstanceResponse' :: DescribeAppInstanceResponse -> Int
$sel:appInstance:DescribeAppInstanceResponse' :: DescribeAppInstanceResponse -> Maybe AppInstance
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe AppInstance
appInstance
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus