{-# 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.XRay.DeleteSamplingRule
(
DeleteSamplingRule (..),
newDeleteSamplingRule,
deleteSamplingRule_ruleARN,
deleteSamplingRule_ruleName,
DeleteSamplingRuleResponse (..),
newDeleteSamplingRuleResponse,
deleteSamplingRuleResponse_samplingRuleRecord,
deleteSamplingRuleResponse_httpStatus,
)
where
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
import Amazonka.XRay.Types
data DeleteSamplingRule = DeleteSamplingRule'
{
DeleteSamplingRule -> Maybe Text
ruleARN :: Prelude.Maybe Prelude.Text,
DeleteSamplingRule -> Maybe Text
ruleName :: Prelude.Maybe Prelude.Text
}
deriving (DeleteSamplingRule -> DeleteSamplingRule -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteSamplingRule -> DeleteSamplingRule -> Bool
$c/= :: DeleteSamplingRule -> DeleteSamplingRule -> Bool
== :: DeleteSamplingRule -> DeleteSamplingRule -> Bool
$c== :: DeleteSamplingRule -> DeleteSamplingRule -> Bool
Prelude.Eq, ReadPrec [DeleteSamplingRule]
ReadPrec DeleteSamplingRule
Int -> ReadS DeleteSamplingRule
ReadS [DeleteSamplingRule]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteSamplingRule]
$creadListPrec :: ReadPrec [DeleteSamplingRule]
readPrec :: ReadPrec DeleteSamplingRule
$creadPrec :: ReadPrec DeleteSamplingRule
readList :: ReadS [DeleteSamplingRule]
$creadList :: ReadS [DeleteSamplingRule]
readsPrec :: Int -> ReadS DeleteSamplingRule
$creadsPrec :: Int -> ReadS DeleteSamplingRule
Prelude.Read, Int -> DeleteSamplingRule -> ShowS
[DeleteSamplingRule] -> ShowS
DeleteSamplingRule -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteSamplingRule] -> ShowS
$cshowList :: [DeleteSamplingRule] -> ShowS
show :: DeleteSamplingRule -> String
$cshow :: DeleteSamplingRule -> String
showsPrec :: Int -> DeleteSamplingRule -> ShowS
$cshowsPrec :: Int -> DeleteSamplingRule -> ShowS
Prelude.Show, forall x. Rep DeleteSamplingRule x -> DeleteSamplingRule
forall x. DeleteSamplingRule -> Rep DeleteSamplingRule x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteSamplingRule x -> DeleteSamplingRule
$cfrom :: forall x. DeleteSamplingRule -> Rep DeleteSamplingRule x
Prelude.Generic)
newDeleteSamplingRule ::
DeleteSamplingRule
newDeleteSamplingRule :: DeleteSamplingRule
newDeleteSamplingRule =
DeleteSamplingRule'
{ $sel:ruleARN:DeleteSamplingRule' :: Maybe Text
ruleARN = forall a. Maybe a
Prelude.Nothing,
$sel:ruleName:DeleteSamplingRule' :: Maybe Text
ruleName = forall a. Maybe a
Prelude.Nothing
}
deleteSamplingRule_ruleARN :: Lens.Lens' DeleteSamplingRule (Prelude.Maybe Prelude.Text)
deleteSamplingRule_ruleARN :: Lens' DeleteSamplingRule (Maybe Text)
deleteSamplingRule_ruleARN = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteSamplingRule' {Maybe Text
ruleARN :: Maybe Text
$sel:ruleARN:DeleteSamplingRule' :: DeleteSamplingRule -> Maybe Text
ruleARN} -> Maybe Text
ruleARN) (\s :: DeleteSamplingRule
s@DeleteSamplingRule' {} Maybe Text
a -> DeleteSamplingRule
s {$sel:ruleARN:DeleteSamplingRule' :: Maybe Text
ruleARN = Maybe Text
a} :: DeleteSamplingRule)
deleteSamplingRule_ruleName :: Lens.Lens' DeleteSamplingRule (Prelude.Maybe Prelude.Text)
deleteSamplingRule_ruleName :: Lens' DeleteSamplingRule (Maybe Text)
deleteSamplingRule_ruleName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteSamplingRule' {Maybe Text
ruleName :: Maybe Text
$sel:ruleName:DeleteSamplingRule' :: DeleteSamplingRule -> Maybe Text
ruleName} -> Maybe Text
ruleName) (\s :: DeleteSamplingRule
s@DeleteSamplingRule' {} Maybe Text
a -> DeleteSamplingRule
s {$sel:ruleName:DeleteSamplingRule' :: Maybe Text
ruleName = Maybe Text
a} :: DeleteSamplingRule)
instance Core.AWSRequest DeleteSamplingRule where
type
AWSResponse DeleteSamplingRule =
DeleteSamplingRuleResponse
request :: (Service -> Service)
-> DeleteSamplingRule -> Request DeleteSamplingRule
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 DeleteSamplingRule
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DeleteSamplingRule)))
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 SamplingRuleRecord -> Int -> DeleteSamplingRuleResponse
DeleteSamplingRuleResponse'
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
"SamplingRuleRecord")
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 DeleteSamplingRule where
hashWithSalt :: Int -> DeleteSamplingRule -> Int
hashWithSalt Int
_salt DeleteSamplingRule' {Maybe Text
ruleName :: Maybe Text
ruleARN :: Maybe Text
$sel:ruleName:DeleteSamplingRule' :: DeleteSamplingRule -> Maybe Text
$sel:ruleARN:DeleteSamplingRule' :: DeleteSamplingRule -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ruleARN
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ruleName
instance Prelude.NFData DeleteSamplingRule where
rnf :: DeleteSamplingRule -> ()
rnf DeleteSamplingRule' {Maybe Text
ruleName :: Maybe Text
ruleARN :: Maybe Text
$sel:ruleName:DeleteSamplingRule' :: DeleteSamplingRule -> Maybe Text
$sel:ruleARN:DeleteSamplingRule' :: DeleteSamplingRule -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ruleARN
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ruleName
instance Data.ToHeaders DeleteSamplingRule where
toHeaders :: DeleteSamplingRule -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToJSON DeleteSamplingRule where
toJSON :: DeleteSamplingRule -> Value
toJSON DeleteSamplingRule' {Maybe Text
ruleName :: Maybe Text
ruleARN :: Maybe Text
$sel:ruleName:DeleteSamplingRule' :: DeleteSamplingRule -> Maybe Text
$sel:ruleARN:DeleteSamplingRule' :: DeleteSamplingRule -> Maybe Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"RuleARN" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
ruleARN,
(Key
"RuleName" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
ruleName
]
)
instance Data.ToPath DeleteSamplingRule where
toPath :: DeleteSamplingRule -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/DeleteSamplingRule"
instance Data.ToQuery DeleteSamplingRule where
toQuery :: DeleteSamplingRule -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeleteSamplingRuleResponse = DeleteSamplingRuleResponse'
{
DeleteSamplingRuleResponse -> Maybe SamplingRuleRecord
samplingRuleRecord :: Prelude.Maybe SamplingRuleRecord,
DeleteSamplingRuleResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeleteSamplingRuleResponse -> DeleteSamplingRuleResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteSamplingRuleResponse -> DeleteSamplingRuleResponse -> Bool
$c/= :: DeleteSamplingRuleResponse -> DeleteSamplingRuleResponse -> Bool
== :: DeleteSamplingRuleResponse -> DeleteSamplingRuleResponse -> Bool
$c== :: DeleteSamplingRuleResponse -> DeleteSamplingRuleResponse -> Bool
Prelude.Eq, ReadPrec [DeleteSamplingRuleResponse]
ReadPrec DeleteSamplingRuleResponse
Int -> ReadS DeleteSamplingRuleResponse
ReadS [DeleteSamplingRuleResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteSamplingRuleResponse]
$creadListPrec :: ReadPrec [DeleteSamplingRuleResponse]
readPrec :: ReadPrec DeleteSamplingRuleResponse
$creadPrec :: ReadPrec DeleteSamplingRuleResponse
readList :: ReadS [DeleteSamplingRuleResponse]
$creadList :: ReadS [DeleteSamplingRuleResponse]
readsPrec :: Int -> ReadS DeleteSamplingRuleResponse
$creadsPrec :: Int -> ReadS DeleteSamplingRuleResponse
Prelude.Read, Int -> DeleteSamplingRuleResponse -> ShowS
[DeleteSamplingRuleResponse] -> ShowS
DeleteSamplingRuleResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteSamplingRuleResponse] -> ShowS
$cshowList :: [DeleteSamplingRuleResponse] -> ShowS
show :: DeleteSamplingRuleResponse -> String
$cshow :: DeleteSamplingRuleResponse -> String
showsPrec :: Int -> DeleteSamplingRuleResponse -> ShowS
$cshowsPrec :: Int -> DeleteSamplingRuleResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteSamplingRuleResponse x -> DeleteSamplingRuleResponse
forall x.
DeleteSamplingRuleResponse -> Rep DeleteSamplingRuleResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteSamplingRuleResponse x -> DeleteSamplingRuleResponse
$cfrom :: forall x.
DeleteSamplingRuleResponse -> Rep DeleteSamplingRuleResponse x
Prelude.Generic)
newDeleteSamplingRuleResponse ::
Prelude.Int ->
DeleteSamplingRuleResponse
newDeleteSamplingRuleResponse :: Int -> DeleteSamplingRuleResponse
newDeleteSamplingRuleResponse Int
pHttpStatus_ =
DeleteSamplingRuleResponse'
{ $sel:samplingRuleRecord:DeleteSamplingRuleResponse' :: Maybe SamplingRuleRecord
samplingRuleRecord =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DeleteSamplingRuleResponse' :: Int
httpStatus = Int
pHttpStatus_
}
deleteSamplingRuleResponse_samplingRuleRecord :: Lens.Lens' DeleteSamplingRuleResponse (Prelude.Maybe SamplingRuleRecord)
deleteSamplingRuleResponse_samplingRuleRecord :: Lens' DeleteSamplingRuleResponse (Maybe SamplingRuleRecord)
deleteSamplingRuleResponse_samplingRuleRecord = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteSamplingRuleResponse' {Maybe SamplingRuleRecord
samplingRuleRecord :: Maybe SamplingRuleRecord
$sel:samplingRuleRecord:DeleteSamplingRuleResponse' :: DeleteSamplingRuleResponse -> Maybe SamplingRuleRecord
samplingRuleRecord} -> Maybe SamplingRuleRecord
samplingRuleRecord) (\s :: DeleteSamplingRuleResponse
s@DeleteSamplingRuleResponse' {} Maybe SamplingRuleRecord
a -> DeleteSamplingRuleResponse
s {$sel:samplingRuleRecord:DeleteSamplingRuleResponse' :: Maybe SamplingRuleRecord
samplingRuleRecord = Maybe SamplingRuleRecord
a} :: DeleteSamplingRuleResponse)
deleteSamplingRuleResponse_httpStatus :: Lens.Lens' DeleteSamplingRuleResponse Prelude.Int
deleteSamplingRuleResponse_httpStatus :: Lens' DeleteSamplingRuleResponse Int
deleteSamplingRuleResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteSamplingRuleResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteSamplingRuleResponse' :: DeleteSamplingRuleResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteSamplingRuleResponse
s@DeleteSamplingRuleResponse' {} Int
a -> DeleteSamplingRuleResponse
s {$sel:httpStatus:DeleteSamplingRuleResponse' :: Int
httpStatus = Int
a} :: DeleteSamplingRuleResponse)
instance Prelude.NFData DeleteSamplingRuleResponse where
rnf :: DeleteSamplingRuleResponse -> ()
rnf DeleteSamplingRuleResponse' {Int
Maybe SamplingRuleRecord
httpStatus :: Int
samplingRuleRecord :: Maybe SamplingRuleRecord
$sel:httpStatus:DeleteSamplingRuleResponse' :: DeleteSamplingRuleResponse -> Int
$sel:samplingRuleRecord:DeleteSamplingRuleResponse' :: DeleteSamplingRuleResponse -> Maybe SamplingRuleRecord
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe SamplingRuleRecord
samplingRuleRecord
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus