{-# 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.Route53Resolver.CreateFirewallRule
(
CreateFirewallRule (..),
newCreateFirewallRule,
createFirewallRule_blockOverrideDnsType,
createFirewallRule_blockOverrideDomain,
createFirewallRule_blockOverrideTtl,
createFirewallRule_blockResponse,
createFirewallRule_creatorRequestId,
createFirewallRule_firewallRuleGroupId,
createFirewallRule_firewallDomainListId,
createFirewallRule_priority,
createFirewallRule_action,
createFirewallRule_name,
CreateFirewallRuleResponse (..),
newCreateFirewallRuleResponse,
createFirewallRuleResponse_firewallRule,
createFirewallRuleResponse_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.Route53Resolver.Types
data CreateFirewallRule = CreateFirewallRule'
{
CreateFirewallRule -> Maybe BlockOverrideDnsType
blockOverrideDnsType :: Prelude.Maybe BlockOverrideDnsType,
CreateFirewallRule -> Maybe Text
blockOverrideDomain :: Prelude.Maybe Prelude.Text,
CreateFirewallRule -> Maybe Natural
blockOverrideTtl :: Prelude.Maybe Prelude.Natural,
CreateFirewallRule -> Maybe BlockResponse
blockResponse :: Prelude.Maybe BlockResponse,
CreateFirewallRule -> Text
creatorRequestId :: Prelude.Text,
CreateFirewallRule -> Text
firewallRuleGroupId :: Prelude.Text,
CreateFirewallRule -> Text
firewallDomainListId :: Prelude.Text,
CreateFirewallRule -> Int
priority :: Prelude.Int,
CreateFirewallRule -> Action
action :: Action,
CreateFirewallRule -> Text
name :: Prelude.Text
}
deriving (CreateFirewallRule -> CreateFirewallRule -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateFirewallRule -> CreateFirewallRule -> Bool
$c/= :: CreateFirewallRule -> CreateFirewallRule -> Bool
== :: CreateFirewallRule -> CreateFirewallRule -> Bool
$c== :: CreateFirewallRule -> CreateFirewallRule -> Bool
Prelude.Eq, ReadPrec [CreateFirewallRule]
ReadPrec CreateFirewallRule
Int -> ReadS CreateFirewallRule
ReadS [CreateFirewallRule]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreateFirewallRule]
$creadListPrec :: ReadPrec [CreateFirewallRule]
readPrec :: ReadPrec CreateFirewallRule
$creadPrec :: ReadPrec CreateFirewallRule
readList :: ReadS [CreateFirewallRule]
$creadList :: ReadS [CreateFirewallRule]
readsPrec :: Int -> ReadS CreateFirewallRule
$creadsPrec :: Int -> ReadS CreateFirewallRule
Prelude.Read, Int -> CreateFirewallRule -> ShowS
[CreateFirewallRule] -> ShowS
CreateFirewallRule -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateFirewallRule] -> ShowS
$cshowList :: [CreateFirewallRule] -> ShowS
show :: CreateFirewallRule -> String
$cshow :: CreateFirewallRule -> String
showsPrec :: Int -> CreateFirewallRule -> ShowS
$cshowsPrec :: Int -> CreateFirewallRule -> ShowS
Prelude.Show, forall x. Rep CreateFirewallRule x -> CreateFirewallRule
forall x. CreateFirewallRule -> Rep CreateFirewallRule x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep CreateFirewallRule x -> CreateFirewallRule
$cfrom :: forall x. CreateFirewallRule -> Rep CreateFirewallRule x
Prelude.Generic)
newCreateFirewallRule ::
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
Prelude.Int ->
Action ->
Prelude.Text ->
CreateFirewallRule
newCreateFirewallRule :: Text -> Text -> Text -> Int -> Action -> Text -> CreateFirewallRule
newCreateFirewallRule
Text
pCreatorRequestId_
Text
pFirewallRuleGroupId_
Text
pFirewallDomainListId_
Int
pPriority_
Action
pAction_
Text
pName_ =
CreateFirewallRule'
{ $sel:blockOverrideDnsType:CreateFirewallRule' :: Maybe BlockOverrideDnsType
blockOverrideDnsType =
forall a. Maybe a
Prelude.Nothing,
$sel:blockOverrideDomain:CreateFirewallRule' :: Maybe Text
blockOverrideDomain = forall a. Maybe a
Prelude.Nothing,
$sel:blockOverrideTtl:CreateFirewallRule' :: Maybe Natural
blockOverrideTtl = forall a. Maybe a
Prelude.Nothing,
$sel:blockResponse:CreateFirewallRule' :: Maybe BlockResponse
blockResponse = forall a. Maybe a
Prelude.Nothing,
$sel:creatorRequestId:CreateFirewallRule' :: Text
creatorRequestId = Text
pCreatorRequestId_,
$sel:firewallRuleGroupId:CreateFirewallRule' :: Text
firewallRuleGroupId = Text
pFirewallRuleGroupId_,
$sel:firewallDomainListId:CreateFirewallRule' :: Text
firewallDomainListId = Text
pFirewallDomainListId_,
$sel:priority:CreateFirewallRule' :: Int
priority = Int
pPriority_,
$sel:action:CreateFirewallRule' :: Action
action = Action
pAction_,
$sel:name:CreateFirewallRule' :: Text
name = Text
pName_
}
createFirewallRule_blockOverrideDnsType :: Lens.Lens' CreateFirewallRule (Prelude.Maybe BlockOverrideDnsType)
createFirewallRule_blockOverrideDnsType :: Lens' CreateFirewallRule (Maybe BlockOverrideDnsType)
createFirewallRule_blockOverrideDnsType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateFirewallRule' {Maybe BlockOverrideDnsType
blockOverrideDnsType :: Maybe BlockOverrideDnsType
$sel:blockOverrideDnsType:CreateFirewallRule' :: CreateFirewallRule -> Maybe BlockOverrideDnsType
blockOverrideDnsType} -> Maybe BlockOverrideDnsType
blockOverrideDnsType) (\s :: CreateFirewallRule
s@CreateFirewallRule' {} Maybe BlockOverrideDnsType
a -> CreateFirewallRule
s {$sel:blockOverrideDnsType:CreateFirewallRule' :: Maybe BlockOverrideDnsType
blockOverrideDnsType = Maybe BlockOverrideDnsType
a} :: CreateFirewallRule)
createFirewallRule_blockOverrideDomain :: Lens.Lens' CreateFirewallRule (Prelude.Maybe Prelude.Text)
createFirewallRule_blockOverrideDomain :: Lens' CreateFirewallRule (Maybe Text)
createFirewallRule_blockOverrideDomain = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateFirewallRule' {Maybe Text
blockOverrideDomain :: Maybe Text
$sel:blockOverrideDomain:CreateFirewallRule' :: CreateFirewallRule -> Maybe Text
blockOverrideDomain} -> Maybe Text
blockOverrideDomain) (\s :: CreateFirewallRule
s@CreateFirewallRule' {} Maybe Text
a -> CreateFirewallRule
s {$sel:blockOverrideDomain:CreateFirewallRule' :: Maybe Text
blockOverrideDomain = Maybe Text
a} :: CreateFirewallRule)
createFirewallRule_blockOverrideTtl :: Lens.Lens' CreateFirewallRule (Prelude.Maybe Prelude.Natural)
createFirewallRule_blockOverrideTtl :: Lens' CreateFirewallRule (Maybe Natural)
createFirewallRule_blockOverrideTtl = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateFirewallRule' {Maybe Natural
blockOverrideTtl :: Maybe Natural
$sel:blockOverrideTtl:CreateFirewallRule' :: CreateFirewallRule -> Maybe Natural
blockOverrideTtl} -> Maybe Natural
blockOverrideTtl) (\s :: CreateFirewallRule
s@CreateFirewallRule' {} Maybe Natural
a -> CreateFirewallRule
s {$sel:blockOverrideTtl:CreateFirewallRule' :: Maybe Natural
blockOverrideTtl = Maybe Natural
a} :: CreateFirewallRule)
createFirewallRule_blockResponse :: Lens.Lens' CreateFirewallRule (Prelude.Maybe BlockResponse)
createFirewallRule_blockResponse :: Lens' CreateFirewallRule (Maybe BlockResponse)
createFirewallRule_blockResponse = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateFirewallRule' {Maybe BlockResponse
blockResponse :: Maybe BlockResponse
$sel:blockResponse:CreateFirewallRule' :: CreateFirewallRule -> Maybe BlockResponse
blockResponse} -> Maybe BlockResponse
blockResponse) (\s :: CreateFirewallRule
s@CreateFirewallRule' {} Maybe BlockResponse
a -> CreateFirewallRule
s {$sel:blockResponse:CreateFirewallRule' :: Maybe BlockResponse
blockResponse = Maybe BlockResponse
a} :: CreateFirewallRule)
createFirewallRule_creatorRequestId :: Lens.Lens' CreateFirewallRule Prelude.Text
createFirewallRule_creatorRequestId :: Lens' CreateFirewallRule Text
createFirewallRule_creatorRequestId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateFirewallRule' {Text
creatorRequestId :: Text
$sel:creatorRequestId:CreateFirewallRule' :: CreateFirewallRule -> Text
creatorRequestId} -> Text
creatorRequestId) (\s :: CreateFirewallRule
s@CreateFirewallRule' {} Text
a -> CreateFirewallRule
s {$sel:creatorRequestId:CreateFirewallRule' :: Text
creatorRequestId = Text
a} :: CreateFirewallRule)
createFirewallRule_firewallRuleGroupId :: Lens.Lens' CreateFirewallRule Prelude.Text
createFirewallRule_firewallRuleGroupId :: Lens' CreateFirewallRule Text
createFirewallRule_firewallRuleGroupId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateFirewallRule' {Text
firewallRuleGroupId :: Text
$sel:firewallRuleGroupId:CreateFirewallRule' :: CreateFirewallRule -> Text
firewallRuleGroupId} -> Text
firewallRuleGroupId) (\s :: CreateFirewallRule
s@CreateFirewallRule' {} Text
a -> CreateFirewallRule
s {$sel:firewallRuleGroupId:CreateFirewallRule' :: Text
firewallRuleGroupId = Text
a} :: CreateFirewallRule)
createFirewallRule_firewallDomainListId :: Lens.Lens' CreateFirewallRule Prelude.Text
createFirewallRule_firewallDomainListId :: Lens' CreateFirewallRule Text
createFirewallRule_firewallDomainListId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateFirewallRule' {Text
firewallDomainListId :: Text
$sel:firewallDomainListId:CreateFirewallRule' :: CreateFirewallRule -> Text
firewallDomainListId} -> Text
firewallDomainListId) (\s :: CreateFirewallRule
s@CreateFirewallRule' {} Text
a -> CreateFirewallRule
s {$sel:firewallDomainListId:CreateFirewallRule' :: Text
firewallDomainListId = Text
a} :: CreateFirewallRule)
createFirewallRule_priority :: Lens.Lens' CreateFirewallRule Prelude.Int
createFirewallRule_priority :: Lens' CreateFirewallRule Int
createFirewallRule_priority = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateFirewallRule' {Int
priority :: Int
$sel:priority:CreateFirewallRule' :: CreateFirewallRule -> Int
priority} -> Int
priority) (\s :: CreateFirewallRule
s@CreateFirewallRule' {} Int
a -> CreateFirewallRule
s {$sel:priority:CreateFirewallRule' :: Int
priority = Int
a} :: CreateFirewallRule)
createFirewallRule_action :: Lens.Lens' CreateFirewallRule Action
createFirewallRule_action :: Lens' CreateFirewallRule Action
createFirewallRule_action = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateFirewallRule' {Action
action :: Action
$sel:action:CreateFirewallRule' :: CreateFirewallRule -> Action
action} -> Action
action) (\s :: CreateFirewallRule
s@CreateFirewallRule' {} Action
a -> CreateFirewallRule
s {$sel:action:CreateFirewallRule' :: Action
action = Action
a} :: CreateFirewallRule)
createFirewallRule_name :: Lens.Lens' CreateFirewallRule Prelude.Text
createFirewallRule_name :: Lens' CreateFirewallRule Text
createFirewallRule_name = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateFirewallRule' {Text
name :: Text
$sel:name:CreateFirewallRule' :: CreateFirewallRule -> Text
name} -> Text
name) (\s :: CreateFirewallRule
s@CreateFirewallRule' {} Text
a -> CreateFirewallRule
s {$sel:name:CreateFirewallRule' :: Text
name = Text
a} :: CreateFirewallRule)
instance Core.AWSRequest CreateFirewallRule where
type
AWSResponse CreateFirewallRule =
CreateFirewallRuleResponse
request :: (Service -> Service)
-> CreateFirewallRule -> Request CreateFirewallRule
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 CreateFirewallRule
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse CreateFirewallRule)))
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 FirewallRule -> Int -> CreateFirewallRuleResponse
CreateFirewallRuleResponse'
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
"FirewallRule")
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 CreateFirewallRule where
hashWithSalt :: Int -> CreateFirewallRule -> Int
hashWithSalt Int
_salt CreateFirewallRule' {Int
Maybe Natural
Maybe Text
Maybe BlockOverrideDnsType
Maybe BlockResponse
Text
Action
name :: Text
action :: Action
priority :: Int
firewallDomainListId :: Text
firewallRuleGroupId :: Text
creatorRequestId :: Text
blockResponse :: Maybe BlockResponse
blockOverrideTtl :: Maybe Natural
blockOverrideDomain :: Maybe Text
blockOverrideDnsType :: Maybe BlockOverrideDnsType
$sel:name:CreateFirewallRule' :: CreateFirewallRule -> Text
$sel:action:CreateFirewallRule' :: CreateFirewallRule -> Action
$sel:priority:CreateFirewallRule' :: CreateFirewallRule -> Int
$sel:firewallDomainListId:CreateFirewallRule' :: CreateFirewallRule -> Text
$sel:firewallRuleGroupId:CreateFirewallRule' :: CreateFirewallRule -> Text
$sel:creatorRequestId:CreateFirewallRule' :: CreateFirewallRule -> Text
$sel:blockResponse:CreateFirewallRule' :: CreateFirewallRule -> Maybe BlockResponse
$sel:blockOverrideTtl:CreateFirewallRule' :: CreateFirewallRule -> Maybe Natural
$sel:blockOverrideDomain:CreateFirewallRule' :: CreateFirewallRule -> Maybe Text
$sel:blockOverrideDnsType:CreateFirewallRule' :: CreateFirewallRule -> Maybe BlockOverrideDnsType
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BlockOverrideDnsType
blockOverrideDnsType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
blockOverrideDomain
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
blockOverrideTtl
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BlockResponse
blockResponse
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
creatorRequestId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
firewallRuleGroupId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
firewallDomainListId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Int
priority
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Action
action
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
name
instance Prelude.NFData CreateFirewallRule where
rnf :: CreateFirewallRule -> ()
rnf CreateFirewallRule' {Int
Maybe Natural
Maybe Text
Maybe BlockOverrideDnsType
Maybe BlockResponse
Text
Action
name :: Text
action :: Action
priority :: Int
firewallDomainListId :: Text
firewallRuleGroupId :: Text
creatorRequestId :: Text
blockResponse :: Maybe BlockResponse
blockOverrideTtl :: Maybe Natural
blockOverrideDomain :: Maybe Text
blockOverrideDnsType :: Maybe BlockOverrideDnsType
$sel:name:CreateFirewallRule' :: CreateFirewallRule -> Text
$sel:action:CreateFirewallRule' :: CreateFirewallRule -> Action
$sel:priority:CreateFirewallRule' :: CreateFirewallRule -> Int
$sel:firewallDomainListId:CreateFirewallRule' :: CreateFirewallRule -> Text
$sel:firewallRuleGroupId:CreateFirewallRule' :: CreateFirewallRule -> Text
$sel:creatorRequestId:CreateFirewallRule' :: CreateFirewallRule -> Text
$sel:blockResponse:CreateFirewallRule' :: CreateFirewallRule -> Maybe BlockResponse
$sel:blockOverrideTtl:CreateFirewallRule' :: CreateFirewallRule -> Maybe Natural
$sel:blockOverrideDomain:CreateFirewallRule' :: CreateFirewallRule -> Maybe Text
$sel:blockOverrideDnsType:CreateFirewallRule' :: CreateFirewallRule -> Maybe BlockOverrideDnsType
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe BlockOverrideDnsType
blockOverrideDnsType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
blockOverrideDomain
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
blockOverrideTtl
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BlockResponse
blockResponse
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
creatorRequestId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
firewallRuleGroupId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
firewallDomainListId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
priority
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Action
action
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
name
instance Data.ToHeaders CreateFirewallRule where
toHeaders :: CreateFirewallRule -> 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
"Route53Resolver.CreateFirewallRule" ::
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 CreateFirewallRule where
toJSON :: CreateFirewallRule -> Value
toJSON CreateFirewallRule' {Int
Maybe Natural
Maybe Text
Maybe BlockOverrideDnsType
Maybe BlockResponse
Text
Action
name :: Text
action :: Action
priority :: Int
firewallDomainListId :: Text
firewallRuleGroupId :: Text
creatorRequestId :: Text
blockResponse :: Maybe BlockResponse
blockOverrideTtl :: Maybe Natural
blockOverrideDomain :: Maybe Text
blockOverrideDnsType :: Maybe BlockOverrideDnsType
$sel:name:CreateFirewallRule' :: CreateFirewallRule -> Text
$sel:action:CreateFirewallRule' :: CreateFirewallRule -> Action
$sel:priority:CreateFirewallRule' :: CreateFirewallRule -> Int
$sel:firewallDomainListId:CreateFirewallRule' :: CreateFirewallRule -> Text
$sel:firewallRuleGroupId:CreateFirewallRule' :: CreateFirewallRule -> Text
$sel:creatorRequestId:CreateFirewallRule' :: CreateFirewallRule -> Text
$sel:blockResponse:CreateFirewallRule' :: CreateFirewallRule -> Maybe BlockResponse
$sel:blockOverrideTtl:CreateFirewallRule' :: CreateFirewallRule -> Maybe Natural
$sel:blockOverrideDomain:CreateFirewallRule' :: CreateFirewallRule -> Maybe Text
$sel:blockOverrideDnsType:CreateFirewallRule' :: CreateFirewallRule -> Maybe BlockOverrideDnsType
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"BlockOverrideDnsType" 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 BlockOverrideDnsType
blockOverrideDnsType,
(Key
"BlockOverrideDomain" 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
blockOverrideDomain,
(Key
"BlockOverrideTtl" 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 Natural
blockOverrideTtl,
(Key
"BlockResponse" 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 BlockResponse
blockResponse,
forall a. a -> Maybe a
Prelude.Just
(Key
"CreatorRequestId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
creatorRequestId),
forall a. a -> Maybe a
Prelude.Just
(Key
"FirewallRuleGroupId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
firewallRuleGroupId),
forall a. a -> Maybe a
Prelude.Just
( Key
"FirewallDomainListId"
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
firewallDomainListId
),
forall a. a -> Maybe a
Prelude.Just (Key
"Priority" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Int
priority),
forall a. a -> Maybe a
Prelude.Just (Key
"Action" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Action
action),
forall a. a -> Maybe a
Prelude.Just (Key
"Name" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
name)
]
)
instance Data.ToPath CreateFirewallRule where
toPath :: CreateFirewallRule -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery CreateFirewallRule where
toQuery :: CreateFirewallRule -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data CreateFirewallRuleResponse = CreateFirewallRuleResponse'
{
CreateFirewallRuleResponse -> Maybe FirewallRule
firewallRule :: Prelude.Maybe FirewallRule,
CreateFirewallRuleResponse -> Int
httpStatus :: Prelude.Int
}
deriving (CreateFirewallRuleResponse -> CreateFirewallRuleResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateFirewallRuleResponse -> CreateFirewallRuleResponse -> Bool
$c/= :: CreateFirewallRuleResponse -> CreateFirewallRuleResponse -> Bool
== :: CreateFirewallRuleResponse -> CreateFirewallRuleResponse -> Bool
$c== :: CreateFirewallRuleResponse -> CreateFirewallRuleResponse -> Bool
Prelude.Eq, ReadPrec [CreateFirewallRuleResponse]
ReadPrec CreateFirewallRuleResponse
Int -> ReadS CreateFirewallRuleResponse
ReadS [CreateFirewallRuleResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreateFirewallRuleResponse]
$creadListPrec :: ReadPrec [CreateFirewallRuleResponse]
readPrec :: ReadPrec CreateFirewallRuleResponse
$creadPrec :: ReadPrec CreateFirewallRuleResponse
readList :: ReadS [CreateFirewallRuleResponse]
$creadList :: ReadS [CreateFirewallRuleResponse]
readsPrec :: Int -> ReadS CreateFirewallRuleResponse
$creadsPrec :: Int -> ReadS CreateFirewallRuleResponse
Prelude.Read, Int -> CreateFirewallRuleResponse -> ShowS
[CreateFirewallRuleResponse] -> ShowS
CreateFirewallRuleResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateFirewallRuleResponse] -> ShowS
$cshowList :: [CreateFirewallRuleResponse] -> ShowS
show :: CreateFirewallRuleResponse -> String
$cshow :: CreateFirewallRuleResponse -> String
showsPrec :: Int -> CreateFirewallRuleResponse -> ShowS
$cshowsPrec :: Int -> CreateFirewallRuleResponse -> ShowS
Prelude.Show, forall x.
Rep CreateFirewallRuleResponse x -> CreateFirewallRuleResponse
forall x.
CreateFirewallRuleResponse -> Rep CreateFirewallRuleResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep CreateFirewallRuleResponse x -> CreateFirewallRuleResponse
$cfrom :: forall x.
CreateFirewallRuleResponse -> Rep CreateFirewallRuleResponse x
Prelude.Generic)
newCreateFirewallRuleResponse ::
Prelude.Int ->
CreateFirewallRuleResponse
newCreateFirewallRuleResponse :: Int -> CreateFirewallRuleResponse
newCreateFirewallRuleResponse Int
pHttpStatus_ =
CreateFirewallRuleResponse'
{ $sel:firewallRule:CreateFirewallRuleResponse' :: Maybe FirewallRule
firewallRule =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:CreateFirewallRuleResponse' :: Int
httpStatus = Int
pHttpStatus_
}
createFirewallRuleResponse_firewallRule :: Lens.Lens' CreateFirewallRuleResponse (Prelude.Maybe FirewallRule)
createFirewallRuleResponse_firewallRule :: Lens' CreateFirewallRuleResponse (Maybe FirewallRule)
createFirewallRuleResponse_firewallRule = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateFirewallRuleResponse' {Maybe FirewallRule
firewallRule :: Maybe FirewallRule
$sel:firewallRule:CreateFirewallRuleResponse' :: CreateFirewallRuleResponse -> Maybe FirewallRule
firewallRule} -> Maybe FirewallRule
firewallRule) (\s :: CreateFirewallRuleResponse
s@CreateFirewallRuleResponse' {} Maybe FirewallRule
a -> CreateFirewallRuleResponse
s {$sel:firewallRule:CreateFirewallRuleResponse' :: Maybe FirewallRule
firewallRule = Maybe FirewallRule
a} :: CreateFirewallRuleResponse)
createFirewallRuleResponse_httpStatus :: Lens.Lens' CreateFirewallRuleResponse Prelude.Int
createFirewallRuleResponse_httpStatus :: Lens' CreateFirewallRuleResponse Int
createFirewallRuleResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateFirewallRuleResponse' {Int
httpStatus :: Int
$sel:httpStatus:CreateFirewallRuleResponse' :: CreateFirewallRuleResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: CreateFirewallRuleResponse
s@CreateFirewallRuleResponse' {} Int
a -> CreateFirewallRuleResponse
s {$sel:httpStatus:CreateFirewallRuleResponse' :: Int
httpStatus = Int
a} :: CreateFirewallRuleResponse)
instance Prelude.NFData CreateFirewallRuleResponse where
rnf :: CreateFirewallRuleResponse -> ()
rnf CreateFirewallRuleResponse' {Int
Maybe FirewallRule
httpStatus :: Int
firewallRule :: Maybe FirewallRule
$sel:httpStatus:CreateFirewallRuleResponse' :: CreateFirewallRuleResponse -> Int
$sel:firewallRule:CreateFirewallRuleResponse' :: CreateFirewallRuleResponse -> Maybe FirewallRule
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe FirewallRule
firewallRule
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus