{-# 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 #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.EC2.RegisterInstanceEventNotificationAttributes
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Registers a set of tag keys to include in scheduled event notifications
-- for your resources.
--
-- To remove tags, use
-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DeregisterInstanceEventNotificationAttributes.html DeregisterInstanceEventNotificationAttributes>.
module Amazonka.EC2.RegisterInstanceEventNotificationAttributes
  ( -- * Creating a Request
    RegisterInstanceEventNotificationAttributes (..),
    newRegisterInstanceEventNotificationAttributes,

    -- * Request Lenses
    registerInstanceEventNotificationAttributes_dryRun,
    registerInstanceEventNotificationAttributes_instanceTagAttribute,

    -- * Destructuring the Response
    RegisterInstanceEventNotificationAttributesResponse (..),
    newRegisterInstanceEventNotificationAttributesResponse,

    -- * Response Lenses
    registerInstanceEventNotificationAttributesResponse_instanceTagAttribute,
    registerInstanceEventNotificationAttributesResponse_httpStatus,
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.EC2.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response

-- | /See:/ 'newRegisterInstanceEventNotificationAttributes' smart constructor.
data RegisterInstanceEventNotificationAttributes = RegisterInstanceEventNotificationAttributes'
  { -- | Checks whether you have the required permissions for the action, without
    -- actually making the request, and provides an error response. If you have
    -- the required permissions, the error response is @DryRunOperation@.
    -- Otherwise, it is @UnauthorizedOperation@.
    RegisterInstanceEventNotificationAttributes -> Maybe Bool
dryRun :: Prelude.Maybe Prelude.Bool,
    -- | Information about the tag keys to register.
    RegisterInstanceEventNotificationAttributes
-> Maybe RegisterInstanceTagAttributeRequest
instanceTagAttribute :: Prelude.Maybe RegisterInstanceTagAttributeRequest
  }
  deriving (RegisterInstanceEventNotificationAttributes
-> RegisterInstanceEventNotificationAttributes -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: RegisterInstanceEventNotificationAttributes
-> RegisterInstanceEventNotificationAttributes -> Bool
$c/= :: RegisterInstanceEventNotificationAttributes
-> RegisterInstanceEventNotificationAttributes -> Bool
== :: RegisterInstanceEventNotificationAttributes
-> RegisterInstanceEventNotificationAttributes -> Bool
$c== :: RegisterInstanceEventNotificationAttributes
-> RegisterInstanceEventNotificationAttributes -> Bool
Prelude.Eq, ReadPrec [RegisterInstanceEventNotificationAttributes]
ReadPrec RegisterInstanceEventNotificationAttributes
Int -> ReadS RegisterInstanceEventNotificationAttributes
ReadS [RegisterInstanceEventNotificationAttributes]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [RegisterInstanceEventNotificationAttributes]
$creadListPrec :: ReadPrec [RegisterInstanceEventNotificationAttributes]
readPrec :: ReadPrec RegisterInstanceEventNotificationAttributes
$creadPrec :: ReadPrec RegisterInstanceEventNotificationAttributes
readList :: ReadS [RegisterInstanceEventNotificationAttributes]
$creadList :: ReadS [RegisterInstanceEventNotificationAttributes]
readsPrec :: Int -> ReadS RegisterInstanceEventNotificationAttributes
$creadsPrec :: Int -> ReadS RegisterInstanceEventNotificationAttributes
Prelude.Read, Int -> RegisterInstanceEventNotificationAttributes -> ShowS
[RegisterInstanceEventNotificationAttributes] -> ShowS
RegisterInstanceEventNotificationAttributes -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [RegisterInstanceEventNotificationAttributes] -> ShowS
$cshowList :: [RegisterInstanceEventNotificationAttributes] -> ShowS
show :: RegisterInstanceEventNotificationAttributes -> String
$cshow :: RegisterInstanceEventNotificationAttributes -> String
showsPrec :: Int -> RegisterInstanceEventNotificationAttributes -> ShowS
$cshowsPrec :: Int -> RegisterInstanceEventNotificationAttributes -> ShowS
Prelude.Show, forall x.
Rep RegisterInstanceEventNotificationAttributes x
-> RegisterInstanceEventNotificationAttributes
forall x.
RegisterInstanceEventNotificationAttributes
-> Rep RegisterInstanceEventNotificationAttributes x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep RegisterInstanceEventNotificationAttributes x
-> RegisterInstanceEventNotificationAttributes
$cfrom :: forall x.
RegisterInstanceEventNotificationAttributes
-> Rep RegisterInstanceEventNotificationAttributes x
Prelude.Generic)

-- |
-- Create a value of 'RegisterInstanceEventNotificationAttributes' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'dryRun', 'registerInstanceEventNotificationAttributes_dryRun' - Checks whether you have the required permissions for the action, without
-- actually making the request, and provides an error response. If you have
-- the required permissions, the error response is @DryRunOperation@.
-- Otherwise, it is @UnauthorizedOperation@.
--
-- 'instanceTagAttribute', 'registerInstanceEventNotificationAttributes_instanceTagAttribute' - Information about the tag keys to register.
newRegisterInstanceEventNotificationAttributes ::
  RegisterInstanceEventNotificationAttributes
newRegisterInstanceEventNotificationAttributes :: RegisterInstanceEventNotificationAttributes
newRegisterInstanceEventNotificationAttributes =
  RegisterInstanceEventNotificationAttributes'
    { $sel:dryRun:RegisterInstanceEventNotificationAttributes' :: Maybe Bool
dryRun =
        forall a. Maybe a
Prelude.Nothing,
      $sel:instanceTagAttribute:RegisterInstanceEventNotificationAttributes' :: Maybe RegisterInstanceTagAttributeRequest
instanceTagAttribute =
        forall a. Maybe a
Prelude.Nothing
    }

-- | Checks whether you have the required permissions for the action, without
-- actually making the request, and provides an error response. If you have
-- the required permissions, the error response is @DryRunOperation@.
-- Otherwise, it is @UnauthorizedOperation@.
registerInstanceEventNotificationAttributes_dryRun :: Lens.Lens' RegisterInstanceEventNotificationAttributes (Prelude.Maybe Prelude.Bool)
registerInstanceEventNotificationAttributes_dryRun :: Lens' RegisterInstanceEventNotificationAttributes (Maybe Bool)
registerInstanceEventNotificationAttributes_dryRun = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\RegisterInstanceEventNotificationAttributes' {Maybe Bool
dryRun :: Maybe Bool
$sel:dryRun:RegisterInstanceEventNotificationAttributes' :: RegisterInstanceEventNotificationAttributes -> Maybe Bool
dryRun} -> Maybe Bool
dryRun) (\s :: RegisterInstanceEventNotificationAttributes
s@RegisterInstanceEventNotificationAttributes' {} Maybe Bool
a -> RegisterInstanceEventNotificationAttributes
s {$sel:dryRun:RegisterInstanceEventNotificationAttributes' :: Maybe Bool
dryRun = Maybe Bool
a} :: RegisterInstanceEventNotificationAttributes)

-- | Information about the tag keys to register.
registerInstanceEventNotificationAttributes_instanceTagAttribute :: Lens.Lens' RegisterInstanceEventNotificationAttributes (Prelude.Maybe RegisterInstanceTagAttributeRequest)
registerInstanceEventNotificationAttributes_instanceTagAttribute :: Lens'
  RegisterInstanceEventNotificationAttributes
  (Maybe RegisterInstanceTagAttributeRequest)
registerInstanceEventNotificationAttributes_instanceTagAttribute = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\RegisterInstanceEventNotificationAttributes' {Maybe RegisterInstanceTagAttributeRequest
instanceTagAttribute :: Maybe RegisterInstanceTagAttributeRequest
$sel:instanceTagAttribute:RegisterInstanceEventNotificationAttributes' :: RegisterInstanceEventNotificationAttributes
-> Maybe RegisterInstanceTagAttributeRequest
instanceTagAttribute} -> Maybe RegisterInstanceTagAttributeRequest
instanceTagAttribute) (\s :: RegisterInstanceEventNotificationAttributes
s@RegisterInstanceEventNotificationAttributes' {} Maybe RegisterInstanceTagAttributeRequest
a -> RegisterInstanceEventNotificationAttributes
s {$sel:instanceTagAttribute:RegisterInstanceEventNotificationAttributes' :: Maybe RegisterInstanceTagAttributeRequest
instanceTagAttribute = Maybe RegisterInstanceTagAttributeRequest
a} :: RegisterInstanceEventNotificationAttributes)

instance
  Core.AWSRequest
    RegisterInstanceEventNotificationAttributes
  where
  type
    AWSResponse
      RegisterInstanceEventNotificationAttributes =
      RegisterInstanceEventNotificationAttributesResponse
  request :: (Service -> Service)
-> RegisterInstanceEventNotificationAttributes
-> Request RegisterInstanceEventNotificationAttributes
request Service -> Service
overrides =
    forall a. ToRequest a => Service -> a -> Request a
Request.postQuery (Service -> Service
overrides Service
defaultService)
  response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy RegisterInstanceEventNotificationAttributes
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse
           (AWSResponse RegisterInstanceEventNotificationAttributes)))
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 InstanceTagNotificationAttribute
-> Int -> RegisterInstanceEventNotificationAttributesResponse
RegisterInstanceEventNotificationAttributesResponse'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"instanceTagAttribute")
            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
    RegisterInstanceEventNotificationAttributes
  where
  hashWithSalt :: Int -> RegisterInstanceEventNotificationAttributes -> Int
hashWithSalt
    Int
_salt
    RegisterInstanceEventNotificationAttributes' {Maybe Bool
Maybe RegisterInstanceTagAttributeRequest
instanceTagAttribute :: Maybe RegisterInstanceTagAttributeRequest
dryRun :: Maybe Bool
$sel:instanceTagAttribute:RegisterInstanceEventNotificationAttributes' :: RegisterInstanceEventNotificationAttributes
-> Maybe RegisterInstanceTagAttributeRequest
$sel:dryRun:RegisterInstanceEventNotificationAttributes' :: RegisterInstanceEventNotificationAttributes -> Maybe Bool
..} =
      Int
_salt
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
dryRun
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe RegisterInstanceTagAttributeRequest
instanceTagAttribute

instance
  Prelude.NFData
    RegisterInstanceEventNotificationAttributes
  where
  rnf :: RegisterInstanceEventNotificationAttributes -> ()
rnf RegisterInstanceEventNotificationAttributes' {Maybe Bool
Maybe RegisterInstanceTagAttributeRequest
instanceTagAttribute :: Maybe RegisterInstanceTagAttributeRequest
dryRun :: Maybe Bool
$sel:instanceTagAttribute:RegisterInstanceEventNotificationAttributes' :: RegisterInstanceEventNotificationAttributes
-> Maybe RegisterInstanceTagAttributeRequest
$sel:dryRun:RegisterInstanceEventNotificationAttributes' :: RegisterInstanceEventNotificationAttributes -> Maybe Bool
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
dryRun
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe RegisterInstanceTagAttributeRequest
instanceTagAttribute

instance
  Data.ToHeaders
    RegisterInstanceEventNotificationAttributes
  where
  toHeaders :: RegisterInstanceEventNotificationAttributes -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty

instance
  Data.ToPath
    RegisterInstanceEventNotificationAttributes
  where
  toPath :: RegisterInstanceEventNotificationAttributes -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"

instance
  Data.ToQuery
    RegisterInstanceEventNotificationAttributes
  where
  toQuery :: RegisterInstanceEventNotificationAttributes -> QueryString
toQuery
    RegisterInstanceEventNotificationAttributes' {Maybe Bool
Maybe RegisterInstanceTagAttributeRequest
instanceTagAttribute :: Maybe RegisterInstanceTagAttributeRequest
dryRun :: Maybe Bool
$sel:instanceTagAttribute:RegisterInstanceEventNotificationAttributes' :: RegisterInstanceEventNotificationAttributes
-> Maybe RegisterInstanceTagAttributeRequest
$sel:dryRun:RegisterInstanceEventNotificationAttributes' :: RegisterInstanceEventNotificationAttributes -> Maybe Bool
..} =
      forall a. Monoid a => [a] -> a
Prelude.mconcat
        [ ByteString
"Action"
            forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: ( ByteString
"RegisterInstanceEventNotificationAttributes" ::
                        Prelude.ByteString
                    ),
          ByteString
"Version"
            forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2016-11-15" :: Prelude.ByteString),
          ByteString
"DryRun" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Bool
dryRun,
          ByteString
"InstanceTagAttribute" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe RegisterInstanceTagAttributeRequest
instanceTagAttribute
        ]

-- | /See:/ 'newRegisterInstanceEventNotificationAttributesResponse' smart constructor.
data RegisterInstanceEventNotificationAttributesResponse = RegisterInstanceEventNotificationAttributesResponse'
  { -- | The resulting set of tag keys.
    RegisterInstanceEventNotificationAttributesResponse
-> Maybe InstanceTagNotificationAttribute
instanceTagAttribute :: Prelude.Maybe InstanceTagNotificationAttribute,
    -- | The response's http status code.
    RegisterInstanceEventNotificationAttributesResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (RegisterInstanceEventNotificationAttributesResponse
-> RegisterInstanceEventNotificationAttributesResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: RegisterInstanceEventNotificationAttributesResponse
-> RegisterInstanceEventNotificationAttributesResponse -> Bool
$c/= :: RegisterInstanceEventNotificationAttributesResponse
-> RegisterInstanceEventNotificationAttributesResponse -> Bool
== :: RegisterInstanceEventNotificationAttributesResponse
-> RegisterInstanceEventNotificationAttributesResponse -> Bool
$c== :: RegisterInstanceEventNotificationAttributesResponse
-> RegisterInstanceEventNotificationAttributesResponse -> Bool
Prelude.Eq, ReadPrec [RegisterInstanceEventNotificationAttributesResponse]
ReadPrec RegisterInstanceEventNotificationAttributesResponse
Int -> ReadS RegisterInstanceEventNotificationAttributesResponse
ReadS [RegisterInstanceEventNotificationAttributesResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [RegisterInstanceEventNotificationAttributesResponse]
$creadListPrec :: ReadPrec [RegisterInstanceEventNotificationAttributesResponse]
readPrec :: ReadPrec RegisterInstanceEventNotificationAttributesResponse
$creadPrec :: ReadPrec RegisterInstanceEventNotificationAttributesResponse
readList :: ReadS [RegisterInstanceEventNotificationAttributesResponse]
$creadList :: ReadS [RegisterInstanceEventNotificationAttributesResponse]
readsPrec :: Int -> ReadS RegisterInstanceEventNotificationAttributesResponse
$creadsPrec :: Int -> ReadS RegisterInstanceEventNotificationAttributesResponse
Prelude.Read, Int -> RegisterInstanceEventNotificationAttributesResponse -> ShowS
[RegisterInstanceEventNotificationAttributesResponse] -> ShowS
RegisterInstanceEventNotificationAttributesResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [RegisterInstanceEventNotificationAttributesResponse] -> ShowS
$cshowList :: [RegisterInstanceEventNotificationAttributesResponse] -> ShowS
show :: RegisterInstanceEventNotificationAttributesResponse -> String
$cshow :: RegisterInstanceEventNotificationAttributesResponse -> String
showsPrec :: Int -> RegisterInstanceEventNotificationAttributesResponse -> ShowS
$cshowsPrec :: Int -> RegisterInstanceEventNotificationAttributesResponse -> ShowS
Prelude.Show, forall x.
Rep RegisterInstanceEventNotificationAttributesResponse x
-> RegisterInstanceEventNotificationAttributesResponse
forall x.
RegisterInstanceEventNotificationAttributesResponse
-> Rep RegisterInstanceEventNotificationAttributesResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep RegisterInstanceEventNotificationAttributesResponse x
-> RegisterInstanceEventNotificationAttributesResponse
$cfrom :: forall x.
RegisterInstanceEventNotificationAttributesResponse
-> Rep RegisterInstanceEventNotificationAttributesResponse x
Prelude.Generic)

-- |
-- Create a value of 'RegisterInstanceEventNotificationAttributesResponse' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'instanceTagAttribute', 'registerInstanceEventNotificationAttributesResponse_instanceTagAttribute' - The resulting set of tag keys.
--
-- 'httpStatus', 'registerInstanceEventNotificationAttributesResponse_httpStatus' - The response's http status code.
newRegisterInstanceEventNotificationAttributesResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  RegisterInstanceEventNotificationAttributesResponse
newRegisterInstanceEventNotificationAttributesResponse :: Int -> RegisterInstanceEventNotificationAttributesResponse
newRegisterInstanceEventNotificationAttributesResponse
  Int
pHttpStatus_ =
    RegisterInstanceEventNotificationAttributesResponse'
      { $sel:instanceTagAttribute:RegisterInstanceEventNotificationAttributesResponse' :: Maybe InstanceTagNotificationAttribute
instanceTagAttribute =
          forall a. Maybe a
Prelude.Nothing,
        $sel:httpStatus:RegisterInstanceEventNotificationAttributesResponse' :: Int
httpStatus =
          Int
pHttpStatus_
      }

-- | The resulting set of tag keys.
registerInstanceEventNotificationAttributesResponse_instanceTagAttribute :: Lens.Lens' RegisterInstanceEventNotificationAttributesResponse (Prelude.Maybe InstanceTagNotificationAttribute)
registerInstanceEventNotificationAttributesResponse_instanceTagAttribute :: Lens'
  RegisterInstanceEventNotificationAttributesResponse
  (Maybe InstanceTagNotificationAttribute)
registerInstanceEventNotificationAttributesResponse_instanceTagAttribute = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\RegisterInstanceEventNotificationAttributesResponse' {Maybe InstanceTagNotificationAttribute
instanceTagAttribute :: Maybe InstanceTagNotificationAttribute
$sel:instanceTagAttribute:RegisterInstanceEventNotificationAttributesResponse' :: RegisterInstanceEventNotificationAttributesResponse
-> Maybe InstanceTagNotificationAttribute
instanceTagAttribute} -> Maybe InstanceTagNotificationAttribute
instanceTagAttribute) (\s :: RegisterInstanceEventNotificationAttributesResponse
s@RegisterInstanceEventNotificationAttributesResponse' {} Maybe InstanceTagNotificationAttribute
a -> RegisterInstanceEventNotificationAttributesResponse
s {$sel:instanceTagAttribute:RegisterInstanceEventNotificationAttributesResponse' :: Maybe InstanceTagNotificationAttribute
instanceTagAttribute = Maybe InstanceTagNotificationAttribute
a} :: RegisterInstanceEventNotificationAttributesResponse)

