{-# 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.CloudFront.GetCloudFrontOriginAccessIdentityConfig
(
GetCloudFrontOriginAccessIdentityConfig (..),
newGetCloudFrontOriginAccessIdentityConfig,
getCloudFrontOriginAccessIdentityConfig_id,
GetCloudFrontOriginAccessIdentityConfigResponse (..),
newGetCloudFrontOriginAccessIdentityConfigResponse,
getCloudFrontOriginAccessIdentityConfigResponse_cloudFrontOriginAccessIdentityConfig,
getCloudFrontOriginAccessIdentityConfigResponse_eTag,
getCloudFrontOriginAccessIdentityConfigResponse_httpStatus,
)
where
import Amazonka.CloudFront.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 GetCloudFrontOriginAccessIdentityConfig = GetCloudFrontOriginAccessIdentityConfig'
{
GetCloudFrontOriginAccessIdentityConfig -> Text
id :: Prelude.Text
}
deriving (GetCloudFrontOriginAccessIdentityConfig
-> GetCloudFrontOriginAccessIdentityConfig -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetCloudFrontOriginAccessIdentityConfig
-> GetCloudFrontOriginAccessIdentityConfig -> Bool
$c/= :: GetCloudFrontOriginAccessIdentityConfig
-> GetCloudFrontOriginAccessIdentityConfig -> Bool
== :: GetCloudFrontOriginAccessIdentityConfig
-> GetCloudFrontOriginAccessIdentityConfig -> Bool
$c== :: GetCloudFrontOriginAccessIdentityConfig
-> GetCloudFrontOriginAccessIdentityConfig -> Bool
Prelude.Eq, ReadPrec [GetCloudFrontOriginAccessIdentityConfig]
ReadPrec GetCloudFrontOriginAccessIdentityConfig
Int -> ReadS GetCloudFrontOriginAccessIdentityConfig
ReadS [GetCloudFrontOriginAccessIdentityConfig]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetCloudFrontOriginAccessIdentityConfig]
$creadListPrec :: ReadPrec [GetCloudFrontOriginAccessIdentityConfig]
readPrec :: ReadPrec GetCloudFrontOriginAccessIdentityConfig
$creadPrec :: ReadPrec GetCloudFrontOriginAccessIdentityConfig
readList :: ReadS [GetCloudFrontOriginAccessIdentityConfig]
$creadList :: ReadS [GetCloudFrontOriginAccessIdentityConfig]
readsPrec :: Int -> ReadS GetCloudFrontOriginAccessIdentityConfig
$creadsPrec :: Int -> ReadS GetCloudFrontOriginAccessIdentityConfig
Prelude.Read, Int -> GetCloudFrontOriginAccessIdentityConfig -> ShowS
[GetCloudFrontOriginAccessIdentityConfig] -> ShowS
GetCloudFrontOriginAccessIdentityConfig -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetCloudFrontOriginAccessIdentityConfig] -> ShowS
$cshowList :: [GetCloudFrontOriginAccessIdentityConfig] -> ShowS
show :: GetCloudFrontOriginAccessIdentityConfig -> String
$cshow :: GetCloudFrontOriginAccessIdentityConfig -> String
showsPrec :: Int -> GetCloudFrontOriginAccessIdentityConfig -> ShowS
$cshowsPrec :: Int -> GetCloudFrontOriginAccessIdentityConfig -> ShowS
Prelude.Show, forall x.
Rep GetCloudFrontOriginAccessIdentityConfig x
-> GetCloudFrontOriginAccessIdentityConfig
forall x.
GetCloudFrontOriginAccessIdentityConfig
-> Rep GetCloudFrontOriginAccessIdentityConfig x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetCloudFrontOriginAccessIdentityConfig x
-> GetCloudFrontOriginAccessIdentityConfig
$cfrom :: forall x.
GetCloudFrontOriginAccessIdentityConfig
-> Rep GetCloudFrontOriginAccessIdentityConfig x
Prelude.Generic)
newGetCloudFrontOriginAccessIdentityConfig ::
Prelude.Text ->
GetCloudFrontOriginAccessIdentityConfig
newGetCloudFrontOriginAccessIdentityConfig :: Text -> GetCloudFrontOriginAccessIdentityConfig
newGetCloudFrontOriginAccessIdentityConfig Text
pId_ =
GetCloudFrontOriginAccessIdentityConfig' {$sel:id:GetCloudFrontOriginAccessIdentityConfig' :: Text
id = Text
pId_}
getCloudFrontOriginAccessIdentityConfig_id :: Lens.Lens' GetCloudFrontOriginAccessIdentityConfig Prelude.Text
getCloudFrontOriginAccessIdentityConfig_id :: Lens' GetCloudFrontOriginAccessIdentityConfig Text
getCloudFrontOriginAccessIdentityConfig_id = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetCloudFrontOriginAccessIdentityConfig' {Text
id :: Text
$sel:id:GetCloudFrontOriginAccessIdentityConfig' :: GetCloudFrontOriginAccessIdentityConfig -> Text
id} -> Text
id) (\s :: GetCloudFrontOriginAccessIdentityConfig
s@GetCloudFrontOriginAccessIdentityConfig' {} Text
a -> GetCloudFrontOriginAccessIdentityConfig
s {$sel:id:GetCloudFrontOriginAccessIdentityConfig' :: Text
id = Text
a} :: GetCloudFrontOriginAccessIdentityConfig)
instance
Core.AWSRequest
GetCloudFrontOriginAccessIdentityConfig
where
type
AWSResponse
GetCloudFrontOriginAccessIdentityConfig =
GetCloudFrontOriginAccessIdentityConfigResponse
request :: (Service -> Service)
-> GetCloudFrontOriginAccessIdentityConfig
-> Request GetCloudFrontOriginAccessIdentityConfig
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 GetCloudFrontOriginAccessIdentityConfig
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse
(AWSResponse GetCloudFrontOriginAccessIdentityConfig)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> [Node] -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveXML
( \Int
s ResponseHeaders
h [Node]
x ->
Maybe CloudFrontOriginAccessIdentityConfig
-> Maybe Text
-> Int
-> GetCloudFrontOriginAccessIdentityConfigResponse
GetCloudFrontOriginAccessIdentityConfigResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (forall a. FromXML a => [Node] -> Either String a
Data.parseXML [Node]
x)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (ResponseHeaders
h forall a.
FromText a =>
ResponseHeaders -> HeaderName -> Either String (Maybe a)
Data..#? HeaderName
"ETag")
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
GetCloudFrontOriginAccessIdentityConfig
where
hashWithSalt :: Int -> GetCloudFrontOriginAccessIdentityConfig -> Int
hashWithSalt
Int
_salt
GetCloudFrontOriginAccessIdentityConfig' {Text
id :: Text
$sel:id:GetCloudFrontOriginAccessIdentityConfig' :: GetCloudFrontOriginAccessIdentityConfig -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
id
instance
Prelude.NFData
GetCloudFrontOriginAccessIdentityConfig
where
rnf :: GetCloudFrontOriginAccessIdentityConfig -> ()
rnf GetCloudFrontOriginAccessIdentityConfig' {Text
id :: Text
$sel:id:GetCloudFrontOriginAccessIdentityConfig' :: GetCloudFrontOriginAccessIdentityConfig -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
id
instance
Data.ToHeaders
GetCloudFrontOriginAccessIdentityConfig
where
toHeaders :: GetCloudFrontOriginAccessIdentityConfig -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance
Data.ToPath
GetCloudFrontOriginAccessIdentityConfig
where
toPath :: GetCloudFrontOriginAccessIdentityConfig -> ByteString
toPath GetCloudFrontOriginAccessIdentityConfig' {Text
id :: Text
$sel:id:GetCloudFrontOriginAccessIdentityConfig' :: GetCloudFrontOriginAccessIdentityConfig -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/2020-05-31/origin-access-identity/cloudfront/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
id,
ByteString
"/config"
]
instance
Data.ToQuery
GetCloudFrontOriginAccessIdentityConfig
where
toQuery :: GetCloudFrontOriginAccessIdentityConfig -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data GetCloudFrontOriginAccessIdentityConfigResponse = GetCloudFrontOriginAccessIdentityConfigResponse'
{
GetCloudFrontOriginAccessIdentityConfigResponse
-> Maybe CloudFrontOriginAccessIdentityConfig
cloudFrontOriginAccessIdentityConfig :: Prelude.Maybe CloudFrontOriginAccessIdentityConfig,
GetCloudFrontOriginAccessIdentityConfigResponse -> Maybe Text
eTag :: Prelude.Maybe Prelude.Text,
GetCloudFrontOriginAccessIdentityConfigResponse -> Int
httpStatus :: Prelude.Int
}
deriving (GetCloudFrontOriginAccessIdentityConfigResponse
-> GetCloudFrontOriginAccessIdentityConfigResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetCloudFrontOriginAccessIdentityConfigResponse
-> GetCloudFrontOriginAccessIdentityConfigResponse -> Bool
$c/= :: GetCloudFrontOriginAccessIdentityConfigResponse
-> GetCloudFrontOriginAccessIdentityConfigResponse -> Bool
== :: GetCloudFrontOriginAccessIdentityConfigResponse
-> GetCloudFrontOriginAccessIdentityConfigResponse -> Bool
$c== :: GetCloudFrontOriginAccessIdentityConfigResponse
-> GetCloudFrontOriginAccessIdentityConfigResponse -> Bool
Prelude.Eq, ReadPrec [GetCloudFrontOriginAccessIdentityConfigResponse]
ReadPrec GetCloudFrontOriginAccessIdentityConfigResponse
Int -> ReadS GetCloudFrontOriginAccessIdentityConfigResponse
ReadS [GetCloudFrontOriginAccessIdentityConfigResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetCloudFrontOriginAccessIdentityConfigResponse]
$creadListPrec :: ReadPrec [GetCloudFrontOriginAccessIdentityConfigResponse]
readPrec :: ReadPrec GetCloudFrontOriginAccessIdentityConfigResponse
$creadPrec :: ReadPrec GetCloudFrontOriginAccessIdentityConfigResponse
readList :: ReadS [GetCloudFrontOriginAccessIdentityConfigResponse]
$creadList :: ReadS [GetCloudFrontOriginAccessIdentityConfigResponse]
readsPrec :: Int -> ReadS GetCloudFrontOriginAccessIdentityConfigResponse
$creadsPrec :: Int -> ReadS GetCloudFrontOriginAccessIdentityConfigResponse
Prelude.Read, Int -> GetCloudFrontOriginAccessIdentityConfigResponse -> ShowS
[GetCloudFrontOriginAccessIdentityConfigResponse] -> ShowS
GetCloudFrontOriginAccessIdentityConfigResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetCloudFrontOriginAccessIdentityConfigResponse] -> ShowS
$cshowList :: [GetCloudFrontOriginAccessIdentityConfigResponse] -> ShowS
show :: GetCloudFrontOriginAccessIdentityConfigResponse -> String
$cshow :: GetCloudFrontOriginAccessIdentityConfigResponse -> String
showsPrec :: Int -> GetCloudFrontOriginAccessIdentityConfigResponse -> ShowS
$cshowsPrec :: Int -> GetCloudFrontOriginAccessIdentityConfigResponse -> ShowS
Prelude.Show, forall x.
Rep GetCloudFrontOriginAccessIdentityConfigResponse x
-> GetCloudFrontOriginAccessIdentityConfigResponse
forall x.
GetCloudFrontOriginAccessIdentityConfigResponse
-> Rep GetCloudFrontOriginAccessIdentityConfigResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetCloudFrontOriginAccessIdentityConfigResponse x
-> GetCloudFrontOriginAccessIdentityConfigResponse
$cfrom :: forall x.
GetCloudFrontOriginAccessIdentityConfigResponse
-> Rep GetCloudFrontOriginAccessIdentityConfigResponse x
Prelude.Generic)
newGetCloudFrontOriginAccessIdentityConfigResponse ::
Prelude.Int ->
GetCloudFrontOriginAccessIdentityConfigResponse
newGetCloudFrontOriginAccessIdentityConfigResponse :: Int -> GetCloudFrontOriginAccessIdentityConfigResponse
newGetCloudFrontOriginAccessIdentityConfigResponse
Int
pHttpStatus_ =
GetCloudFrontOriginAccessIdentityConfigResponse'
{ $sel:cloudFrontOriginAccessIdentityConfig:GetCloudFrontOriginAccessIdentityConfigResponse' :: Maybe CloudFrontOriginAccessIdentityConfig
cloudFrontOriginAccessIdentityConfig =
forall a. Maybe a
Prelude.Nothing,
$sel:eTag:GetCloudFrontOriginAccessIdentityConfigResponse' :: Maybe Text
eTag = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetCloudFrontOriginAccessIdentityConfigResponse' :: Int
httpStatus = Int
pHttpStatus_
}
getCloudFrontOriginAccessIdentityConfigResponse_cloudFrontOriginAccessIdentityConfig :: Lens.Lens' GetCloudFrontOriginAccessIdentityConfigResponse (Prelude.Maybe CloudFrontOriginAccessIdentityConfig)
getCloudFrontOriginAccessIdentityConfigResponse_cloudFrontOriginAccessIdentityConfig :: Lens'
GetCloudFrontOriginAccessIdentityConfigResponse
(Maybe CloudFrontOriginAccessIdentityConfig)
getCloudFrontOriginAccessIdentityConfigResponse_cloudFrontOriginAccessIdentityConfig = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetCloudFrontOriginAccessIdentityConfigResponse' {Maybe CloudFrontOriginAccessIdentityConfig
cloudFrontOriginAccessIdentityConfig :: Maybe CloudFrontOriginAccessIdentityConfig
$sel:cloudFrontOriginAccessIdentityConfig:GetCloudFrontOriginAccessIdentityConfigResponse' :: GetCloudFrontOriginAccessIdentityConfigResponse
-> Maybe CloudFrontOriginAccessIdentityConfig
cloudFrontOriginAccessIdentityConfig} -> Maybe CloudFrontOriginAccessIdentityConfig
cloudFrontOriginAccessIdentityConfig) (\s :: GetCloudFrontOriginAccessIdentityConfigResponse
s@GetCloudFrontOriginAccessIdentityConfigResponse' {} Maybe CloudFrontOriginAccessIdentityConfig
a -> GetCloudFrontOriginAccessIdentityConfigResponse
s {$sel:cloudFrontOriginAccessIdentityConfig:GetCloudFrontOriginAccessIdentityConfigResponse' :: Maybe CloudFrontOriginAccessIdentityConfig
cloudFrontOriginAccessIdentityConfig = Maybe CloudFrontOriginAccessIdentityConfig
a} :: GetCloudFrontOriginAccessIdentityConfigResponse)
getCloudFrontOriginAccessIdentityConfigResponse_eTag :: Lens.Lens' GetCloudFrontOriginAccessIdentityConfigResponse (Prelude.Maybe Prelude.Text)
getCloudFrontOriginAccessIdentityConfigResponse_eTag :: Lens' GetCloudFrontOriginAccessIdentityConfigResponse (Maybe Text)
getCloudFrontOriginAccessIdentityConfigResponse_eTag = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetCloudFrontOriginAccessIdentityConfigResponse' {Maybe Text
eTag :: Maybe Text
$sel:eTag:GetCloudFrontOriginAccessIdentityConfigResponse' :: GetCloudFrontOriginAccessIdentityConfigResponse -> Maybe Text
eTag} -> Maybe Text
eTag) (\s :: GetCloudFrontOriginAccessIdentityConfigResponse
s@GetCloudFrontOriginAccessIdentityConfigResponse' {} Maybe Text
a -> GetCloudFrontOriginAccessIdentityConfigResponse
s {$sel:eTag:GetCloudFrontOriginAccessIdentityConfigResponse' :: Maybe Text
eTag = Maybe Text
a} :: GetCloudFrontOriginAccessIdentityConfigResponse)
getCloudFrontOriginAccessIdentityConfigResponse_httpStatus :: Lens.Lens' GetCloudFrontOriginAccessIdentityConfigResponse Prelude.Int
getCloudFrontOriginAccessIdentityConfigResponse_httpStatus :: Lens' GetCloudFrontOriginAccessIdentityConfigResponse Int
getCloudFrontOriginAccessIdentityConfigResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetCloudFrontOriginAccessIdentityConfigResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetCloudFrontOriginAccessIdentityConfigResponse' :: GetCloudFrontOriginAccessIdentityConfigResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetCloudFrontOriginAccessIdentityConfigResponse
s@GetCloudFrontOriginAccessIdentityConfigResponse' {} Int
a -> GetCloudFrontOriginAccessIdentityConfigResponse
s {$sel:httpStatus:GetCloudFrontOriginAccessIdentityConfigResponse' :: Int
httpStatus = Int
a} :: GetCloudFrontOriginAccessIdentityConfigResponse)
instance
Prelude.NFData
GetCloudFrontOriginAccessIdentityConfigResponse
where
rnf :: GetCloudFrontOriginAccessIdentityConfigResponse -> ()
rnf
GetCloudFrontOriginAccessIdentityConfigResponse' {Int
Maybe Text
Maybe CloudFrontOriginAccessIdentityConfig
httpStatus :: Int
eTag :: Maybe Text
cloudFrontOriginAccessIdentityConfig :: Maybe CloudFrontOriginAccessIdentityConfig
$sel:httpStatus:GetCloudFrontOriginAccessIdentityConfigResponse' :: GetCloudFrontOriginAccessIdentityConfigResponse -> Int
$sel:eTag:GetCloudFrontOriginAccessIdentityConfigResponse' :: GetCloudFrontOriginAccessIdentityConfigResponse -> Maybe Text
$sel:cloudFrontOriginAccessIdentityConfig:GetCloudFrontOriginAccessIdentityConfigResponse' :: GetCloudFrontOriginAccessIdentityConfigResponse
-> Maybe CloudFrontOriginAccessIdentityConfig
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe CloudFrontOriginAccessIdentityConfig
cloudFrontOriginAccessIdentityConfig
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
eTag
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus