{-# 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.Lightsail.GetContainerAPIMetadata
(
GetContainerAPIMetadata (..),
newGetContainerAPIMetadata,
GetContainerAPIMetadataResponse (..),
newGetContainerAPIMetadataResponse,
getContainerAPIMetadataResponse_metadata,
getContainerAPIMetadataResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Lightsail.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data GetContainerAPIMetadata = GetContainerAPIMetadata'
{
}
deriving (GetContainerAPIMetadata -> GetContainerAPIMetadata -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetContainerAPIMetadata -> GetContainerAPIMetadata -> Bool
$c/= :: GetContainerAPIMetadata -> GetContainerAPIMetadata -> Bool
== :: GetContainerAPIMetadata -> GetContainerAPIMetadata -> Bool
$c== :: GetContainerAPIMetadata -> GetContainerAPIMetadata -> Bool
Prelude.Eq, ReadPrec [GetContainerAPIMetadata]
ReadPrec GetContainerAPIMetadata
Int -> ReadS GetContainerAPIMetadata
ReadS [GetContainerAPIMetadata]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetContainerAPIMetadata]
$creadListPrec :: ReadPrec [GetContainerAPIMetadata]
readPrec :: ReadPrec GetContainerAPIMetadata
$creadPrec :: ReadPrec GetContainerAPIMetadata
readList :: ReadS [GetContainerAPIMetadata]
$creadList :: ReadS [GetContainerAPIMetadata]
readsPrec :: Int -> ReadS GetContainerAPIMetadata
$creadsPrec :: Int -> ReadS GetContainerAPIMetadata
Prelude.Read, Int -> GetContainerAPIMetadata -> ShowS
[GetContainerAPIMetadata] -> ShowS
GetContainerAPIMetadata -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetContainerAPIMetadata] -> ShowS
$cshowList :: [GetContainerAPIMetadata] -> ShowS
show :: GetContainerAPIMetadata -> String
$cshow :: GetContainerAPIMetadata -> String
showsPrec :: Int -> GetContainerAPIMetadata -> ShowS
$cshowsPrec :: Int -> GetContainerAPIMetadata -> ShowS
Prelude.Show, forall x. Rep GetContainerAPIMetadata x -> GetContainerAPIMetadata
forall x. GetContainerAPIMetadata -> Rep GetContainerAPIMetadata x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetContainerAPIMetadata x -> GetContainerAPIMetadata
$cfrom :: forall x. GetContainerAPIMetadata -> Rep GetContainerAPIMetadata x
Prelude.Generic)
newGetContainerAPIMetadata ::
GetContainerAPIMetadata
newGetContainerAPIMetadata :: GetContainerAPIMetadata
newGetContainerAPIMetadata = GetContainerAPIMetadata
GetContainerAPIMetadata'
instance Core.AWSRequest GetContainerAPIMetadata where
type
AWSResponse GetContainerAPIMetadata =
GetContainerAPIMetadataResponse
request :: (Service -> Service)
-> GetContainerAPIMetadata -> Request GetContainerAPIMetadata
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 GetContainerAPIMetadata
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse GetContainerAPIMetadata)))
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 [HashMap Text Text] -> Int -> GetContainerAPIMetadataResponse
GetContainerAPIMetadataResponse'
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
"metadata" forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty)
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 GetContainerAPIMetadata where
hashWithSalt :: Int -> GetContainerAPIMetadata -> Int
hashWithSalt Int
_salt GetContainerAPIMetadata
_ =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` ()
instance Prelude.NFData GetContainerAPIMetadata where
rnf :: GetContainerAPIMetadata -> ()
rnf GetContainerAPIMetadata
_ = ()
instance Data.ToHeaders GetContainerAPIMetadata where
toHeaders :: GetContainerAPIMetadata -> 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
"Lightsail_20161128.GetContainerAPIMetadata" ::
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 GetContainerAPIMetadata where
toJSON :: GetContainerAPIMetadata -> Value
toJSON = forall a b. a -> b -> a
Prelude.const (Object -> Value
Data.Object forall a. Monoid a => a
Prelude.mempty)
instance Data.ToPath GetContainerAPIMetadata where
toPath :: GetContainerAPIMetadata -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery GetContainerAPIMetadata where
toQuery :: GetContainerAPIMetadata -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data GetContainerAPIMetadataResponse = GetContainerAPIMetadataResponse'
{
GetContainerAPIMetadataResponse -> Maybe [HashMap Text Text]
metadata :: Prelude.Maybe [Prelude.HashMap Prelude.Text Prelude.Text],
GetContainerAPIMetadataResponse -> Int
httpStatus :: Prelude.Int
}
deriving (GetContainerAPIMetadataResponse
-> GetContainerAPIMetadataResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetContainerAPIMetadataResponse
-> GetContainerAPIMetadataResponse -> Bool
$c/= :: GetContainerAPIMetadataResponse
-> GetContainerAPIMetadataResponse -> Bool
== :: GetContainerAPIMetadataResponse
-> GetContainerAPIMetadataResponse -> Bool
$c== :: GetContainerAPIMetadataResponse
-> GetContainerAPIMetadataResponse -> Bool
Prelude.Eq, ReadPrec [GetContainerAPIMetadataResponse]
ReadPrec GetContainerAPIMetadataResponse
Int -> ReadS GetContainerAPIMetadataResponse
ReadS [GetContainerAPIMetadataResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetContainerAPIMetadataResponse]
$creadListPrec :: ReadPrec [GetContainerAPIMetadataResponse]
readPrec :: ReadPrec GetContainerAPIMetadataResponse
$creadPrec :: ReadPrec GetContainerAPIMetadataResponse
readList :: ReadS [GetContainerAPIMetadataResponse]
$creadList :: ReadS [GetContainerAPIMetadataResponse]
readsPrec :: Int -> ReadS GetContainerAPIMetadataResponse
$creadsPrec :: Int -> ReadS GetContainerAPIMetadataResponse
Prelude.Read, Int -> GetContainerAPIMetadataResponse -> ShowS
[GetContainerAPIMetadataResponse] -> ShowS
GetContainerAPIMetadataResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetContainerAPIMetadataResponse] -> ShowS
$cshowList :: [GetContainerAPIMetadataResponse] -> ShowS
show :: GetContainerAPIMetadataResponse -> String
$cshow :: GetContainerAPIMetadataResponse -> String
showsPrec :: Int -> GetContainerAPIMetadataResponse -> ShowS
$cshowsPrec :: Int -> GetContainerAPIMetadataResponse -> ShowS
Prelude.Show, forall x.
Rep GetContainerAPIMetadataResponse x
-> GetContainerAPIMetadataResponse
forall x.
GetContainerAPIMetadataResponse
-> Rep GetContainerAPIMetadataResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetContainerAPIMetadataResponse x
-> GetContainerAPIMetadataResponse
$cfrom :: forall x.
GetContainerAPIMetadataResponse
-> Rep GetContainerAPIMetadataResponse x
Prelude.Generic)
newGetContainerAPIMetadataResponse ::
Prelude.Int ->
GetContainerAPIMetadataResponse
newGetContainerAPIMetadataResponse :: Int -> GetContainerAPIMetadataResponse
newGetContainerAPIMetadataResponse Int
pHttpStatus_ =
GetContainerAPIMetadataResponse'
{ $sel:metadata:GetContainerAPIMetadataResponse' :: Maybe [HashMap Text Text]
metadata =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetContainerAPIMetadataResponse' :: Int
httpStatus = Int
pHttpStatus_
}
getContainerAPIMetadataResponse_metadata :: Lens.Lens' GetContainerAPIMetadataResponse (Prelude.Maybe [Prelude.HashMap Prelude.Text Prelude.Text])
getContainerAPIMetadataResponse_metadata :: Lens' GetContainerAPIMetadataResponse (Maybe [HashMap Text Text])
getContainerAPIMetadataResponse_metadata = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetContainerAPIMetadataResponse' {Maybe [HashMap Text Text]
metadata :: Maybe [HashMap Text Text]
$sel:metadata:GetContainerAPIMetadataResponse' :: GetContainerAPIMetadataResponse -> Maybe [HashMap Text Text]
metadata} -> Maybe [HashMap Text Text]
metadata) (\s :: GetContainerAPIMetadataResponse
s@GetContainerAPIMetadataResponse' {} Maybe [HashMap Text Text]
a -> GetContainerAPIMetadataResponse
s {$sel:metadata:GetContainerAPIMetadataResponse' :: Maybe [HashMap Text Text]
metadata = Maybe [HashMap Text Text]
a} :: GetContainerAPIMetadataResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
getContainerAPIMetadataResponse_httpStatus :: Lens.Lens' GetContainerAPIMetadataResponse Prelude.Int
getContainerAPIMetadataResponse_httpStatus :: Lens' GetContainerAPIMetadataResponse Int
getContainerAPIMetadataResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetContainerAPIMetadataResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetContainerAPIMetadataResponse' :: GetContainerAPIMetadataResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetContainerAPIMetadataResponse
s@GetContainerAPIMetadataResponse' {} Int
a -> GetContainerAPIMetadataResponse
s {$sel:httpStatus:GetContainerAPIMetadataResponse' :: Int
httpStatus = Int
a} :: GetContainerAPIMetadataResponse)
instance
Prelude.NFData
GetContainerAPIMetadataResponse
where
rnf :: GetContainerAPIMetadataResponse -> ()
rnf GetContainerAPIMetadataResponse' {Int
Maybe [HashMap Text Text]
httpStatus :: Int
metadata :: Maybe [HashMap Text Text]
$sel:httpStatus:GetContainerAPIMetadataResponse' :: GetContainerAPIMetadataResponse -> Int
$sel:metadata:GetContainerAPIMetadataResponse' :: GetContainerAPIMetadataResponse -> Maybe [HashMap Text Text]
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe [HashMap Text Text]
metadata
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus