{-# 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.OpsWorks.Types.Instance where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.OpsWorks.Types.Architecture
import Amazonka.OpsWorks.Types.AutoScalingType
import Amazonka.OpsWorks.Types.BlockDeviceMapping
import Amazonka.OpsWorks.Types.ReportedOs
import Amazonka.OpsWorks.Types.RootDeviceType
import Amazonka.OpsWorks.Types.VirtualizationType
import qualified Amazonka.Prelude as Prelude
data Instance = Instance'
  { 
    
    
    Instance -> Maybe Text
agentVersion :: Prelude.Maybe Prelude.Text,
    
    
    
    Instance -> Maybe Text
amiId :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Architecture
architecture :: Prelude.Maybe Architecture,
    
    Instance -> Maybe Text
arn :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe AutoScalingType
autoScalingType :: Prelude.Maybe AutoScalingType,
    
    
    Instance -> Maybe Text
availabilityZone :: Prelude.Maybe Prelude.Text,
    
    
    Instance -> Maybe [BlockDeviceMapping]
blockDeviceMappings :: Prelude.Maybe [BlockDeviceMapping],
    
    Instance -> Maybe Text
createdAt :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Bool
ebsOptimized :: Prelude.Maybe Prelude.Bool,
    
    Instance -> Maybe Text
ec2InstanceId :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
ecsClusterArn :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
ecsContainerInstanceArn :: Prelude.Maybe Prelude.Text,
    
    
    
    Instance -> Maybe Text
elasticIp :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
hostname :: Prelude.Maybe Prelude.Text,
    
    
    Instance -> Maybe Text
infrastructureClass :: Prelude.Maybe Prelude.Text,
    
    
    
    
    
    
    
    
    
    Instance -> Maybe Bool
installUpdatesOnBoot :: Prelude.Maybe Prelude.Bool,
    
    Instance -> Maybe Text
instanceId :: Prelude.Maybe Prelude.Text,
    
    
    
    Instance -> Maybe Text
instanceProfileArn :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
instanceType :: Prelude.Maybe Prelude.Text,
    
    
    Instance -> Maybe Text
lastServiceErrorId :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe [Text]
layerIds :: Prelude.Maybe [Prelude.Text],
    
    Instance -> Maybe Text
os :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
platform :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
privateDns :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
privateIp :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
publicDns :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
publicIp :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
registeredBy :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
reportedAgentVersion :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe ReportedOs
reportedOs :: Prelude.Maybe ReportedOs,
    
    
    Instance -> Maybe RootDeviceType
rootDeviceType :: Prelude.Maybe RootDeviceType,
    
    Instance -> Maybe Text
rootDeviceVolumeId :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe [Text]
securityGroupIds :: Prelude.Maybe [Prelude.Text],
    
    Instance -> Maybe Text
sshHostDsaKeyFingerprint :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
sshHostRsaKeyFingerprint :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
sshKeyName :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
stackId :: Prelude.Maybe Prelude.Text,
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    Instance -> Maybe Text
status :: Prelude.Maybe Prelude.Text,
    
    
    Instance -> Maybe Text
subnetId :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe Text
tenancy :: Prelude.Maybe Prelude.Text,
    
    Instance -> Maybe VirtualizationType
virtualizationType :: Prelude.Maybe VirtualizationType
  }
  deriving (Instance -> Instance -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Instance -> Instance -> Bool
$c/= :: Instance -> Instance -> Bool
== :: Instance -> Instance -> Bool
$c== :: Instance -> Instance -> Bool
Prelude.Eq, ReadPrec [Instance]
ReadPrec Instance
Int -> ReadS Instance
ReadS [Instance]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [Instance]
$creadListPrec :: ReadPrec [Instance]
readPrec :: ReadPrec Instance
$creadPrec :: ReadPrec Instance
readList :: ReadS [Instance]
$creadList :: ReadS [Instance]
readsPrec :: Int -> ReadS Instance
$creadsPrec :: Int -> ReadS Instance
Prelude.Read, Int -> Instance -> ShowS
[Instance] -> ShowS
Instance -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Instance] -> ShowS
$cshowList :: [Instance] -> ShowS
show :: Instance -> String
$cshow :: Instance -> String
showsPrec :: Int -> Instance -> ShowS
$cshowsPrec :: Int -> Instance -> ShowS
Prelude.Show, forall x. Rep Instance x -> Instance
forall x. Instance -> Rep Instance x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep Instance x -> Instance
$cfrom :: forall x. Instance -> Rep Instance x
Prelude.Generic)
newInstance ::
  Instance
newInstance :: Instance
newInstance =
  Instance'
    { $sel:agentVersion:Instance' :: Maybe Text
agentVersion = forall a. Maybe a
Prelude.Nothing,
      $sel:amiId:Instance' :: Maybe Text
amiId = forall a. Maybe a
Prelude.Nothing,
      $sel:architecture:Instance' :: Maybe Architecture
architecture = forall a. Maybe a
Prelude.Nothing,
      $sel:arn:Instance' :: Maybe Text
arn = forall a. Maybe a
Prelude.Nothing,
      $sel:autoScalingType:Instance' :: Maybe AutoScalingType
autoScalingType = forall a. Maybe a
Prelude.Nothing,
      $sel:availabilityZone:Instance' :: Maybe Text
availabilityZone = forall a. Maybe a
Prelude.Nothing,
      $sel:blockDeviceMappings:Instance' :: Maybe [BlockDeviceMapping]
blockDeviceMappings = forall a. Maybe a
Prelude.Nothing,
      $sel:createdAt:Instance' :: Maybe Text
createdAt = forall a. Maybe a
Prelude.Nothing,
      $sel:ebsOptimized:Instance' :: Maybe Bool
ebsOptimized = forall a. Maybe a
Prelude.Nothing,
      $sel:ec2InstanceId:Instance' :: Maybe Text
ec2InstanceId = forall a. Maybe a
Prelude.Nothing,
      $sel:ecsClusterArn:Instance' :: Maybe Text
ecsClusterArn = forall a. Maybe a
Prelude.Nothing,
      $sel:ecsContainerInstanceArn:Instance' :: Maybe Text
ecsContainerInstanceArn = forall a. Maybe a
Prelude.Nothing,
      $sel:elasticIp:Instance' :: Maybe Text
elasticIp = forall a. Maybe a
Prelude.Nothing,
      $sel:hostname:Instance' :: Maybe Text
hostname = forall a. Maybe a
Prelude.Nothing,
      $sel:infrastructureClass:Instance' :: Maybe Text
infrastructureClass = forall a. Maybe a
Prelude.Nothing,
      $sel:installUpdatesOnBoot:Instance' :: Maybe Bool
installUpdatesOnBoot = forall a. Maybe a
Prelude.Nothing,
      $sel:instanceId:Instance' :: Maybe Text
instanceId = forall a. Maybe a
Prelude.Nothing,
      $sel:instanceProfileArn:Instance' :: Maybe Text
instanceProfileArn = forall a. Maybe a
Prelude.Nothing,
      $sel:instanceType:Instance' :: Maybe Text
instanceType = forall a. Maybe a
Prelude.Nothing,
      $sel:lastServiceErrorId:Instance' :: Maybe Text
lastServiceErrorId = forall a. Maybe a
Prelude.Nothing,
      $sel:layerIds:Instance' :: Maybe [Text]
layerIds = forall a. Maybe a
Prelude.Nothing,
      $sel:os:Instance' :: Maybe Text
os = forall a. Maybe a
Prelude.Nothing,
      $sel:platform:Instance' :: Maybe Text
platform = forall a. Maybe a
Prelude.Nothing,
      $sel:privateDns:Instance' :: Maybe Text
privateDns = forall a. Maybe a
Prelude.Nothing,
      $sel:privateIp:Instance' :: Maybe Text
privateIp = forall a. Maybe a
Prelude.Nothing,
      $sel:publicDns:Instance' :: Maybe Text
publicDns = forall a. Maybe a
Prelude.Nothing,
      $sel:publicIp:Instance' :: Maybe Text
publicIp = forall a. Maybe a
Prelude.Nothing,
      $sel:registeredBy:Instance' :: Maybe Text
registeredBy = forall a. Maybe a
Prelude.Nothing,
      $sel:reportedAgentVersion:Instance' :: Maybe Text
reportedAgentVersion = forall a. Maybe a
Prelude.Nothing,
      $sel:reportedOs:Instance' :: Maybe ReportedOs
reportedOs = forall a. Maybe a
Prelude.Nothing,
      $sel:rootDeviceType:Instance' :: Maybe RootDeviceType
rootDeviceType = forall a. Maybe a
Prelude.Nothing,
      $sel:rootDeviceVolumeId:Instance' :: Maybe Text
rootDeviceVolumeId = forall a. Maybe a
Prelude.Nothing,
      $sel:securityGroupIds:Instance' :: Maybe [Text]
securityGroupIds = forall a. Maybe a
Prelude.Nothing,
      $sel:sshHostDsaKeyFingerprint:Instance' :: Maybe Text
sshHostDsaKeyFingerprint = forall a. Maybe a
Prelude.Nothing,
      $sel:sshHostRsaKeyFingerprint:Instance' :: Maybe Text
sshHostRsaKeyFingerprint = forall a. Maybe a
Prelude.Nothing,
      $sel:sshKeyName:Instance' :: Maybe Text
sshKeyName = forall a. Maybe a
Prelude.Nothing,
      $sel:stackId:Instance' :: Maybe Text
stackId = forall a. Maybe a
Prelude.Nothing,
      $sel:status:Instance' :: Maybe Text
status = forall a. Maybe a
Prelude.Nothing,
      $sel:subnetId:Instance' :: Maybe Text
subnetId = forall a. Maybe a
Prelude.Nothing,
      $sel:tenancy:Instance' :: Maybe Text
tenancy = forall a. Maybe a
Prelude.Nothing,
      $sel:virtualizationType:Instance' :: Maybe VirtualizationType
virtualizationType = forall a. Maybe a
Prelude.Nothing
    }
instance_agentVersion :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_agentVersion :: Lens' Instance (Maybe Text)
instance_agentVersion = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
agentVersion :: Maybe Text
$sel:agentVersion:Instance' :: Instance -> Maybe Text
agentVersion} -> Maybe Text
agentVersion) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:agentVersion:Instance' :: Maybe Text
agentVersion = Maybe Text
a} :: Instance)
instance_amiId :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_amiId :: Lens' Instance (Maybe Text)
instance_amiId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
amiId :: Maybe Text
$sel:amiId:Instance' :: Instance -> Maybe Text
amiId} -> Maybe Text
amiId) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:amiId:Instance' :: Maybe Text
amiId = Maybe Text
a} :: Instance)
instance_architecture :: Lens.Lens' Instance (Prelude.Maybe Architecture)
instance_architecture :: Lens' Instance (Maybe Architecture)
instance_architecture = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Architecture
architecture :: Maybe Architecture
$sel:architecture:Instance' :: Instance -> Maybe Architecture
architecture} -> Maybe Architecture
architecture) (\s :: Instance
s@Instance' {} Maybe Architecture
a -> Instance
s {$sel:architecture:Instance' :: Maybe Architecture
architecture = Maybe Architecture
a} :: Instance)
instance_arn :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_arn :: Lens' Instance (Maybe Text)
instance_arn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
arn :: Maybe Text
$sel:arn:Instance' :: Instance -> Maybe Text
arn} -> Maybe Text
arn) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:arn:Instance' :: Maybe Text
arn = Maybe Text
a} :: Instance)
instance_autoScalingType :: Lens.Lens' Instance (Prelude.Maybe AutoScalingType)
instance_autoScalingType :: Lens' Instance (Maybe AutoScalingType)
instance_autoScalingType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe AutoScalingType
autoScalingType :: Maybe AutoScalingType
$sel:autoScalingType:Instance' :: Instance -> Maybe AutoScalingType
autoScalingType} -> Maybe AutoScalingType
autoScalingType) (\s :: Instance
s@Instance' {} Maybe AutoScalingType
a -> Instance
s {$sel:autoScalingType:Instance' :: Maybe AutoScalingType
autoScalingType = Maybe AutoScalingType
a} :: Instance)
instance_availabilityZone :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_availabilityZone :: Lens' Instance (Maybe Text)
instance_availabilityZone = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
availabilityZone :: Maybe Text
$sel:availabilityZone:Instance' :: Instance -> Maybe Text
availabilityZone} -> Maybe Text
availabilityZone) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:availabilityZone:Instance' :: Maybe Text
availabilityZone = Maybe Text
a} :: Instance)
instance_blockDeviceMappings :: Lens.Lens' Instance (Prelude.Maybe [BlockDeviceMapping])
instance_blockDeviceMappings :: Lens' Instance (Maybe [BlockDeviceMapping])
instance_blockDeviceMappings = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe [BlockDeviceMapping]
blockDeviceMappings :: Maybe [BlockDeviceMapping]
$sel:blockDeviceMappings:Instance' :: Instance -> Maybe [BlockDeviceMapping]
blockDeviceMappings} -> Maybe [BlockDeviceMapping]
blockDeviceMappings) (\s :: Instance
s@Instance' {} Maybe [BlockDeviceMapping]
a -> Instance
s {$sel:blockDeviceMappings:Instance' :: Maybe [BlockDeviceMapping]
blockDeviceMappings = Maybe [BlockDeviceMapping]
a} :: Instance) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instance_createdAt :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_createdAt :: Lens' Instance (Maybe Text)
instance_createdAt = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
createdAt :: Maybe Text
$sel:createdAt:Instance' :: Instance -> Maybe Text
createdAt} -> Maybe Text
createdAt) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:createdAt:Instance' :: Maybe Text
createdAt = Maybe Text
a} :: Instance)
instance_ebsOptimized :: Lens.Lens' Instance (Prelude.Maybe Prelude.Bool)
instance_ebsOptimized :: Lens' Instance (Maybe Bool)
instance_ebsOptimized = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Bool
ebsOptimized :: Maybe Bool
$sel:ebsOptimized:Instance' :: Instance -> Maybe Bool
ebsOptimized} -> Maybe Bool
ebsOptimized) (\s :: Instance
s@Instance' {} Maybe Bool
a -> Instance
s {$sel:ebsOptimized:Instance' :: Maybe Bool
ebsOptimized = Maybe Bool
a} :: Instance)
instance_ec2InstanceId :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_ec2InstanceId :: Lens' Instance (Maybe Text)
instance_ec2InstanceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
ec2InstanceId :: Maybe Text
$sel:ec2InstanceId:Instance' :: Instance -> Maybe Text
ec2InstanceId} -> Maybe Text
ec2InstanceId) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:ec2InstanceId:Instance' :: Maybe Text
ec2InstanceId = Maybe Text
a} :: Instance)
instance_ecsClusterArn :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_ecsClusterArn :: Lens' Instance (Maybe Text)
instance_ecsClusterArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
ecsClusterArn :: Maybe Text
$sel:ecsClusterArn:Instance' :: Instance -> Maybe Text
ecsClusterArn} -> Maybe Text
ecsClusterArn) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:ecsClusterArn:Instance' :: Maybe Text
ecsClusterArn = Maybe Text
a} :: Instance)
instance_ecsContainerInstanceArn :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_ecsContainerInstanceArn :: Lens' Instance (Maybe Text)
instance_ecsContainerInstanceArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
ecsContainerInstanceArn :: Maybe Text
$sel:ecsContainerInstanceArn:Instance' :: Instance -> Maybe Text
ecsContainerInstanceArn} -> Maybe Text
ecsContainerInstanceArn) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:ecsContainerInstanceArn:Instance' :: Maybe Text
ecsContainerInstanceArn = Maybe Text
a} :: Instance)
instance_elasticIp :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_elasticIp :: Lens' Instance (Maybe Text)
instance_elasticIp = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
elasticIp :: Maybe Text
$sel:elasticIp:Instance' :: Instance -> Maybe Text
elasticIp} -> Maybe Text
elasticIp) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:elasticIp:Instance' :: Maybe Text
elasticIp = Maybe Text
a} :: Instance)
instance_hostname :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_hostname :: Lens' Instance (Maybe Text)
instance_hostname = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
hostname :: Maybe Text
$sel:hostname:Instance' :: Instance -> Maybe Text
hostname} -> Maybe Text
hostname) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:hostname:Instance' :: Maybe Text
hostname = Maybe Text
a} :: Instance)
instance_infrastructureClass :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_infrastructureClass :: Lens' Instance (Maybe Text)
instance_infrastructureClass = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
infrastructureClass :: Maybe Text
$sel:infrastructureClass:Instance' :: Instance -> Maybe Text
infrastructureClass} -> Maybe Text
infrastructureClass) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:infrastructureClass:Instance' :: Maybe Text
infrastructureClass = Maybe Text
a} :: Instance)
instance_installUpdatesOnBoot :: Lens.Lens' Instance (Prelude.Maybe Prelude.Bool)
instance_installUpdatesOnBoot :: Lens' Instance (Maybe Bool)
instance_installUpdatesOnBoot = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Bool
installUpdatesOnBoot :: Maybe Bool
$sel:installUpdatesOnBoot:Instance' :: Instance -> Maybe Bool
installUpdatesOnBoot} -> Maybe Bool
installUpdatesOnBoot) (\s :: Instance
s@Instance' {} Maybe Bool
a -> Instance
s {$sel:installUpdatesOnBoot:Instance' :: Maybe Bool
installUpdatesOnBoot = Maybe Bool
a} :: Instance)
instance_instanceId :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_instanceId :: Lens' Instance (Maybe Text)
instance_instanceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
instanceId :: Maybe Text
$sel:instanceId:Instance' :: Instance -> Maybe Text
instanceId} -> Maybe Text
instanceId) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:instanceId:Instance' :: Maybe Text
instanceId = Maybe Text
a} :: Instance)
instance_instanceProfileArn :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_instanceProfileArn :: Lens' Instance (Maybe Text)
instance_instanceProfileArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
instanceProfileArn :: Maybe Text
$sel:instanceProfileArn:Instance' :: Instance -> Maybe Text
instanceProfileArn} -> Maybe Text
instanceProfileArn) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:instanceProfileArn:Instance' :: Maybe Text
instanceProfileArn = Maybe Text
a} :: Instance)
instance_instanceType :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_instanceType :: Lens' Instance (Maybe Text)
instance_instanceType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
instanceType :: Maybe Text
$sel:instanceType:Instance' :: Instance -> Maybe Text
instanceType} -> Maybe Text
instanceType) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:instanceType:Instance' :: Maybe Text
instanceType = Maybe Text
a} :: Instance)
instance_lastServiceErrorId :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_lastServiceErrorId :: Lens' Instance (Maybe Text)
instance_lastServiceErrorId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
lastServiceErrorId :: Maybe Text
$sel:lastServiceErrorId:Instance' :: Instance -> Maybe Text
lastServiceErrorId} -> Maybe Text
lastServiceErrorId) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:lastServiceErrorId:Instance' :: Maybe Text
lastServiceErrorId = Maybe Text
a} :: Instance)
instance_layerIds :: Lens.Lens' Instance (Prelude.Maybe [Prelude.Text])
instance_layerIds :: Lens' Instance (Maybe [Text])
instance_layerIds = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe [Text]
layerIds :: Maybe [Text]
$sel:layerIds:Instance' :: Instance -> Maybe [Text]
layerIds} -> Maybe [Text]
layerIds) (\s :: Instance
s@Instance' {} Maybe [Text]
a -> Instance
s {$sel:layerIds:Instance' :: Maybe [Text]
layerIds = Maybe [Text]
a} :: Instance) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instance_os :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_os :: Lens' Instance (Maybe Text)
instance_os = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
os :: Maybe Text
$sel:os:Instance' :: Instance -> Maybe Text
os} -> Maybe Text
os) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:os:Instance' :: Maybe Text
os = Maybe Text
a} :: Instance)
instance_platform :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_platform :: Lens' Instance (Maybe Text)
instance_platform = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
platform :: Maybe Text
$sel:platform:Instance' :: Instance -> Maybe Text
platform} -> Maybe Text
platform) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:platform:Instance' :: Maybe Text
platform = Maybe Text
a} :: Instance)
instance_privateDns :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_privateDns :: Lens' Instance (Maybe Text)
instance_privateDns = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
privateDns :: Maybe Text
$sel:privateDns:Instance' :: Instance -> Maybe Text
privateDns} -> Maybe Text
privateDns) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:privateDns:Instance' :: Maybe Text
privateDns = Maybe Text
a} :: Instance)
instance_privateIp :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_privateIp :: Lens' Instance (Maybe Text)
instance_privateIp = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
privateIp :: Maybe Text
$sel:privateIp:Instance' :: Instance -> Maybe Text
privateIp} -> Maybe Text
privateIp) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:privateIp:Instance' :: Maybe Text
privateIp = Maybe Text
a} :: Instance)
instance_publicDns :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_publicDns :: Lens' Instance (Maybe Text)
instance_publicDns = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
publicDns :: Maybe Text
$sel:publicDns:Instance' :: Instance -> Maybe Text
publicDns} -> Maybe Text
publicDns) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:publicDns:Instance' :: Maybe Text
publicDns = Maybe Text
a} :: Instance)
instance_publicIp :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_publicIp :: Lens' Instance (Maybe Text)
instance_publicIp = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
publicIp :: Maybe Text
$sel:publicIp:Instance' :: Instance -> Maybe Text
publicIp} -> Maybe Text
publicIp) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:publicIp:Instance' :: Maybe Text
publicIp = Maybe Text
a} :: Instance)
instance_registeredBy :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_registeredBy :: Lens' Instance (Maybe Text)
instance_registeredBy = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
registeredBy :: Maybe Text
$sel:registeredBy:Instance' :: Instance -> Maybe Text
registeredBy} -> Maybe Text
registeredBy) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:registeredBy:Instance' :: Maybe Text
registeredBy = Maybe Text
a} :: Instance)
instance_reportedAgentVersion :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_reportedAgentVersion :: Lens' Instance (Maybe Text)
instance_reportedAgentVersion = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
reportedAgentVersion :: Maybe Text
$sel:reportedAgentVersion:Instance' :: Instance -> Maybe Text
reportedAgentVersion} -> Maybe Text
reportedAgentVersion) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:reportedAgentVersion:Instance' :: Maybe Text
reportedAgentVersion = Maybe Text
a} :: Instance)
instance_reportedOs :: Lens.Lens' Instance (Prelude.Maybe ReportedOs)
instance_reportedOs :: Lens' Instance (Maybe ReportedOs)
instance_reportedOs = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe ReportedOs
reportedOs :: Maybe ReportedOs
$sel:reportedOs:Instance' :: Instance -> Maybe ReportedOs
reportedOs} -> Maybe ReportedOs
reportedOs) (\s :: Instance
s@Instance' {} Maybe ReportedOs
a -> Instance
s {$sel:reportedOs:Instance' :: Maybe ReportedOs
reportedOs = Maybe ReportedOs
a} :: Instance)
instance_rootDeviceType :: Lens.Lens' Instance (Prelude.Maybe RootDeviceType)
instance_rootDeviceType :: Lens' Instance (Maybe RootDeviceType)
instance_rootDeviceType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe RootDeviceType
rootDeviceType :: Maybe RootDeviceType
$sel:rootDeviceType:Instance' :: Instance -> Maybe RootDeviceType
rootDeviceType} -> Maybe RootDeviceType
rootDeviceType) (\s :: Instance
s@Instance' {} Maybe RootDeviceType
a -> Instance
s {$sel:rootDeviceType:Instance' :: Maybe RootDeviceType
rootDeviceType = Maybe RootDeviceType
a} :: Instance)
instance_rootDeviceVolumeId :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_rootDeviceVolumeId :: Lens' Instance (Maybe Text)
instance_rootDeviceVolumeId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
rootDeviceVolumeId :: Maybe Text
$sel:rootDeviceVolumeId:Instance' :: Instance -> Maybe Text
rootDeviceVolumeId} -> Maybe Text
rootDeviceVolumeId) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:rootDeviceVolumeId:Instance' :: Maybe Text
rootDeviceVolumeId = Maybe Text
a} :: Instance)
instance_securityGroupIds :: Lens.Lens' Instance (Prelude.Maybe [Prelude.Text])
instance_securityGroupIds :: Lens' Instance (Maybe [Text])
instance_securityGroupIds = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe [Text]
securityGroupIds :: Maybe [Text]
$sel:securityGroupIds:Instance' :: Instance -> Maybe [Text]
securityGroupIds} -> Maybe [Text]
securityGroupIds) (\s :: Instance
s@Instance' {} Maybe [Text]
a -> Instance
s {$sel:securityGroupIds:Instance' :: Maybe [Text]
securityGroupIds = Maybe [Text]
a} :: Instance) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instance_sshHostDsaKeyFingerprint :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_sshHostDsaKeyFingerprint :: Lens' Instance (Maybe Text)
instance_sshHostDsaKeyFingerprint = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
sshHostDsaKeyFingerprint :: Maybe Text
$sel:sshHostDsaKeyFingerprint:Instance' :: Instance -> Maybe Text
sshHostDsaKeyFingerprint} -> Maybe Text
sshHostDsaKeyFingerprint) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:sshHostDsaKeyFingerprint:Instance' :: Maybe Text
sshHostDsaKeyFingerprint = Maybe Text
a} :: Instance)
instance_sshHostRsaKeyFingerprint :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_sshHostRsaKeyFingerprint :: Lens' Instance (Maybe Text)
instance_sshHostRsaKeyFingerprint = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
sshHostRsaKeyFingerprint :: Maybe Text
$sel:sshHostRsaKeyFingerprint:Instance' :: Instance -> Maybe Text
sshHostRsaKeyFingerprint} -> Maybe Text
sshHostRsaKeyFingerprint) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:sshHostRsaKeyFingerprint:Instance' :: Maybe Text
sshHostRsaKeyFingerprint = Maybe Text
a} :: Instance)
instance_sshKeyName :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_sshKeyName :: Lens' Instance (Maybe Text)
instance_sshKeyName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
sshKeyName :: Maybe Text
$sel:sshKeyName:Instance' :: Instance -> Maybe Text
sshKeyName} -> Maybe Text
sshKeyName) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:sshKeyName:Instance' :: Maybe Text
sshKeyName = Maybe Text
a} :: Instance)
instance_stackId :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_stackId :: Lens' Instance (Maybe Text)
instance_stackId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
stackId :: Maybe Text
$sel:stackId:Instance' :: Instance -> Maybe Text
stackId} -> Maybe Text
stackId) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:stackId:Instance' :: Maybe Text
stackId = Maybe Text
a} :: Instance)
instance_status :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_status :: Lens' Instance (Maybe Text)
instance_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
status :: Maybe Text
$sel:status:Instance' :: Instance -> Maybe Text
status} -> Maybe Text
status) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:status:Instance' :: Maybe Text
status = Maybe Text
a} :: Instance)
instance_subnetId :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_subnetId :: Lens' Instance (Maybe Text)
instance_subnetId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
subnetId :: Maybe Text
$sel:subnetId:Instance' :: Instance -> Maybe Text
subnetId} -> Maybe Text
subnetId) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:subnetId:Instance' :: Maybe Text
subnetId = Maybe Text
a} :: Instance)
instance_tenancy :: Lens.Lens' Instance (Prelude.Maybe Prelude.Text)
instance_tenancy :: Lens' Instance (Maybe Text)
instance_tenancy = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe Text
tenancy :: Maybe Text
$sel:tenancy:Instance' :: Instance -> Maybe Text
tenancy} -> Maybe Text
tenancy) (\s :: Instance
s@Instance' {} Maybe Text
a -> Instance
s {$sel:tenancy:Instance' :: Maybe Text
tenancy = Maybe Text
a} :: Instance)
instance_virtualizationType :: Lens.Lens' Instance (Prelude.Maybe VirtualizationType)
instance_virtualizationType :: Lens' Instance (Maybe VirtualizationType)
instance_virtualizationType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Instance' {Maybe VirtualizationType
virtualizationType :: Maybe VirtualizationType
$sel:virtualizationType:Instance' :: Instance -> Maybe VirtualizationType
virtualizationType} -> Maybe VirtualizationType
virtualizationType) (\s :: Instance
s@Instance' {} Maybe VirtualizationType
a -> Instance
s {$sel:virtualizationType:Instance' :: Maybe VirtualizationType
virtualizationType = Maybe VirtualizationType
a} :: Instance)
instance Data.FromJSON Instance where
  parseJSON :: Value -> Parser Instance
parseJSON =
    forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
      String
"Instance"
      ( \Object
x ->
          Maybe Text
-> Maybe Text
-> Maybe Architecture
-> Maybe Text
-> Maybe AutoScalingType
-> Maybe Text
-> Maybe [BlockDeviceMapping]
-> Maybe Text
-> Maybe Bool
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe [Text]
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe ReportedOs
-> Maybe RootDeviceType
-> Maybe Text
-> Maybe [Text]
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe VirtualizationType
-> Instance
Instance'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"AgentVersion")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"AmiId")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Architecture")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Arn")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"AutoScalingType")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"AvailabilityZone")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( Object
x
                            forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"BlockDeviceMappings"
                            forall a. Parser (Maybe a) -> a -> Parser a
Data..!= forall a. Monoid a => a
Prelude.mempty
                        )
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"CreatedAt")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"EbsOptimized")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Ec2InstanceId")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"EcsClusterArn")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"EcsContainerInstanceArn")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ElasticIp")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Hostname")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"InfrastructureClass")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"InstallUpdatesOnBoot")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"InstanceId")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"InstanceProfileArn")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"InstanceType")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"LastServiceErrorId")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"LayerIds" forall a. Parser (Maybe a) -> a -> Parser a
Data..!= forall a. Monoid a => a
Prelude.mempty)
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Os")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Platform")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"PrivateDns")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"PrivateIp")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"PublicDns")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"PublicIp")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"RegisteredBy")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ReportedAgentVersion")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ReportedOs")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"RootDeviceType")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"RootDeviceVolumeId")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( Object
x
                            forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SecurityGroupIds"
                            forall a. Parser (Maybe a) -> a -> Parser a
Data..!= forall a. Monoid a => a
Prelude.mempty
                        )
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SshHostDsaKeyFingerprint")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SshHostRsaKeyFingerprint")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SshKeyName")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"StackId")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Status")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SubnetId")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Tenancy")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"VirtualizationType")
      )
instance Prelude.Hashable Instance where
  hashWithSalt :: Int -> Instance -> Int
hashWithSalt Int
_salt Instance' {Maybe Bool
Maybe [Text]
Maybe [BlockDeviceMapping]
Maybe Text
Maybe Architecture
Maybe AutoScalingType
Maybe ReportedOs
Maybe RootDeviceType
Maybe VirtualizationType
virtualizationType :: Maybe VirtualizationType
tenancy :: Maybe Text
subnetId :: Maybe Text
status :: Maybe Text
stackId :: Maybe Text
sshKeyName :: Maybe Text
sshHostRsaKeyFingerprint :: Maybe Text
sshHostDsaKeyFingerprint :: Maybe Text
securityGroupIds :: Maybe [Text]
rootDeviceVolumeId :: Maybe Text
rootDeviceType :: Maybe RootDeviceType
reportedOs :: Maybe ReportedOs
reportedAgentVersion :: Maybe Text
registeredBy :: Maybe Text
publicIp :: Maybe Text
publicDns :: Maybe Text
privateIp :: Maybe Text
privateDns :: Maybe Text
platform :: Maybe Text
os :: Maybe Text
layerIds :: Maybe [Text]
lastServiceErrorId :: Maybe Text
instanceType :: Maybe Text
instanceProfileArn :: Maybe Text
instanceId :: Maybe Text
installUpdatesOnBoot :: Maybe Bool
infrastructureClass :: Maybe Text
hostname :: Maybe Text
elasticIp :: Maybe Text
ecsContainerInstanceArn :: Maybe Text
ecsClusterArn :: Maybe Text
ec2InstanceId :: Maybe Text
ebsOptimized :: Maybe Bool
createdAt :: Maybe Text
blockDeviceMappings :: Maybe [BlockDeviceMapping]
availabilityZone :: Maybe Text
autoScalingType :: Maybe AutoScalingType
arn :: Maybe Text
architecture :: Maybe Architecture
amiId :: Maybe Text
agentVersion :: Maybe Text
$sel:virtualizationType:Instance' :: Instance -> Maybe VirtualizationType
$sel:tenancy:Instance' :: Instance -> Maybe Text
$sel:subnetId:Instance' :: Instance -> Maybe Text
$sel:status:Instance' :: Instance -> Maybe Text
$sel:stackId:Instance' :: Instance -> Maybe Text
$sel:sshKeyName:Instance' :: Instance -> Maybe Text
$sel:sshHostRsaKeyFingerprint:Instance' :: Instance -> Maybe Text
$sel:sshHostDsaKeyFingerprint:Instance' :: Instance -> Maybe Text
$sel:securityGroupIds:Instance' :: Instance -> Maybe [Text]
$sel:rootDeviceVolumeId:Instance' :: Instance -> Maybe Text
$sel:rootDeviceType:Instance' :: Instance -> Maybe RootDeviceType
$sel:reportedOs:Instance' :: Instance -> Maybe ReportedOs
$sel:reportedAgentVersion:Instance' :: Instance -> Maybe Text
$sel:registeredBy:Instance' :: Instance -> Maybe Text
$sel:publicIp:Instance' :: Instance -> Maybe Text
$sel:publicDns:Instance' :: Instance -> Maybe Text
$sel:privateIp:Instance' :: Instance -> Maybe Text
$sel:privateDns:Instance' :: Instance -> Maybe Text
$sel:platform:Instance' :: Instance -> Maybe Text
$sel:os:Instance' :: Instance -> Maybe Text
$sel:layerIds:Instance' :: Instance -> Maybe [Text]
$sel:lastServiceErrorId:Instance' :: Instance -> Maybe Text
$sel:instanceType:Instance' :: Instance -> Maybe Text
$sel:instanceProfileArn:Instance' :: Instance -> Maybe Text
$sel:instanceId:Instance' :: Instance -> Maybe Text
$sel:installUpdatesOnBoot:Instance' :: Instance -> Maybe Bool
$sel:infrastructureClass:Instance' :: Instance -> Maybe Text
$sel:hostname:Instance' :: Instance -> Maybe Text
$sel:elasticIp:Instance' :: Instance -> Maybe Text
$sel:ecsContainerInstanceArn:Instance' :: Instance -> Maybe Text
$sel:ecsClusterArn:Instance' :: Instance -> Maybe Text
$sel:ec2InstanceId:Instance' :: Instance -> Maybe Text
$sel:ebsOptimized:Instance' :: Instance -> Maybe Bool
$sel:createdAt:Instance' :: Instance -> Maybe Text
$sel:blockDeviceMappings:Instance' :: Instance -> Maybe [BlockDeviceMapping]
$sel:availabilityZone:Instance' :: Instance -> Maybe Text
$sel:autoScalingType:Instance' :: Instance -> Maybe AutoScalingType
$sel:arn:Instance' :: Instance -> Maybe Text
$sel:architecture:Instance' :: Instance -> Maybe Architecture
$sel:amiId:Instance' :: Instance -> Maybe Text
$sel:agentVersion:Instance' :: Instance -> Maybe Text
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
agentVersion
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
amiId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Architecture
architecture
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
arn
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe AutoScalingType
autoScalingType
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
availabilityZone
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [BlockDeviceMapping]
blockDeviceMappings
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
createdAt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
ebsOptimized
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ec2InstanceId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ecsClusterArn
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ecsContainerInstanceArn
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
elasticIp
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
hostname
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
infrastructureClass
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
installUpdatesOnBoot
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
instanceId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
instanceProfileArn
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
instanceType
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
lastServiceErrorId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Text]
layerIds
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
os
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
platform
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
privateDns
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
privateIp
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
publicDns
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
publicIp
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
registeredBy
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
reportedAgentVersion
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ReportedOs
reportedOs
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe RootDeviceType
rootDeviceType
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
rootDeviceVolumeId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Text]
securityGroupIds
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
sshHostDsaKeyFingerprint
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
sshHostRsaKeyFingerprint
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
sshKeyName
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
stackId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
status
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
subnetId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
tenancy
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe VirtualizationType
virtualizationType
instance Prelude.NFData Instance where
  rnf :: Instance -> ()
rnf Instance' {Maybe Bool
Maybe [Text]
Maybe [BlockDeviceMapping]
Maybe Text
Maybe Architecture
Maybe AutoScalingType
Maybe ReportedOs
Maybe RootDeviceType
Maybe VirtualizationType
virtualizationType :: Maybe VirtualizationType
tenancy :: Maybe Text
subnetId :: Maybe Text
status :: Maybe Text
stackId :: Maybe Text
sshKeyName :: Maybe Text
sshHostRsaKeyFingerprint :: Maybe Text
sshHostDsaKeyFingerprint :: Maybe Text
securityGroupIds :: Maybe [Text]
rootDeviceVolumeId :: Maybe Text
rootDeviceType :: Maybe RootDeviceType
reportedOs :: Maybe ReportedOs
reportedAgentVersion :: Maybe Text
registeredBy :: Maybe Text
publicIp :: Maybe Text
publicDns :: Maybe Text
privateIp :: Maybe Text
privateDns :: Maybe Text
platform :: Maybe Text
os :: Maybe Text
layerIds :: Maybe [Text]
lastServiceErrorId :: Maybe Text
instanceType :: Maybe Text
instanceProfileArn :: Maybe Text
instanceId :: Maybe Text
installUpdatesOnBoot :: Maybe Bool
infrastructureClass :: Maybe Text
hostname :: Maybe Text
elasticIp :: Maybe Text
ecsContainerInstanceArn :: Maybe Text
ecsClusterArn :: Maybe Text
ec2InstanceId :: Maybe Text
ebsOptimized :: Maybe Bool
createdAt :: Maybe Text
blockDeviceMappings :: Maybe [BlockDeviceMapping]
availabilityZone :: Maybe Text
autoScalingType :: Maybe AutoScalingType
arn :: Maybe Text
architecture :: Maybe Architecture
amiId :: Maybe Text
agentVersion :: Maybe Text
$sel:virtualizationType:Instance' :: Instance -> Maybe VirtualizationType
$sel:tenancy:Instance' :: Instance -> Maybe Text
$sel:subnetId:Instance' :: Instance -> Maybe Text
$sel:status:Instance' :: Instance -> Maybe Text
$sel:stackId:Instance' :: Instance -> Maybe Text
$sel:sshKeyName:Instance' :: Instance -> Maybe Text
$sel:sshHostRsaKeyFingerprint:Instance' :: Instance -> Maybe Text
$sel:sshHostDsaKeyFingerprint:Instance' :: Instance -> Maybe Text
$sel:securityGroupIds:Instance' :: Instance -> Maybe [Text]
$sel:rootDeviceVolumeId:Instance' :: Instance -> Maybe Text
$sel:rootDeviceType:Instance' :: Instance -> Maybe RootDeviceType
$sel:reportedOs:Instance' :: Instance -> Maybe ReportedOs
$sel:reportedAgentVersion:Instance' :: Instance -> Maybe Text
$sel:registeredBy:Instance' :: Instance -> Maybe Text
$sel:publicIp:Instance' :: Instance -> Maybe Text
$sel:publicDns:Instance' :: Instance -> Maybe Text
$sel:privateIp:Instance' :: Instance -> Maybe Text
$sel:privateDns:Instance' :: Instance -> Maybe Text
$sel:platform:Instance' :: Instance -> Maybe Text
$sel:os:Instance' :: Instance -> Maybe Text
$sel:layerIds:Instance' :: Instance -> Maybe [Text]
$sel:lastServiceErrorId:Instance' :: Instance -> Maybe Text
$sel:instanceType:Instance' :: Instance -> Maybe Text
$sel:instanceProfileArn:Instance' :: Instance -> Maybe Text
$sel:instanceId:Instance' :: Instance -> Maybe Text
$sel:installUpdatesOnBoot:Instance' :: Instance -> Maybe Bool
$sel:infrastructureClass:Instance' :: Instance -> Maybe Text
$sel:hostname:Instance' :: Instance -> Maybe Text
$sel:elasticIp:Instance' :: Instance -> Maybe Text
$sel:ecsContainerInstanceArn:Instance' :: Instance -> Maybe Text
$sel:ecsClusterArn:Instance' :: Instance -> Maybe Text
$sel:ec2InstanceId:Instance' :: Instance -> Maybe Text
$sel:ebsOptimized:Instance' :: Instance -> Maybe Bool
$sel:createdAt:Instance' :: Instance -> Maybe Text
$sel:blockDeviceMappings:Instance' :: Instance -> Maybe [BlockDeviceMapping]
$sel:availabilityZone:Instance' :: Instance -> Maybe Text
$sel:autoScalingType:Instance' :: Instance -> Maybe AutoScalingType
$sel:arn:Instance' :: Instance -> Maybe Text
$sel:architecture:Instance' :: Instance -> Maybe Architecture
$sel:amiId:Instance' :: Instance -> Maybe Text
$sel:agentVersion:Instance' :: Instance -> Maybe Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
agentVersion
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
amiId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Architecture
architecture
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
arn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe AutoScalingType
autoScalingType
      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 [BlockDeviceMapping]
blockDeviceMappings
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
createdAt
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
ebsOptimized
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ec2InstanceId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ecsClusterArn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ecsContainerInstanceArn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
elasticIp
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
hostname
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
infrastructureClass
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
installUpdatesOnBoot
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
instanceId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
instanceProfileArn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
instanceType
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
lastServiceErrorId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Text]
layerIds
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
os
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
platform
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
privateDns
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
privateIp
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
publicDns
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
publicIp
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
registeredBy
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
reportedAgentVersion
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe ReportedOs
reportedOs
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe RootDeviceType
rootDeviceType
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
rootDeviceVolumeId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe [Text]
securityGroupIds
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
sshHostDsaKeyFingerprint
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
sshHostRsaKeyFingerprint
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
sshKeyName
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
stackId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
status
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
subnetId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Text
tenancy
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe VirtualizationType
virtualizationType