{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.EC2.Types.InstanceMetadataOptionsRequest where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.EC2.Internal
import Amazonka.EC2.Types.HttpTokensState
import Amazonka.EC2.Types.InstanceMetadataEndpointState
import Amazonka.EC2.Types.InstanceMetadataProtocolState
import Amazonka.EC2.Types.InstanceMetadataTagsState
import qualified Amazonka.Prelude as Prelude
data InstanceMetadataOptionsRequest = InstanceMetadataOptionsRequest'
{
InstanceMetadataOptionsRequest
-> Maybe InstanceMetadataEndpointState
httpEndpoint :: Prelude.Maybe InstanceMetadataEndpointState,
InstanceMetadataOptionsRequest
-> Maybe InstanceMetadataProtocolState
httpProtocolIpv6 :: Prelude.Maybe InstanceMetadataProtocolState,
InstanceMetadataOptionsRequest -> Maybe Int
httpPutResponseHopLimit :: Prelude.Maybe Prelude.Int,
InstanceMetadataOptionsRequest -> Maybe HttpTokensState
httpTokens :: Prelude.Maybe HttpTokensState,
InstanceMetadataOptionsRequest -> Maybe InstanceMetadataTagsState
instanceMetadataTags :: Prelude.Maybe InstanceMetadataTagsState
}
deriving (InstanceMetadataOptionsRequest
-> InstanceMetadataOptionsRequest -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: InstanceMetadataOptionsRequest
-> InstanceMetadataOptionsRequest -> Bool
$c/= :: InstanceMetadataOptionsRequest
-> InstanceMetadataOptionsRequest -> Bool
== :: InstanceMetadataOptionsRequest
-> InstanceMetadataOptionsRequest -> Bool
$c== :: InstanceMetadataOptionsRequest
-> InstanceMetadataOptionsRequest -> Bool
Prelude.Eq, ReadPrec [InstanceMetadataOptionsRequest]
ReadPrec InstanceMetadataOptionsRequest
Int -> ReadS InstanceMetadataOptionsRequest
ReadS [InstanceMetadataOptionsRequest]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [InstanceMetadataOptionsRequest]
$creadListPrec :: ReadPrec [InstanceMetadataOptionsRequest]
readPrec :: ReadPrec InstanceMetadataOptionsRequest
$creadPrec :: ReadPrec InstanceMetadataOptionsRequest
readList :: ReadS [InstanceMetadataOptionsRequest]
$creadList :: ReadS [InstanceMetadataOptionsRequest]
readsPrec :: Int -> ReadS InstanceMetadataOptionsRequest
$creadsPrec :: Int -> ReadS InstanceMetadataOptionsRequest
Prelude.Read, Int -> InstanceMetadataOptionsRequest -> ShowS
[InstanceMetadataOptionsRequest] -> ShowS
InstanceMetadataOptionsRequest -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [InstanceMetadataOptionsRequest] -> ShowS
$cshowList :: [InstanceMetadataOptionsRequest] -> ShowS
show :: InstanceMetadataOptionsRequest -> String
$cshow :: InstanceMetadataOptionsRequest -> String
showsPrec :: Int -> InstanceMetadataOptionsRequest -> ShowS
$cshowsPrec :: Int -> InstanceMetadataOptionsRequest -> ShowS
Prelude.Show, forall x.
Rep InstanceMetadataOptionsRequest x
-> InstanceMetadataOptionsRequest
forall x.
InstanceMetadataOptionsRequest
-> Rep InstanceMetadataOptionsRequest x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep InstanceMetadataOptionsRequest x
-> InstanceMetadataOptionsRequest
$cfrom :: forall x.
InstanceMetadataOptionsRequest
-> Rep InstanceMetadataOptionsRequest x
Prelude.Generic)
newInstanceMetadataOptionsRequest ::
InstanceMetadataOptionsRequest
newInstanceMetadataOptionsRequest :: InstanceMetadataOptionsRequest
newInstanceMetadataOptionsRequest =
InstanceMetadataOptionsRequest'
{ $sel:httpEndpoint:InstanceMetadataOptionsRequest' :: Maybe InstanceMetadataEndpointState
httpEndpoint =
forall a. Maybe a
Prelude.Nothing,
$sel:httpProtocolIpv6:InstanceMetadataOptionsRequest' :: Maybe InstanceMetadataProtocolState
httpProtocolIpv6 = forall a. Maybe a
Prelude.Nothing,
$sel:httpPutResponseHopLimit:InstanceMetadataOptionsRequest' :: Maybe Int
httpPutResponseHopLimit = forall a. Maybe a
Prelude.Nothing,
$sel:httpTokens:InstanceMetadataOptionsRequest' :: Maybe HttpTokensState
httpTokens = forall a. Maybe a
Prelude.Nothing,
$sel:instanceMetadataTags:InstanceMetadataOptionsRequest' :: Maybe InstanceMetadataTagsState
instanceMetadataTags = forall a. Maybe a
Prelude.Nothing
}
instanceMetadataOptionsRequest_httpEndpoint :: Lens.Lens' InstanceMetadataOptionsRequest (Prelude.Maybe InstanceMetadataEndpointState)
instanceMetadataOptionsRequest_httpEndpoint :: Lens'
InstanceMetadataOptionsRequest
(Maybe InstanceMetadataEndpointState)
instanceMetadataOptionsRequest_httpEndpoint = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceMetadataOptionsRequest' {Maybe InstanceMetadataEndpointState
httpEndpoint :: Maybe InstanceMetadataEndpointState
$sel:httpEndpoint:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest
-> Maybe InstanceMetadataEndpointState
httpEndpoint} -> Maybe InstanceMetadataEndpointState
httpEndpoint) (\s :: InstanceMetadataOptionsRequest
s@InstanceMetadataOptionsRequest' {} Maybe InstanceMetadataEndpointState
a -> InstanceMetadataOptionsRequest
s {$sel:httpEndpoint:InstanceMetadataOptionsRequest' :: Maybe InstanceMetadataEndpointState
httpEndpoint = Maybe InstanceMetadataEndpointState
a} :: InstanceMetadataOptionsRequest)
instanceMetadataOptionsRequest_httpProtocolIpv6 :: Lens.Lens' InstanceMetadataOptionsRequest (Prelude.Maybe InstanceMetadataProtocolState)
instanceMetadataOptionsRequest_httpProtocolIpv6 :: Lens'
InstanceMetadataOptionsRequest
(Maybe InstanceMetadataProtocolState)
instanceMetadataOptionsRequest_httpProtocolIpv6 = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceMetadataOptionsRequest' {Maybe InstanceMetadataProtocolState
httpProtocolIpv6 :: Maybe InstanceMetadataProtocolState
$sel:httpProtocolIpv6:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest
-> Maybe InstanceMetadataProtocolState
httpProtocolIpv6} -> Maybe InstanceMetadataProtocolState
httpProtocolIpv6) (\s :: InstanceMetadataOptionsRequest
s@InstanceMetadataOptionsRequest' {} Maybe InstanceMetadataProtocolState
a -> InstanceMetadataOptionsRequest
s {$sel:httpProtocolIpv6:InstanceMetadataOptionsRequest' :: Maybe InstanceMetadataProtocolState
httpProtocolIpv6 = Maybe InstanceMetadataProtocolState
a} :: InstanceMetadataOptionsRequest)
instanceMetadataOptionsRequest_httpPutResponseHopLimit :: Lens.Lens' InstanceMetadataOptionsRequest (Prelude.Maybe Prelude.Int)
instanceMetadataOptionsRequest_httpPutResponseHopLimit :: Lens' InstanceMetadataOptionsRequest (Maybe Int)
instanceMetadataOptionsRequest_httpPutResponseHopLimit = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceMetadataOptionsRequest' {Maybe Int
httpPutResponseHopLimit :: Maybe Int
$sel:httpPutResponseHopLimit:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest -> Maybe Int
httpPutResponseHopLimit} -> Maybe Int
httpPutResponseHopLimit) (\s :: InstanceMetadataOptionsRequest
s@InstanceMetadataOptionsRequest' {} Maybe Int
a -> InstanceMetadataOptionsRequest
s {$sel:httpPutResponseHopLimit:InstanceMetadataOptionsRequest' :: Maybe Int
httpPutResponseHopLimit = Maybe Int
a} :: InstanceMetadataOptionsRequest)
instanceMetadataOptionsRequest_httpTokens :: Lens.Lens' InstanceMetadataOptionsRequest (Prelude.Maybe HttpTokensState)
instanceMetadataOptionsRequest_httpTokens :: Lens' InstanceMetadataOptionsRequest (Maybe HttpTokensState)
instanceMetadataOptionsRequest_httpTokens = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceMetadataOptionsRequest' {Maybe HttpTokensState
httpTokens :: Maybe HttpTokensState
$sel:httpTokens:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest -> Maybe HttpTokensState
httpTokens} -> Maybe HttpTokensState
httpTokens) (\s :: InstanceMetadataOptionsRequest
s@InstanceMetadataOptionsRequest' {} Maybe HttpTokensState
a -> InstanceMetadataOptionsRequest
s {$sel:httpTokens:InstanceMetadataOptionsRequest' :: Maybe HttpTokensState
httpTokens = Maybe HttpTokensState
a} :: InstanceMetadataOptionsRequest)
instanceMetadataOptionsRequest_instanceMetadataTags :: Lens.Lens' InstanceMetadataOptionsRequest (Prelude.Maybe InstanceMetadataTagsState)
instanceMetadataOptionsRequest_instanceMetadataTags :: Lens'
InstanceMetadataOptionsRequest (Maybe InstanceMetadataTagsState)
instanceMetadataOptionsRequest_instanceMetadataTags = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceMetadataOptionsRequest' {Maybe InstanceMetadataTagsState
instanceMetadataTags :: Maybe InstanceMetadataTagsState
$sel:instanceMetadataTags:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest -> Maybe InstanceMetadataTagsState
instanceMetadataTags} -> Maybe InstanceMetadataTagsState
instanceMetadataTags) (\s :: InstanceMetadataOptionsRequest
s@InstanceMetadataOptionsRequest' {} Maybe InstanceMetadataTagsState
a -> InstanceMetadataOptionsRequest
s {$sel:instanceMetadataTags:InstanceMetadataOptionsRequest' :: Maybe InstanceMetadataTagsState
instanceMetadataTags = Maybe InstanceMetadataTagsState
a} :: InstanceMetadataOptionsRequest)
instance
Prelude.Hashable
InstanceMetadataOptionsRequest
where
hashWithSalt :: Int -> InstanceMetadataOptionsRequest -> Int
hashWithSalt
Int
_salt
InstanceMetadataOptionsRequest' {Maybe Int
Maybe HttpTokensState
Maybe InstanceMetadataEndpointState
Maybe InstanceMetadataProtocolState
Maybe InstanceMetadataTagsState
instanceMetadataTags :: Maybe InstanceMetadataTagsState
httpTokens :: Maybe HttpTokensState
httpPutResponseHopLimit :: Maybe Int
httpProtocolIpv6 :: Maybe InstanceMetadataProtocolState
httpEndpoint :: Maybe InstanceMetadataEndpointState
$sel:instanceMetadataTags:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest -> Maybe InstanceMetadataTagsState
$sel:httpTokens:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest -> Maybe HttpTokensState
$sel:httpPutResponseHopLimit:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest -> Maybe Int
$sel:httpProtocolIpv6:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest
-> Maybe InstanceMetadataProtocolState
$sel:httpEndpoint:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest
-> Maybe InstanceMetadataEndpointState
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InstanceMetadataEndpointState
httpEndpoint
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InstanceMetadataProtocolState
httpProtocolIpv6
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
httpPutResponseHopLimit
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe HttpTokensState
httpTokens
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InstanceMetadataTagsState
instanceMetadataTags
instance
Prelude.NFData
InstanceMetadataOptionsRequest
where
rnf :: InstanceMetadataOptionsRequest -> ()
rnf InstanceMetadataOptionsRequest' {Maybe Int
Maybe HttpTokensState
Maybe InstanceMetadataEndpointState
Maybe InstanceMetadataProtocolState
Maybe InstanceMetadataTagsState
instanceMetadataTags :: Maybe InstanceMetadataTagsState
httpTokens :: Maybe HttpTokensState
httpPutResponseHopLimit :: Maybe Int
httpProtocolIpv6 :: Maybe InstanceMetadataProtocolState
httpEndpoint :: Maybe InstanceMetadataEndpointState
$sel:instanceMetadataTags:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest -> Maybe InstanceMetadataTagsState
$sel:httpTokens:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest -> Maybe HttpTokensState
$sel:httpPutResponseHopLimit:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest -> Maybe Int
$sel:httpProtocolIpv6:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest
-> Maybe InstanceMetadataProtocolState
$sel:httpEndpoint:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest
-> Maybe InstanceMetadataEndpointState
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe InstanceMetadataEndpointState
httpEndpoint
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe InstanceMetadataProtocolState
httpProtocolIpv6
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
httpPutResponseHopLimit
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe HttpTokensState
httpTokens
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe InstanceMetadataTagsState
instanceMetadataTags
instance Data.ToQuery InstanceMetadataOptionsRequest where
toQuery :: InstanceMetadataOptionsRequest -> QueryString
toQuery InstanceMetadataOptionsRequest' {Maybe Int
Maybe HttpTokensState
Maybe InstanceMetadataEndpointState
Maybe InstanceMetadataProtocolState
Maybe InstanceMetadataTagsState
instanceMetadataTags :: Maybe InstanceMetadataTagsState
httpTokens :: Maybe HttpTokensState
httpPutResponseHopLimit :: Maybe Int
httpProtocolIpv6 :: Maybe InstanceMetadataProtocolState
httpEndpoint :: Maybe InstanceMetadataEndpointState
$sel:instanceMetadataTags:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest -> Maybe InstanceMetadataTagsState
$sel:httpTokens:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest -> Maybe HttpTokensState
$sel:httpPutResponseHopLimit:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest -> Maybe Int
$sel:httpProtocolIpv6:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest
-> Maybe InstanceMetadataProtocolState
$sel:httpEndpoint:InstanceMetadataOptionsRequest' :: InstanceMetadataOptionsRequest
-> Maybe InstanceMetadataEndpointState
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"HttpEndpoint" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe InstanceMetadataEndpointState
httpEndpoint,
ByteString
"HttpProtocolIpv6" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe InstanceMetadataProtocolState
httpProtocolIpv6,
ByteString
"HttpPutResponseHopLimit"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Int
httpPutResponseHopLimit,
ByteString
"HttpTokens" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe HttpTokensState
httpTokens,
ByteString
"InstanceMetadataTags" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe InstanceMetadataTagsState
instanceMetadataTags
]