{-# 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.GetMonitoringSubscription
(
GetMonitoringSubscription (..),
newGetMonitoringSubscription,
getMonitoringSubscription_distributionId,
GetMonitoringSubscriptionResponse (..),
newGetMonitoringSubscriptionResponse,
getMonitoringSubscriptionResponse_monitoringSubscription,
getMonitoringSubscriptionResponse_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 GetMonitoringSubscription = GetMonitoringSubscription'
{
GetMonitoringSubscription -> Text
distributionId :: Prelude.Text
}
deriving (GetMonitoringSubscription -> GetMonitoringSubscription -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetMonitoringSubscription -> GetMonitoringSubscription -> Bool
$c/= :: GetMonitoringSubscription -> GetMonitoringSubscription -> Bool
== :: GetMonitoringSubscription -> GetMonitoringSubscription -> Bool
$c== :: GetMonitoringSubscription -> GetMonitoringSubscription -> Bool
Prelude.Eq, ReadPrec [GetMonitoringSubscription]
ReadPrec GetMonitoringSubscription
Int -> ReadS GetMonitoringSubscription
ReadS [GetMonitoringSubscription]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetMonitoringSubscription]
$creadListPrec :: ReadPrec [GetMonitoringSubscription]
readPrec :: ReadPrec GetMonitoringSubscription
$creadPrec :: ReadPrec GetMonitoringSubscription
readList :: ReadS [GetMonitoringSubscription]
$creadList :: ReadS [GetMonitoringSubscription]
readsPrec :: Int -> ReadS GetMonitoringSubscription
$creadsPrec :: Int -> ReadS GetMonitoringSubscription
Prelude.Read, Int -> GetMonitoringSubscription -> ShowS
[GetMonitoringSubscription] -> ShowS
GetMonitoringSubscription -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetMonitoringSubscription] -> ShowS
$cshowList :: [GetMonitoringSubscription] -> ShowS
show :: GetMonitoringSubscription -> String
$cshow :: GetMonitoringSubscription -> String
showsPrec :: Int -> GetMonitoringSubscription -> ShowS
$cshowsPrec :: Int -> GetMonitoringSubscription -> ShowS
Prelude.Show, forall x.
Rep GetMonitoringSubscription x -> GetMonitoringSubscription
forall x.
GetMonitoringSubscription -> Rep GetMonitoringSubscription x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetMonitoringSubscription x -> GetMonitoringSubscription
$cfrom :: forall x.
GetMonitoringSubscription -> Rep GetMonitoringSubscription x
Prelude.Generic)
newGetMonitoringSubscription ::
Prelude.Text ->
GetMonitoringSubscription
newGetMonitoringSubscription :: Text -> GetMonitoringSubscription
newGetMonitoringSubscription Text
pDistributionId_ =
GetMonitoringSubscription'
{ $sel:distributionId:GetMonitoringSubscription' :: Text
distributionId =
Text
pDistributionId_
}
getMonitoringSubscription_distributionId :: Lens.Lens' GetMonitoringSubscription Prelude.Text
getMonitoringSubscription_distributionId :: Lens' GetMonitoringSubscription Text
getMonitoringSubscription_distributionId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMonitoringSubscription' {Text
distributionId :: Text
$sel:distributionId:GetMonitoringSubscription' :: GetMonitoringSubscription -> Text
distributionId} -> Text
distributionId) (\s :: GetMonitoringSubscription
s@GetMonitoringSubscription' {} Text
a -> GetMonitoringSubscription
s {$sel:distributionId:GetMonitoringSubscription' :: Text
distributionId = Text
a} :: GetMonitoringSubscription)
instance Core.AWSRequest GetMonitoringSubscription where
type
AWSResponse GetMonitoringSubscription =
GetMonitoringSubscriptionResponse
request :: (Service -> Service)
-> GetMonitoringSubscription -> Request GetMonitoringSubscription
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 GetMonitoringSubscription
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse GetMonitoringSubscription)))
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 MonitoringSubscription
-> Int -> GetMonitoringSubscriptionResponse
GetMonitoringSubscriptionResponse'
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.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance Prelude.Hashable GetMonitoringSubscription where
hashWithSalt :: Int -> GetMonitoringSubscription -> Int
hashWithSalt Int
_salt GetMonitoringSubscription' {Text
distributionId :: Text
$sel:distributionId:GetMonitoringSubscription' :: GetMonitoringSubscription -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
distributionId
instance Prelude.NFData GetMonitoringSubscription where
rnf :: GetMonitoringSubscription -> ()
rnf GetMonitoringSubscription' {Text
distributionId :: Text
$sel:distributionId:GetMonitoringSubscription' :: GetMonitoringSubscription -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
distributionId
instance Data.ToHeaders GetMonitoringSubscription where
toHeaders :: GetMonitoringSubscription -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath GetMonitoringSubscription where
toPath :: GetMonitoringSubscription -> ByteString
toPath GetMonitoringSubscription' {Text
distributionId :: Text
$sel:distributionId:GetMonitoringSubscription' :: GetMonitoringSubscription -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/2020-05-31/distributions/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
distributionId,
ByteString
"/monitoring-subscription/"
]
instance Data.ToQuery GetMonitoringSubscription where
toQuery :: GetMonitoringSubscription -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data GetMonitoringSubscriptionResponse = GetMonitoringSubscriptionResponse'
{
GetMonitoringSubscriptionResponse -> Maybe MonitoringSubscription
monitoringSubscription :: Prelude.Maybe MonitoringSubscription,
GetMonitoringSubscriptionResponse -> Int
httpStatus :: Prelude.Int
}
deriving (GetMonitoringSubscriptionResponse
-> GetMonitoringSubscriptionResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetMonitoringSubscriptionResponse
-> GetMonitoringSubscriptionResponse -> Bool
$c/= :: GetMonitoringSubscriptionResponse
-> GetMonitoringSubscriptionResponse -> Bool
== :: GetMonitoringSubscriptionResponse
-> GetMonitoringSubscriptionResponse -> Bool
$c== :: GetMonitoringSubscriptionResponse
-> GetMonitoringSubscriptionResponse -> Bool
Prelude.Eq, ReadPrec [GetMonitoringSubscriptionResponse]
ReadPrec GetMonitoringSubscriptionResponse
Int -> ReadS GetMonitoringSubscriptionResponse
ReadS [GetMonitoringSubscriptionResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetMonitoringSubscriptionResponse]
$creadListPrec :: ReadPrec [GetMonitoringSubscriptionResponse]
readPrec :: ReadPrec GetMonitoringSubscriptionResponse
$creadPrec :: ReadPrec GetMonitoringSubscriptionResponse
readList :: ReadS [GetMonitoringSubscriptionResponse]
$creadList :: ReadS [GetMonitoringSubscriptionResponse]
readsPrec :: Int -> ReadS GetMonitoringSubscriptionResponse
$creadsPrec :: Int -> ReadS GetMonitoringSubscriptionResponse
Prelude.Read, Int -> GetMonitoringSubscriptionResponse -> ShowS
[GetMonitoringSubscriptionResponse] -> ShowS
GetMonitoringSubscriptionResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetMonitoringSubscriptionResponse] -> ShowS
$cshowList :: [GetMonitoringSubscriptionResponse] -> ShowS
show :: GetMonitoringSubscriptionResponse -> String
$cshow :: GetMonitoringSubscriptionResponse -> String
showsPrec :: Int -> GetMonitoringSubscriptionResponse -> ShowS
$cshowsPrec :: Int -> GetMonitoringSubscriptionResponse -> ShowS
Prelude.Show, forall x.
Rep GetMonitoringSubscriptionResponse x
-> GetMonitoringSubscriptionResponse
forall x.
GetMonitoringSubscriptionResponse
-> Rep GetMonitoringSubscriptionResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetMonitoringSubscriptionResponse x
-> GetMonitoringSubscriptionResponse
$cfrom :: forall x.
GetMonitoringSubscriptionResponse
-> Rep GetMonitoringSubscriptionResponse x
Prelude.Generic)
newGetMonitoringSubscriptionResponse ::
Prelude.Int ->
GetMonitoringSubscriptionResponse
newGetMonitoringSubscriptionResponse :: Int -> GetMonitoringSubscriptionResponse
newGetMonitoringSubscriptionResponse Int
pHttpStatus_ =
GetMonitoringSubscriptionResponse'
{ $sel:monitoringSubscription:GetMonitoringSubscriptionResponse' :: Maybe MonitoringSubscription
monitoringSubscription =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetMonitoringSubscriptionResponse' :: Int
httpStatus = Int
pHttpStatus_
}
getMonitoringSubscriptionResponse_monitoringSubscription :: Lens.Lens' GetMonitoringSubscriptionResponse (Prelude.Maybe MonitoringSubscription)
getMonitoringSubscriptionResponse_monitoringSubscription :: Lens'
GetMonitoringSubscriptionResponse (Maybe MonitoringSubscription)
getMonitoringSubscriptionResponse_monitoringSubscription = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMonitoringSubscriptionResponse' {Maybe MonitoringSubscription
monitoringSubscription :: Maybe MonitoringSubscription
$sel:monitoringSubscription:GetMonitoringSubscriptionResponse' :: GetMonitoringSubscriptionResponse -> Maybe MonitoringSubscription
monitoringSubscription} -> Maybe MonitoringSubscription
monitoringSubscription) (\s :: GetMonitoringSubscriptionResponse
s@GetMonitoringSubscriptionResponse' {} Maybe MonitoringSubscription
a -> GetMonitoringSubscriptionResponse
s {$sel:monitoringSubscription:GetMonitoringSubscriptionResponse' :: Maybe MonitoringSubscription
monitoringSubscription = Maybe MonitoringSubscription
a} :: GetMonitoringSubscriptionResponse)
getMonitoringSubscriptionResponse_httpStatus :: Lens.Lens' GetMonitoringSubscriptionResponse Prelude.Int
getMonitoringSubscriptionResponse_httpStatus :: Lens' GetMonitoringSubscriptionResponse Int
getMonitoringSubscriptionResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetMonitoringSubscriptionResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetMonitoringSubscriptionResponse' :: GetMonitoringSubscriptionResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetMonitoringSubscriptionResponse
s@GetMonitoringSubscriptionResponse' {} Int
a -> GetMonitoringSubscriptionResponse
s {$sel:httpStatus:GetMonitoringSubscriptionResponse' :: Int
httpStatus = Int
a} :: GetMonitoringSubscriptionResponse)
instance
Prelude.NFData
GetMonitoringSubscriptionResponse
where
rnf :: GetMonitoringSubscriptionResponse -> ()
rnf GetMonitoringSubscriptionResponse' {Int
Maybe MonitoringSubscription
httpStatus :: Int
monitoringSubscription :: Maybe MonitoringSubscription
$sel:httpStatus:GetMonitoringSubscriptionResponse' :: GetMonitoringSubscriptionResponse -> Int
$sel:monitoringSubscription:GetMonitoringSubscriptionResponse' :: GetMonitoringSubscriptionResponse -> Maybe MonitoringSubscription
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe MonitoringSubscription
monitoringSubscription
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus