{-# 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.LaunchTemplatePlacementRequest 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.Tenancy
import qualified Amazonka.Prelude as Prelude
data LaunchTemplatePlacementRequest = LaunchTemplatePlacementRequest'
{
LaunchTemplatePlacementRequest -> Maybe Text
affinity :: Prelude.Maybe Prelude.Text,
LaunchTemplatePlacementRequest -> Maybe Text
availabilityZone :: Prelude.Maybe Prelude.Text,
LaunchTemplatePlacementRequest -> Maybe Text
groupId :: Prelude.Maybe Prelude.Text,
LaunchTemplatePlacementRequest -> Maybe Text
groupName :: Prelude.Maybe Prelude.Text,
LaunchTemplatePlacementRequest -> Maybe Text
hostId :: Prelude.Maybe Prelude.Text,
LaunchTemplatePlacementRequest -> Maybe Text
hostResourceGroupArn :: Prelude.Maybe Prelude.Text,
LaunchTemplatePlacementRequest -> Maybe Int
partitionNumber :: Prelude.Maybe Prelude.Int,
LaunchTemplatePlacementRequest -> Maybe Text
spreadDomain :: Prelude.Maybe Prelude.Text,
LaunchTemplatePlacementRequest -> Maybe Tenancy
tenancy :: Prelude.Maybe Tenancy
}
deriving (LaunchTemplatePlacementRequest
-> LaunchTemplatePlacementRequest -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: LaunchTemplatePlacementRequest
-> LaunchTemplatePlacementRequest -> Bool
$c/= :: LaunchTemplatePlacementRequest
-> LaunchTemplatePlacementRequest -> Bool
== :: LaunchTemplatePlacementRequest
-> LaunchTemplatePlacementRequest -> Bool
$c== :: LaunchTemplatePlacementRequest
-> LaunchTemplatePlacementRequest -> Bool
Prelude.Eq, ReadPrec [LaunchTemplatePlacementRequest]
ReadPrec LaunchTemplatePlacementRequest
Int -> ReadS LaunchTemplatePlacementRequest
ReadS [LaunchTemplatePlacementRequest]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [LaunchTemplatePlacementRequest]
$creadListPrec :: ReadPrec [LaunchTemplatePlacementRequest]
readPrec :: ReadPrec LaunchTemplatePlacementRequest
$creadPrec :: ReadPrec LaunchTemplatePlacementRequest
readList :: ReadS [LaunchTemplatePlacementRequest]
$creadList :: ReadS [LaunchTemplatePlacementRequest]
readsPrec :: Int -> ReadS LaunchTemplatePlacementRequest
$creadsPrec :: Int -> ReadS LaunchTemplatePlacementRequest
Prelude.Read, Int -> LaunchTemplatePlacementRequest -> ShowS
[LaunchTemplatePlacementRequest] -> ShowS
LaunchTemplatePlacementRequest -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [LaunchTemplatePlacementRequest] -> ShowS
$cshowList :: [LaunchTemplatePlacementRequest] -> ShowS
show :: LaunchTemplatePlacementRequest -> String
$cshow :: LaunchTemplatePlacementRequest -> String
showsPrec :: Int -> LaunchTemplatePlacementRequest -> ShowS
$cshowsPrec :: Int -> LaunchTemplatePlacementRequest -> ShowS
Prelude.Show, forall x.
Rep LaunchTemplatePlacementRequest x
-> LaunchTemplatePlacementRequest
forall x.
LaunchTemplatePlacementRequest
-> Rep LaunchTemplatePlacementRequest x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep LaunchTemplatePlacementRequest x
-> LaunchTemplatePlacementRequest
$cfrom :: forall x.
LaunchTemplatePlacementRequest
-> Rep LaunchTemplatePlacementRequest x
Prelude.Generic)
newLaunchTemplatePlacementRequest ::
LaunchTemplatePlacementRequest
newLaunchTemplatePlacementRequest :: LaunchTemplatePlacementRequest
newLaunchTemplatePlacementRequest =
LaunchTemplatePlacementRequest'
{ $sel:affinity:LaunchTemplatePlacementRequest' :: Maybe Text
affinity =
forall a. Maybe a
Prelude.Nothing,
$sel:availabilityZone:LaunchTemplatePlacementRequest' :: Maybe Text
availabilityZone = forall a. Maybe a
Prelude.Nothing,
$sel:groupId:LaunchTemplatePlacementRequest' :: Maybe Text
groupId = forall a. Maybe a
Prelude.Nothing,
$sel:groupName:LaunchTemplatePlacementRequest' :: Maybe Text
groupName = forall a. Maybe a
Prelude.Nothing,
$sel:hostId:LaunchTemplatePlacementRequest' :: Maybe Text
hostId = forall a. Maybe a
Prelude.Nothing,
$sel:hostResourceGroupArn:LaunchTemplatePlacementRequest' :: Maybe Text
hostResourceGroupArn = forall a. Maybe a
Prelude.Nothing,
$sel:partitionNumber:LaunchTemplatePlacementRequest' :: Maybe Int
partitionNumber = forall a. Maybe a
Prelude.Nothing,
$sel:spreadDomain:LaunchTemplatePlacementRequest' :: Maybe Text
spreadDomain = forall a. Maybe a
Prelude.Nothing,
$sel:tenancy:LaunchTemplatePlacementRequest' :: Maybe Tenancy
tenancy = forall a. Maybe a
Prelude.Nothing
}
launchTemplatePlacementRequest_affinity :: Lens.Lens' LaunchTemplatePlacementRequest (Prelude.Maybe Prelude.Text)
launchTemplatePlacementRequest_affinity :: Lens' LaunchTemplatePlacementRequest (Maybe Text)
launchTemplatePlacementRequest_affinity = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LaunchTemplatePlacementRequest' {Maybe Text
affinity :: Maybe Text
$sel:affinity:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
affinity} -> Maybe Text
affinity) (\s :: LaunchTemplatePlacementRequest
s@LaunchTemplatePlacementRequest' {} Maybe Text
a -> LaunchTemplatePlacementRequest
s {$sel:affinity:LaunchTemplatePlacementRequest' :: Maybe Text
affinity = Maybe Text
a} :: LaunchTemplatePlacementRequest)
launchTemplatePlacementRequest_availabilityZone :: Lens.Lens' LaunchTemplatePlacementRequest (Prelude.Maybe Prelude.Text)
launchTemplatePlacementRequest_availabilityZone :: Lens' LaunchTemplatePlacementRequest (Maybe Text)
launchTemplatePlacementRequest_availabilityZone = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LaunchTemplatePlacementRequest' {Maybe Text
availabilityZone :: Maybe Text
$sel:availabilityZone:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
availabilityZone} -> Maybe Text
availabilityZone) (\s :: LaunchTemplatePlacementRequest
s@LaunchTemplatePlacementRequest' {} Maybe Text
a -> LaunchTemplatePlacementRequest
s {$sel:availabilityZone:LaunchTemplatePlacementRequest' :: Maybe Text
availabilityZone = Maybe Text
a} :: LaunchTemplatePlacementRequest)
launchTemplatePlacementRequest_groupId :: Lens.Lens' LaunchTemplatePlacementRequest (Prelude.Maybe Prelude.Text)
launchTemplatePlacementRequest_groupId :: Lens' LaunchTemplatePlacementRequest (Maybe Text)
launchTemplatePlacementRequest_groupId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LaunchTemplatePlacementRequest' {Maybe Text
groupId :: Maybe Text
$sel:groupId:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
groupId} -> Maybe Text
groupId) (\s :: LaunchTemplatePlacementRequest
s@LaunchTemplatePlacementRequest' {} Maybe Text
a -> LaunchTemplatePlacementRequest
s {$sel:groupId:LaunchTemplatePlacementRequest' :: Maybe Text
groupId = Maybe Text
a} :: LaunchTemplatePlacementRequest)
launchTemplatePlacementRequest_groupName :: Lens.Lens' LaunchTemplatePlacementRequest (Prelude.Maybe Prelude.Text)
launchTemplatePlacementRequest_groupName :: Lens' LaunchTemplatePlacementRequest (Maybe Text)
launchTemplatePlacementRequest_groupName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LaunchTemplatePlacementRequest' {Maybe Text
groupName :: Maybe Text
$sel:groupName:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
groupName} -> Maybe Text
groupName) (\s :: LaunchTemplatePlacementRequest
s@LaunchTemplatePlacementRequest' {} Maybe Text
a -> LaunchTemplatePlacementRequest
s {$sel:groupName:LaunchTemplatePlacementRequest' :: Maybe Text
groupName = Maybe Text
a} :: LaunchTemplatePlacementRequest)
launchTemplatePlacementRequest_hostId :: Lens.Lens' LaunchTemplatePlacementRequest (Prelude.Maybe Prelude.Text)
launchTemplatePlacementRequest_hostId :: Lens' LaunchTemplatePlacementRequest (Maybe Text)
launchTemplatePlacementRequest_hostId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LaunchTemplatePlacementRequest' {Maybe Text
hostId :: Maybe Text
$sel:hostId:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
hostId} -> Maybe Text
hostId) (\s :: LaunchTemplatePlacementRequest
s@LaunchTemplatePlacementRequest' {} Maybe Text
a -> LaunchTemplatePlacementRequest
s {$sel:hostId:LaunchTemplatePlacementRequest' :: Maybe Text
hostId = Maybe Text
a} :: LaunchTemplatePlacementRequest)
launchTemplatePlacementRequest_hostResourceGroupArn :: Lens.Lens' LaunchTemplatePlacementRequest (Prelude.Maybe Prelude.Text)
launchTemplatePlacementRequest_hostResourceGroupArn :: Lens' LaunchTemplatePlacementRequest (Maybe Text)
launchTemplatePlacementRequest_hostResourceGroupArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LaunchTemplatePlacementRequest' {Maybe Text
hostResourceGroupArn :: Maybe Text
$sel:hostResourceGroupArn:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
hostResourceGroupArn} -> Maybe Text
hostResourceGroupArn) (\s :: LaunchTemplatePlacementRequest
s@LaunchTemplatePlacementRequest' {} Maybe Text
a -> LaunchTemplatePlacementRequest
s {$sel:hostResourceGroupArn:LaunchTemplatePlacementRequest' :: Maybe Text
hostResourceGroupArn = Maybe Text
a} :: LaunchTemplatePlacementRequest)
launchTemplatePlacementRequest_partitionNumber :: Lens.Lens' LaunchTemplatePlacementRequest (Prelude.Maybe Prelude.Int)
launchTemplatePlacementRequest_partitionNumber :: Lens' LaunchTemplatePlacementRequest (Maybe Int)
launchTemplatePlacementRequest_partitionNumber = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LaunchTemplatePlacementRequest' {Maybe Int
partitionNumber :: Maybe Int
$sel:partitionNumber:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Int
partitionNumber} -> Maybe Int
partitionNumber) (\s :: LaunchTemplatePlacementRequest
s@LaunchTemplatePlacementRequest' {} Maybe Int
a -> LaunchTemplatePlacementRequest
s {$sel:partitionNumber:LaunchTemplatePlacementRequest' :: Maybe Int
partitionNumber = Maybe Int
a} :: LaunchTemplatePlacementRequest)
launchTemplatePlacementRequest_spreadDomain :: Lens.Lens' LaunchTemplatePlacementRequest (Prelude.Maybe Prelude.Text)
launchTemplatePlacementRequest_spreadDomain :: Lens' LaunchTemplatePlacementRequest (Maybe Text)
launchTemplatePlacementRequest_spreadDomain = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LaunchTemplatePlacementRequest' {Maybe Text
spreadDomain :: Maybe Text
$sel:spreadDomain:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
spreadDomain} -> Maybe Text
spreadDomain) (\s :: LaunchTemplatePlacementRequest
s@LaunchTemplatePlacementRequest' {} Maybe Text
a -> LaunchTemplatePlacementRequest
s {$sel:spreadDomain:LaunchTemplatePlacementRequest' :: Maybe Text
spreadDomain = Maybe Text
a} :: LaunchTemplatePlacementRequest)
launchTemplatePlacementRequest_tenancy :: Lens.Lens' LaunchTemplatePlacementRequest (Prelude.Maybe Tenancy)
launchTemplatePlacementRequest_tenancy :: Lens' LaunchTemplatePlacementRequest (Maybe Tenancy)
launchTemplatePlacementRequest_tenancy = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LaunchTemplatePlacementRequest' {Maybe Tenancy
tenancy :: Maybe Tenancy
$sel:tenancy:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Tenancy
tenancy} -> Maybe Tenancy
tenancy) (\s :: LaunchTemplatePlacementRequest
s@LaunchTemplatePlacementRequest' {} Maybe Tenancy
a -> LaunchTemplatePlacementRequest
s {$sel:tenancy:LaunchTemplatePlacementRequest' :: Maybe Tenancy
tenancy = Maybe Tenancy
a} :: LaunchTemplatePlacementRequest)
instance
Prelude.Hashable
LaunchTemplatePlacementRequest
where
hashWithSalt :: Int -> LaunchTemplatePlacementRequest -> Int
hashWithSalt
Int
_salt
LaunchTemplatePlacementRequest' {Maybe Int
Maybe Text
Maybe Tenancy
tenancy :: Maybe Tenancy
spreadDomain :: Maybe Text
partitionNumber :: Maybe Int
hostResourceGroupArn :: Maybe Text
hostId :: Maybe Text
groupName :: Maybe Text
groupId :: Maybe Text
availabilityZone :: Maybe Text
affinity :: Maybe Text
$sel:tenancy:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Tenancy
$sel:spreadDomain:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:partitionNumber:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Int
$sel:hostResourceGroupArn:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:hostId:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:groupName:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:groupId:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:availabilityZone:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:affinity:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
affinity
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
availabilityZone
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
groupId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
groupName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
hostId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
hostResourceGroupArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
partitionNumber
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
spreadDomain
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Tenancy
tenancy
instance
Prelude.NFData
LaunchTemplatePlacementRequest
where
rnf :: LaunchTemplatePlacementRequest -> ()
rnf LaunchTemplatePlacementRequest' {Maybe Int
Maybe Text
Maybe Tenancy
tenancy :: Maybe Tenancy
spreadDomain :: Maybe Text
partitionNumber :: Maybe Int
hostResourceGroupArn :: Maybe Text
hostId :: Maybe Text
groupName :: Maybe Text
groupId :: Maybe Text
availabilityZone :: Maybe Text
affinity :: Maybe Text
$sel:tenancy:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Tenancy
$sel:spreadDomain:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:partitionNumber:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Int
$sel:hostResourceGroupArn:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:hostId:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:groupName:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:groupId:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:availabilityZone:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:affinity:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
affinity
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
availabilityZone
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
groupId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
groupName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
hostId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
hostResourceGroupArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
partitionNumber
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
spreadDomain
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Tenancy
tenancy
instance Data.ToQuery LaunchTemplatePlacementRequest where
toQuery :: LaunchTemplatePlacementRequest -> QueryString
toQuery LaunchTemplatePlacementRequest' {Maybe Int
Maybe Text
Maybe Tenancy
tenancy :: Maybe Tenancy
spreadDomain :: Maybe Text
partitionNumber :: Maybe Int
hostResourceGroupArn :: Maybe Text
hostId :: Maybe Text
groupName :: Maybe Text
groupId :: Maybe Text
availabilityZone :: Maybe Text
affinity :: Maybe Text
$sel:tenancy:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Tenancy
$sel:spreadDomain:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:partitionNumber:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Int
$sel:hostResourceGroupArn:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:hostId:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:groupName:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:groupId:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:availabilityZone:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
$sel:affinity:LaunchTemplatePlacementRequest' :: LaunchTemplatePlacementRequest -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Affinity" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
affinity,
ByteString
"AvailabilityZone" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
availabilityZone,
ByteString
"GroupId" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
groupId,
ByteString
"GroupName" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
groupName,
ByteString
"HostId" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
hostId,
ByteString
"HostResourceGroupArn" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
hostResourceGroupArn,
ByteString
"PartitionNumber" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Int
partitionNumber,
ByteString
"SpreadDomain" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
spreadDomain,
ByteString
"Tenancy" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Tenancy
tenancy
]