{-# 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.IoTRoboRunner.GetSite
(
GetSite (..),
newGetSite,
getSite_id,
GetSiteResponse (..),
newGetSiteResponse,
getSiteResponse_description,
getSiteResponse_httpStatus,
getSiteResponse_arn,
getSiteResponse_id,
getSiteResponse_name,
getSiteResponse_countryCode,
getSiteResponse_createdAt,
getSiteResponse_updatedAt,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.IoTRoboRunner.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data GetSite = GetSite'
{ GetSite -> Text
id :: Prelude.Text
}
deriving (GetSite -> GetSite -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetSite -> GetSite -> Bool
$c/= :: GetSite -> GetSite -> Bool
== :: GetSite -> GetSite -> Bool
$c== :: GetSite -> GetSite -> Bool
Prelude.Eq, ReadPrec [GetSite]
ReadPrec GetSite
Int -> ReadS GetSite
ReadS [GetSite]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetSite]
$creadListPrec :: ReadPrec [GetSite]
readPrec :: ReadPrec GetSite
$creadPrec :: ReadPrec GetSite
readList :: ReadS [GetSite]
$creadList :: ReadS [GetSite]
readsPrec :: Int -> ReadS GetSite
$creadsPrec :: Int -> ReadS GetSite
Prelude.Read, Int -> GetSite -> ShowS
[GetSite] -> ShowS
GetSite -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetSite] -> ShowS
$cshowList :: [GetSite] -> ShowS
show :: GetSite -> String
$cshow :: GetSite -> String
showsPrec :: Int -> GetSite -> ShowS
$cshowsPrec :: Int -> GetSite -> ShowS
Prelude.Show, forall x. Rep GetSite x -> GetSite
forall x. GetSite -> Rep GetSite x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetSite x -> GetSite
$cfrom :: forall x. GetSite -> Rep GetSite x
Prelude.Generic)
newGetSite ::
Prelude.Text ->
GetSite
newGetSite :: Text -> GetSite
newGetSite Text
pId_ = GetSite' {$sel:id:GetSite' :: Text
id = Text
pId_}
getSite_id :: Lens.Lens' GetSite Prelude.Text
getSite_id :: Lens' GetSite Text
getSite_id = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSite' {Text
id :: Text
$sel:id:GetSite' :: GetSite -> Text
id} -> Text
id) (\s :: GetSite
s@GetSite' {} Text
a -> GetSite
s {$sel:id:GetSite' :: Text
id = Text
a} :: GetSite)
instance Core.AWSRequest GetSite where
type AWSResponse GetSite = GetSiteResponse
request :: (Service -> Service) -> GetSite -> Request GetSite
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 GetSite
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse GetSite)))
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 Text
-> Int
-> Text
-> Text
-> Text
-> Text
-> POSIX
-> POSIX
-> GetSiteResponse
GetSiteResponse'
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
"description")
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))
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"arn")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"id")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"name")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"countryCode")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"createdAt")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"updatedAt")
)
instance Prelude.Hashable GetSite where
hashWithSalt :: Int -> GetSite -> Int
hashWithSalt Int
_salt GetSite' {Text
id :: Text
$sel:id:GetSite' :: GetSite -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
id
instance Prelude.NFData GetSite where
rnf :: GetSite -> ()
rnf GetSite' {Text
id :: Text
$sel:id:GetSite' :: GetSite -> Text
..} = forall a. NFData a => a -> ()
Prelude.rnf Text
id
instance Data.ToHeaders GetSite where
toHeaders :: GetSite -> ResponseHeaders
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 -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToPath GetSite where
toPath :: GetSite -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/getSite"
instance Data.ToQuery GetSite where
toQuery :: GetSite -> QueryString
toQuery GetSite' {Text
id :: Text
$sel:id:GetSite' :: GetSite -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat [ByteString
"id" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
id]
data GetSiteResponse = GetSiteResponse'
{ GetSiteResponse -> Maybe Text
description :: Prelude.Maybe Prelude.Text,
GetSiteResponse -> Int
httpStatus :: Prelude.Int,
GetSiteResponse -> Text
arn :: Prelude.Text,
GetSiteResponse -> Text
id :: Prelude.Text,
GetSiteResponse -> Text
name :: Prelude.Text,
GetSiteResponse -> Text
countryCode :: Prelude.Text,
GetSiteResponse -> POSIX
createdAt :: Data.POSIX,
GetSiteResponse -> POSIX
updatedAt :: Data.POSIX
}
deriving (GetSiteResponse -> GetSiteResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetSiteResponse -> GetSiteResponse -> Bool
$c/= :: GetSiteResponse -> GetSiteResponse -> Bool
== :: GetSiteResponse -> GetSiteResponse -> Bool
$c== :: GetSiteResponse -> GetSiteResponse -> Bool
Prelude.Eq, ReadPrec [GetSiteResponse]
ReadPrec GetSiteResponse
Int -> ReadS GetSiteResponse
ReadS [GetSiteResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetSiteResponse]
$creadListPrec :: ReadPrec [GetSiteResponse]
readPrec :: ReadPrec GetSiteResponse
$creadPrec :: ReadPrec GetSiteResponse
readList :: ReadS [GetSiteResponse]
$creadList :: ReadS [GetSiteResponse]
readsPrec :: Int -> ReadS GetSiteResponse
$creadsPrec :: Int -> ReadS GetSiteResponse
Prelude.Read, Int -> GetSiteResponse -> ShowS
[GetSiteResponse] -> ShowS
GetSiteResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetSiteResponse] -> ShowS
$cshowList :: [GetSiteResponse] -> ShowS
show :: GetSiteResponse -> String
$cshow :: GetSiteResponse -> String
showsPrec :: Int -> GetSiteResponse -> ShowS
$cshowsPrec :: Int -> GetSiteResponse -> ShowS
Prelude.Show, forall x. Rep GetSiteResponse x -> GetSiteResponse
forall x. GetSiteResponse -> Rep GetSiteResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetSiteResponse x -> GetSiteResponse
$cfrom :: forall x. GetSiteResponse -> Rep GetSiteResponse x
Prelude.Generic)
newGetSiteResponse ::
Prelude.Int ->
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
Prelude.UTCTime ->
Prelude.UTCTime ->
GetSiteResponse
newGetSiteResponse :: Int
-> Text
-> Text
-> Text
-> Text
-> UTCTime
-> UTCTime
-> GetSiteResponse
newGetSiteResponse
Int
pHttpStatus_
Text
pArn_
Text
pId_
Text
pName_
Text
pCountryCode_
UTCTime
pCreatedAt_
UTCTime
pUpdatedAt_ =
GetSiteResponse'
{ $sel:description:GetSiteResponse' :: Maybe Text
description = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetSiteResponse' :: Int
httpStatus = Int
pHttpStatus_,
$sel:arn:GetSiteResponse' :: Text
arn = Text
pArn_,
$sel:id:GetSiteResponse' :: Text
id = Text
pId_,
$sel:name:GetSiteResponse' :: Text
name = Text
pName_,
$sel:countryCode:GetSiteResponse' :: Text
countryCode = Text
pCountryCode_,
$sel:createdAt:GetSiteResponse' :: POSIX
createdAt = forall (a :: Format). Iso' (Time a) UTCTime
Data._Time forall t b. AReview t b -> b -> t
Lens.# UTCTime
pCreatedAt_,
$sel:updatedAt:GetSiteResponse' :: POSIX
updatedAt = forall (a :: Format). Iso' (Time a) UTCTime
Data._Time forall t b. AReview t b -> b -> t
Lens.# UTCTime
pUpdatedAt_
}
getSiteResponse_description :: Lens.Lens' GetSiteResponse (Prelude.Maybe Prelude.Text)
getSiteResponse_description :: Lens' GetSiteResponse (Maybe Text)
getSiteResponse_description = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSiteResponse' {Maybe Text
description :: Maybe Text
$sel:description:GetSiteResponse' :: GetSiteResponse -> Maybe Text
description} -> Maybe Text
description) (\s :: GetSiteResponse
s@GetSiteResponse' {} Maybe Text
a -> GetSiteResponse
s {$sel:description:GetSiteResponse' :: Maybe Text
description = Maybe Text
a} :: GetSiteResponse)
getSiteResponse_httpStatus :: Lens.Lens' GetSiteResponse Prelude.Int
getSiteResponse_httpStatus :: Lens' GetSiteResponse Int
getSiteResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSiteResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetSiteResponse' :: GetSiteResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetSiteResponse
s@GetSiteResponse' {} Int
a -> GetSiteResponse
s {$sel:httpStatus:GetSiteResponse' :: Int
httpStatus = Int
a} :: GetSiteResponse)
getSiteResponse_arn :: Lens.Lens' GetSiteResponse Prelude.Text
getSiteResponse_arn :: Lens' GetSiteResponse Text
getSiteResponse_arn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSiteResponse' {Text
arn :: Text
$sel:arn:GetSiteResponse' :: GetSiteResponse -> Text
arn} -> Text
arn) (\s :: GetSiteResponse
s@GetSiteResponse' {} Text
a -> GetSiteResponse
s {$sel:arn:GetSiteResponse' :: Text
arn = Text
a} :: GetSiteResponse)
getSiteResponse_id :: Lens.Lens' GetSiteResponse Prelude.Text
getSiteResponse_id :: Lens' GetSiteResponse Text
getSiteResponse_id = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSiteResponse' {Text
id :: Text
$sel:id:GetSiteResponse' :: GetSiteResponse -> Text
id} -> Text
id) (\s :: GetSiteResponse
s@GetSiteResponse' {} Text
a -> GetSiteResponse
s {$sel:id:GetSiteResponse' :: Text
id = Text
a} :: GetSiteResponse)
getSiteResponse_name :: Lens.Lens' GetSiteResponse Prelude.Text
getSiteResponse_name :: Lens' GetSiteResponse Text
getSiteResponse_name = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSiteResponse' {Text
name :: Text
$sel:name:GetSiteResponse' :: GetSiteResponse -> Text
name} -> Text
name) (\s :: GetSiteResponse
s@GetSiteResponse' {} Text
a -> GetSiteResponse
s {$sel:name:GetSiteResponse' :: Text
name = Text
a} :: GetSiteResponse)
getSiteResponse_countryCode :: Lens.Lens' GetSiteResponse Prelude.Text
getSiteResponse_countryCode :: Lens' GetSiteResponse Text
getSiteResponse_countryCode = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSiteResponse' {Text
countryCode :: Text
$sel:countryCode:GetSiteResponse' :: GetSiteResponse -> Text
countryCode} -> Text
countryCode) (\s :: GetSiteResponse
s@GetSiteResponse' {} Text
a -> GetSiteResponse
s {$sel:countryCode:GetSiteResponse' :: Text
countryCode = Text
a} :: GetSiteResponse)
getSiteResponse_createdAt :: Lens.Lens' GetSiteResponse Prelude.UTCTime
getSiteResponse_createdAt :: Lens' GetSiteResponse UTCTime
getSiteResponse_createdAt = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSiteResponse' {POSIX
createdAt :: POSIX
$sel:createdAt:GetSiteResponse' :: GetSiteResponse -> POSIX
createdAt} -> POSIX
createdAt) (\s :: GetSiteResponse
s@GetSiteResponse' {} POSIX
a -> GetSiteResponse
s {$sel:createdAt:GetSiteResponse' :: POSIX
createdAt = POSIX
a} :: GetSiteResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (a :: Format). Iso' (Time a) UTCTime
Data._Time
getSiteResponse_updatedAt :: Lens.Lens' GetSiteResponse Prelude.UTCTime
getSiteResponse_updatedAt :: Lens' GetSiteResponse UTCTime
getSiteResponse_updatedAt = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSiteResponse' {POSIX
updatedAt :: POSIX
$sel:updatedAt:GetSiteResponse' :: GetSiteResponse -> POSIX
updatedAt} -> POSIX
updatedAt) (\s :: GetSiteResponse
s@GetSiteResponse' {} POSIX
a -> GetSiteResponse
s {$sel:updatedAt:GetSiteResponse' :: POSIX
updatedAt = POSIX
a} :: GetSiteResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (a :: Format). Iso' (Time a) UTCTime
Data._Time
instance Prelude.NFData GetSiteResponse where
rnf :: GetSiteResponse -> ()
rnf GetSiteResponse' {Int
Maybe Text
Text
POSIX
updatedAt :: POSIX
createdAt :: POSIX
countryCode :: Text
name :: Text
id :: Text
arn :: Text
httpStatus :: Int
description :: Maybe Text
$sel:updatedAt:GetSiteResponse' :: GetSiteResponse -> POSIX
$sel:createdAt:GetSiteResponse' :: GetSiteResponse -> POSIX
$sel:countryCode:GetSiteResponse' :: GetSiteResponse -> Text
$sel:name:GetSiteResponse' :: GetSiteResponse -> Text
$sel:id:GetSiteResponse' :: GetSiteResponse -> Text
$sel:arn:GetSiteResponse' :: GetSiteResponse -> Text
$sel:httpStatus:GetSiteResponse' :: GetSiteResponse -> Int
$sel:description:GetSiteResponse' :: GetSiteResponse -> 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 Int
httpStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
arn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
id
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
name
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
countryCode
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf POSIX
createdAt
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf POSIX
updatedAt