-- | The response's http status code.
registerInstanceEventNotificationAttributesResponse_httpStatus :: Lens.Lens' RegisterInstanceEventNotificationAttributesResponse Prelude.Int
registerInstanceEventNotificationAttributesResponse_httpStatus :: Lens' RegisterInstanceEventNotificationAttributesResponse Int
registerInstanceEventNotificationAttributesResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\RegisterInstanceEventNotificationAttributesResponse' {Int
httpStatus :: Int
$sel:httpStatus:RegisterInstanceEventNotificationAttributesResponse' :: RegisterInstanceEventNotificationAttributesResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: RegisterInstanceEventNotificationAttributesResponse
s@RegisterInstanceEventNotificationAttributesResponse' {} Int
a -> RegisterInstanceEventNotificationAttributesResponse
s {$sel:httpStatus:RegisterInstanceEventNotificationAttributesResponse' :: Int
httpStatus = Int
a} :: RegisterInstanceEventNotificationAttributesResponse)

instance
  Prelude.NFData
    RegisterInstanceEventNotificationAttributesResponse
  where
  rnf :: RegisterInstanceEventNotificationAttributesResponse -> ()
rnf
    RegisterInstanceEventNotificationAttributesResponse' {Int
Maybe InstanceTagNotificationAttribute
httpStatus :: Int
instanceTagAttribute :: Maybe InstanceTagNotificationAttribute
$sel:httpStatus:RegisterInstanceEventNotificationAttributesResponse' :: RegisterInstanceEventNotificationAttributesResponse -> Int
$sel:instanceTagAttribute:RegisterInstanceEventNotificationAttributesResponse' :: RegisterInstanceEventNotificationAttributesResponse
-> Maybe InstanceTagNotificationAttribute
..} =
      forall a. NFData a => a -> ()
Prelude.rnf Maybe InstanceTagNotificationAttribute
instanceTagAttribute
        seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus