{-# 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.IpamPool 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.AddressFamily
import Amazonka.EC2.Types.IpamPoolAwsService
import Amazonka.EC2.Types.IpamPoolState
import Amazonka.EC2.Types.IpamResourceTag
import Amazonka.EC2.Types.IpamScopeType
import Amazonka.EC2.Types.Tag
import qualified Amazonka.Prelude as Prelude
data IpamPool = IpamPool'
{
IpamPool -> Maybe AddressFamily
addressFamily :: Prelude.Maybe AddressFamily,
IpamPool -> Maybe Natural
allocationDefaultNetmaskLength :: Prelude.Maybe Prelude.Natural,
IpamPool -> Maybe Natural
allocationMaxNetmaskLength :: Prelude.Maybe Prelude.Natural,
IpamPool -> Maybe Natural
allocationMinNetmaskLength :: Prelude.Maybe Prelude.Natural,
IpamPool -> Maybe [IpamResourceTag]
allocationResourceTags :: Prelude.Maybe [IpamResourceTag],
IpamPool -> Maybe Bool
autoImport :: Prelude.Maybe Prelude.Bool,
IpamPool -> Maybe IpamPoolAwsService
awsService :: Prelude.Maybe IpamPoolAwsService,
IpamPool -> Maybe Text
description :: Prelude.Maybe Prelude.Text,
IpamPool -> Maybe Text
ipamArn :: Prelude.Maybe Prelude.Text,
IpamPool -> Maybe Text
ipamPoolArn :: Prelude.Maybe Prelude.Text,
IpamPool -> Maybe Text
ipamPoolId :: Prelude.Maybe Prelude.Text,
IpamPool -> Maybe Text
ipamRegion :: Prelude.Maybe Prelude.Text,
IpamPool -> Maybe Text
ipamScopeArn :: Prelude.Maybe Prelude.Text,
IpamPool -> Maybe IpamScopeType
ipamScopeType :: Prelude.Maybe IpamScopeType,
IpamPool -> Maybe Text
locale :: Prelude.Maybe Prelude.Text,
IpamPool -> Maybe Text
ownerId :: Prelude.Maybe Prelude.Text,
IpamPool -> Maybe Int
poolDepth :: Prelude.Maybe Prelude.Int,
IpamPool -> Maybe Bool
publiclyAdvertisable :: Prelude.Maybe Prelude.Bool,
IpamPool -> Maybe Text
sourceIpamPoolId :: Prelude.Maybe Prelude.Text,
IpamPool -> Maybe IpamPoolState
state :: Prelude.Maybe IpamPoolState,
IpamPool -> Maybe Text
stateMessage :: Prelude.Maybe Prelude.Text,
IpamPool -> Maybe [Tag]
tags :: Prelude.Maybe [Tag]
}
deriving (IpamPool -> IpamPool -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: IpamPool -> IpamPool -> Bool
$c/= :: IpamPool -> IpamPool -> Bool
== :: IpamPool -> IpamPool -> Bool
$c== :: IpamPool -> IpamPool -> Bool
Prelude.Eq, ReadPrec [IpamPool]
ReadPrec IpamPool
Int -> ReadS IpamPool
ReadS [IpamPool]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [IpamPool]
$creadListPrec :: ReadPrec [IpamPool]
readPrec :: ReadPrec IpamPool
$creadPrec :: ReadPrec IpamPool
readList :: ReadS [IpamPool]
$creadList :: ReadS [IpamPool]
readsPrec :: Int -> ReadS IpamPool
$creadsPrec :: Int -> ReadS IpamPool
Prelude.Read, Int -> IpamPool -> ShowS
[IpamPool] -> ShowS
IpamPool -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [IpamPool] -> ShowS
$cshowList :: [IpamPool] -> ShowS
show :: IpamPool -> String
$cshow :: IpamPool -> String
showsPrec :: Int -> IpamPool -> ShowS
$cshowsPrec :: Int -> IpamPool -> ShowS
Prelude.Show, forall x. Rep IpamPool x -> IpamPool
forall x. IpamPool -> Rep IpamPool x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep IpamPool x -> IpamPool
$cfrom :: forall x. IpamPool -> Rep IpamPool x
Prelude.Generic)
newIpamPool ::
IpamPool
newIpamPool :: IpamPool
newIpamPool =
IpamPool'
{ $sel:addressFamily:IpamPool' :: Maybe AddressFamily
addressFamily = forall a. Maybe a
Prelude.Nothing,
$sel:allocationDefaultNetmaskLength:IpamPool' :: Maybe Natural
allocationDefaultNetmaskLength = forall a. Maybe a
Prelude.Nothing,
$sel:allocationMaxNetmaskLength:IpamPool' :: Maybe Natural
allocationMaxNetmaskLength = forall a. Maybe a
Prelude.Nothing,
$sel:allocationMinNetmaskLength:IpamPool' :: Maybe Natural
allocationMinNetmaskLength = forall a. Maybe a
Prelude.Nothing,
$sel:allocationResourceTags:IpamPool' :: Maybe [IpamResourceTag]
allocationResourceTags = forall a. Maybe a
Prelude.Nothing,
$sel:autoImport:IpamPool' :: Maybe Bool
autoImport = forall a. Maybe a
Prelude.Nothing,
$sel:awsService:IpamPool' :: Maybe IpamPoolAwsService
awsService = forall a. Maybe a
Prelude.Nothing,
$sel:description:IpamPool' :: Maybe Text
description = forall a. Maybe a
Prelude.Nothing,
$sel:ipamArn:IpamPool' :: Maybe Text
ipamArn = forall a. Maybe a
Prelude.Nothing,
$sel:ipamPoolArn:IpamPool' :: Maybe Text
ipamPoolArn = forall a. Maybe a
Prelude.Nothing,
$sel:ipamPoolId:IpamPool' :: Maybe Text
ipamPoolId = forall a. Maybe a
Prelude.Nothing,
$sel:ipamRegion:IpamPool' :: Maybe Text
ipamRegion = forall a. Maybe a
Prelude.Nothing,
$sel:ipamScopeArn:IpamPool' :: Maybe Text
ipamScopeArn = forall a. Maybe a
Prelude.Nothing,
$sel:ipamScopeType:IpamPool' :: Maybe IpamScopeType
ipamScopeType = forall a. Maybe a
Prelude.Nothing,
$sel:locale:IpamPool' :: Maybe Text
locale = forall a. Maybe a
Prelude.Nothing,
$sel:ownerId:IpamPool' :: Maybe Text
ownerId = forall a. Maybe a
Prelude.Nothing,
$sel:poolDepth:IpamPool' :: Maybe Int
poolDepth = forall a. Maybe a
Prelude.Nothing,
$sel:publiclyAdvertisable:IpamPool' :: Maybe Bool
publiclyAdvertisable = forall a. Maybe a
Prelude.Nothing,
$sel:sourceIpamPoolId:IpamPool' :: Maybe Text
sourceIpamPoolId = forall a. Maybe a
Prelude.Nothing,
$sel:state:IpamPool' :: Maybe IpamPoolState
state = forall a. Maybe a
Prelude.Nothing,
$sel:stateMessage:IpamPool' :: Maybe Text
stateMessage = forall a. Maybe a
Prelude.Nothing,
$sel:tags:IpamPool' :: Maybe [Tag]
tags = forall a. Maybe a
Prelude.Nothing
}
ipamPool_addressFamily :: Lens.Lens' IpamPool (Prelude.Maybe AddressFamily)
ipamPool_addressFamily :: Lens' IpamPool (Maybe AddressFamily)
ipamPool_addressFamily = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe AddressFamily
addressFamily :: Maybe AddressFamily
$sel:addressFamily:IpamPool' :: IpamPool -> Maybe AddressFamily
addressFamily} -> Maybe AddressFamily
addressFamily) (\s :: IpamPool
s@IpamPool' {} Maybe AddressFamily
a -> IpamPool
s {$sel:addressFamily:IpamPool' :: Maybe AddressFamily
addressFamily = Maybe AddressFamily
a} :: IpamPool)
ipamPool_allocationDefaultNetmaskLength :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Natural)
ipamPool_allocationDefaultNetmaskLength :: Lens' IpamPool (Maybe Natural)
ipamPool_allocationDefaultNetmaskLength = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Natural
allocationDefaultNetmaskLength :: Maybe Natural
$sel:allocationDefaultNetmaskLength:IpamPool' :: IpamPool -> Maybe Natural
allocationDefaultNetmaskLength} -> Maybe Natural
allocationDefaultNetmaskLength) (\s :: IpamPool
s@IpamPool' {} Maybe Natural
a -> IpamPool
s {$sel:allocationDefaultNetmaskLength:IpamPool' :: Maybe Natural
allocationDefaultNetmaskLength = Maybe Natural
a} :: IpamPool)
ipamPool_allocationMaxNetmaskLength :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Natural)
ipamPool_allocationMaxNetmaskLength :: Lens' IpamPool (Maybe Natural)
ipamPool_allocationMaxNetmaskLength = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Natural
allocationMaxNetmaskLength :: Maybe Natural
$sel:allocationMaxNetmaskLength:IpamPool' :: IpamPool -> Maybe Natural
allocationMaxNetmaskLength} -> Maybe Natural
allocationMaxNetmaskLength) (\s :: IpamPool
s@IpamPool' {} Maybe Natural
a -> IpamPool
s {$sel:allocationMaxNetmaskLength:IpamPool' :: Maybe Natural
allocationMaxNetmaskLength = Maybe Natural
a} :: IpamPool)
ipamPool_allocationMinNetmaskLength :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Natural)
ipamPool_allocationMinNetmaskLength :: Lens' IpamPool (Maybe Natural)
ipamPool_allocationMinNetmaskLength = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Natural
allocationMinNetmaskLength :: Maybe Natural
$sel:allocationMinNetmaskLength:IpamPool' :: IpamPool -> Maybe Natural
allocationMinNetmaskLength} -> Maybe Natural
allocationMinNetmaskLength) (\s :: IpamPool
s@IpamPool' {} Maybe Natural
a -> IpamPool
s {$sel:allocationMinNetmaskLength:IpamPool' :: Maybe Natural
allocationMinNetmaskLength = Maybe Natural
a} :: IpamPool)
ipamPool_allocationResourceTags :: Lens.Lens' IpamPool (Prelude.Maybe [IpamResourceTag])
ipamPool_allocationResourceTags :: Lens' IpamPool (Maybe [IpamResourceTag])
ipamPool_allocationResourceTags = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe [IpamResourceTag]
allocationResourceTags :: Maybe [IpamResourceTag]
$sel:allocationResourceTags:IpamPool' :: IpamPool -> Maybe [IpamResourceTag]
allocationResourceTags} -> Maybe [IpamResourceTag]
allocationResourceTags) (\s :: IpamPool
s@IpamPool' {} Maybe [IpamResourceTag]
a -> IpamPool
s {$sel:allocationResourceTags:IpamPool' :: Maybe [IpamResourceTag]
allocationResourceTags = Maybe [IpamResourceTag]
a} :: IpamPool) 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
ipamPool_autoImport :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Bool)
ipamPool_autoImport :: Lens' IpamPool (Maybe Bool)
ipamPool_autoImport = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Bool
autoImport :: Maybe Bool
$sel:autoImport:IpamPool' :: IpamPool -> Maybe Bool
autoImport} -> Maybe Bool
autoImport) (\s :: IpamPool
s@IpamPool' {} Maybe Bool
a -> IpamPool
s {$sel:autoImport:IpamPool' :: Maybe Bool
autoImport = Maybe Bool
a} :: IpamPool)
ipamPool_awsService :: Lens.Lens' IpamPool (Prelude.Maybe IpamPoolAwsService)
ipamPool_awsService :: Lens' IpamPool (Maybe IpamPoolAwsService)
ipamPool_awsService = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe IpamPoolAwsService
awsService :: Maybe IpamPoolAwsService
$sel:awsService:IpamPool' :: IpamPool -> Maybe IpamPoolAwsService
awsService} -> Maybe IpamPoolAwsService
awsService) (\s :: IpamPool
s@IpamPool' {} Maybe IpamPoolAwsService
a -> IpamPool
s {$sel:awsService:IpamPool' :: Maybe IpamPoolAwsService
awsService = Maybe IpamPoolAwsService
a} :: IpamPool)
ipamPool_description :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Text)
ipamPool_description :: Lens' IpamPool (Maybe Text)
ipamPool_description = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Text
description :: Maybe Text
$sel:description:IpamPool' :: IpamPool -> Maybe Text
description} -> Maybe Text
description) (\s :: IpamPool
s@IpamPool' {} Maybe Text
a -> IpamPool
s {$sel:description:IpamPool' :: Maybe Text
description = Maybe Text
a} :: IpamPool)
ipamPool_ipamArn :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Text)
ipamPool_ipamArn :: Lens' IpamPool (Maybe Text)
ipamPool_ipamArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Text
ipamArn :: Maybe Text
$sel:ipamArn:IpamPool' :: IpamPool -> Maybe Text
ipamArn} -> Maybe Text
ipamArn) (\s :: IpamPool
s@IpamPool' {} Maybe Text
a -> IpamPool
s {$sel:ipamArn:IpamPool' :: Maybe Text
ipamArn = Maybe Text
a} :: IpamPool)
ipamPool_ipamPoolArn :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Text)
ipamPool_ipamPoolArn :: Lens' IpamPool (Maybe Text)
ipamPool_ipamPoolArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Text
ipamPoolArn :: Maybe Text
$sel:ipamPoolArn:IpamPool' :: IpamPool -> Maybe Text
ipamPoolArn} -> Maybe Text
ipamPoolArn) (\s :: IpamPool
s@IpamPool' {} Maybe Text
a -> IpamPool
s {$sel:ipamPoolArn:IpamPool' :: Maybe Text
ipamPoolArn = Maybe Text
a} :: IpamPool)
ipamPool_ipamPoolId :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Text)
ipamPool_ipamPoolId :: Lens' IpamPool (Maybe Text)
ipamPool_ipamPoolId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Text
ipamPoolId :: Maybe Text
$sel:ipamPoolId:IpamPool' :: IpamPool -> Maybe Text
ipamPoolId} -> Maybe Text
ipamPoolId) (\s :: IpamPool
s@IpamPool' {} Maybe Text
a -> IpamPool
s {$sel:ipamPoolId:IpamPool' :: Maybe Text
ipamPoolId = Maybe Text
a} :: IpamPool)
ipamPool_ipamRegion :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Text)
ipamPool_ipamRegion :: Lens' IpamPool (Maybe Text)
ipamPool_ipamRegion = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Text
ipamRegion :: Maybe Text
$sel:ipamRegion:IpamPool' :: IpamPool -> Maybe Text
ipamRegion} -> Maybe Text
ipamRegion) (\s :: IpamPool
s@IpamPool' {} Maybe Text
a -> IpamPool
s {$sel:ipamRegion:IpamPool' :: Maybe Text
ipamRegion = Maybe Text
a} :: IpamPool)
ipamPool_ipamScopeArn :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Text)
ipamPool_ipamScopeArn :: Lens' IpamPool (Maybe Text)
ipamPool_ipamScopeArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Text
ipamScopeArn :: Maybe Text
$sel:ipamScopeArn:IpamPool' :: IpamPool -> Maybe Text
ipamScopeArn} -> Maybe Text
ipamScopeArn) (\s :: IpamPool
s@IpamPool' {} Maybe Text
a -> IpamPool
s {$sel:ipamScopeArn:IpamPool' :: Maybe Text
ipamScopeArn = Maybe Text
a} :: IpamPool)
ipamPool_ipamScopeType :: Lens.Lens' IpamPool (Prelude.Maybe IpamScopeType)
ipamPool_ipamScopeType :: Lens' IpamPool (Maybe IpamScopeType)
ipamPool_ipamScopeType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe IpamScopeType
ipamScopeType :: Maybe IpamScopeType
$sel:ipamScopeType:IpamPool' :: IpamPool -> Maybe IpamScopeType
ipamScopeType} -> Maybe IpamScopeType
ipamScopeType) (\s :: IpamPool
s@IpamPool' {} Maybe IpamScopeType
a -> IpamPool
s {$sel:ipamScopeType:IpamPool' :: Maybe IpamScopeType
ipamScopeType = Maybe IpamScopeType
a} :: IpamPool)
ipamPool_locale :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Text)
ipamPool_locale :: Lens' IpamPool (Maybe Text)
ipamPool_locale = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Text
locale :: Maybe Text
$sel:locale:IpamPool' :: IpamPool -> Maybe Text
locale} -> Maybe Text
locale) (\s :: IpamPool
s@IpamPool' {} Maybe Text
a -> IpamPool
s {$sel:locale:IpamPool' :: Maybe Text
locale = Maybe Text
a} :: IpamPool)
ipamPool_ownerId :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Text)
ipamPool_ownerId :: Lens' IpamPool (Maybe Text)
ipamPool_ownerId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Text
ownerId :: Maybe Text
$sel:ownerId:IpamPool' :: IpamPool -> Maybe Text
ownerId} -> Maybe Text
ownerId) (\s :: IpamPool
s@IpamPool' {} Maybe Text
a -> IpamPool
s {$sel:ownerId:IpamPool' :: Maybe Text
ownerId = Maybe Text
a} :: IpamPool)
ipamPool_poolDepth :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Int)
ipamPool_poolDepth :: Lens' IpamPool (Maybe Int)
ipamPool_poolDepth = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Int
poolDepth :: Maybe Int
$sel:poolDepth:IpamPool' :: IpamPool -> Maybe Int
poolDepth} -> Maybe Int
poolDepth) (\s :: IpamPool
s@IpamPool' {} Maybe Int
a -> IpamPool
s {$sel:poolDepth:IpamPool' :: Maybe Int
poolDepth = Maybe Int
a} :: IpamPool)
ipamPool_publiclyAdvertisable :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Bool)
ipamPool_publiclyAdvertisable :: Lens' IpamPool (Maybe Bool)
ipamPool_publiclyAdvertisable = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Bool
publiclyAdvertisable :: Maybe Bool
$sel:publiclyAdvertisable:IpamPool' :: IpamPool -> Maybe Bool
publiclyAdvertisable} -> Maybe Bool
publiclyAdvertisable) (\s :: IpamPool
s@IpamPool' {} Maybe Bool
a -> IpamPool
s {$sel:publiclyAdvertisable:IpamPool' :: Maybe Bool
publiclyAdvertisable = Maybe Bool
a} :: IpamPool)
ipamPool_sourceIpamPoolId :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Text)
ipamPool_sourceIpamPoolId :: Lens' IpamPool (Maybe Text)
ipamPool_sourceIpamPoolId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Text
sourceIpamPoolId :: Maybe Text
$sel:sourceIpamPoolId:IpamPool' :: IpamPool -> Maybe Text
sourceIpamPoolId} -> Maybe Text
sourceIpamPoolId) (\s :: IpamPool
s@IpamPool' {} Maybe Text
a -> IpamPool
s {$sel:sourceIpamPoolId:IpamPool' :: Maybe Text
sourceIpamPoolId = Maybe Text
a} :: IpamPool)
ipamPool_state :: Lens.Lens' IpamPool (Prelude.Maybe IpamPoolState)
ipamPool_state :: Lens' IpamPool (Maybe IpamPoolState)
ipamPool_state = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe IpamPoolState
state :: Maybe IpamPoolState
$sel:state:IpamPool' :: IpamPool -> Maybe IpamPoolState
state} -> Maybe IpamPoolState
state) (\s :: IpamPool
s@IpamPool' {} Maybe IpamPoolState
a -> IpamPool
s {$sel:state:IpamPool' :: Maybe IpamPoolState
state = Maybe IpamPoolState
a} :: IpamPool)
ipamPool_stateMessage :: Lens.Lens' IpamPool (Prelude.Maybe Prelude.Text)
ipamPool_stateMessage :: Lens' IpamPool (Maybe Text)
ipamPool_stateMessage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe Text
stateMessage :: Maybe Text
$sel:stateMessage:IpamPool' :: IpamPool -> Maybe Text
stateMessage} -> Maybe Text
stateMessage) (\s :: IpamPool
s@IpamPool' {} Maybe Text
a -> IpamPool
s {$sel:stateMessage:IpamPool' :: Maybe Text
stateMessage = Maybe Text
a} :: IpamPool)
ipamPool_tags :: Lens.Lens' IpamPool (Prelude.Maybe [Tag])
ipamPool_tags :: Lens' IpamPool (Maybe [Tag])
ipamPool_tags = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\IpamPool' {Maybe [Tag]
tags :: Maybe [Tag]
$sel:tags:IpamPool' :: IpamPool -> Maybe [Tag]
tags} -> Maybe [Tag]
tags) (\s :: IpamPool
s@IpamPool' {} Maybe [Tag]
a -> IpamPool
s {$sel:tags:IpamPool' :: Maybe [Tag]
tags = Maybe [Tag]
a} :: IpamPool) 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 Data.FromXML IpamPool where
parseXML :: [Node] -> Either String IpamPool
parseXML [Node]
x =
Maybe AddressFamily
-> Maybe Natural
-> Maybe Natural
-> Maybe Natural
-> Maybe [IpamResourceTag]
-> Maybe Bool
-> Maybe IpamPoolAwsService
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe IpamScopeType
-> Maybe Text
-> Maybe Text
-> Maybe Int
-> Maybe Bool
-> Maybe Text
-> Maybe IpamPoolState
-> Maybe Text
-> Maybe [Tag]
-> IpamPool
IpamPool'
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
"addressFamily")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"allocationDefaultNetmaskLength")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"allocationMaxNetmaskLength")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"allocationMinNetmaskLength")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"allocationResourceTagSet"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"item")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"autoImport")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"awsService")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"description")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ipamArn")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ipamPoolArn")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ipamPoolId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ipamRegion")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ipamScopeArn")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ipamScopeType")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"locale")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ownerId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"poolDepth")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"publiclyAdvertisable")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"sourceIpamPoolId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"state")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"stateMessage")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"tagSet"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"item")
)
instance Prelude.Hashable IpamPool where
hashWithSalt :: Int -> IpamPool -> Int
hashWithSalt Int
_salt IpamPool' {Maybe Bool
Maybe Int
Maybe Natural
Maybe [IpamResourceTag]
Maybe [Tag]
Maybe Text
Maybe AddressFamily
Maybe IpamPoolAwsService
Maybe IpamPoolState
Maybe IpamScopeType
tags :: Maybe [Tag]
stateMessage :: Maybe Text
state :: Maybe IpamPoolState
sourceIpamPoolId :: Maybe Text
publiclyAdvertisable :: Maybe Bool
poolDepth :: Maybe Int
ownerId :: Maybe Text
locale :: Maybe Text
ipamScopeType :: Maybe IpamScopeType
ipamScopeArn :: Maybe Text
ipamRegion :: Maybe Text
ipamPoolId :: Maybe Text
ipamPoolArn :: Maybe Text
ipamArn :: Maybe Text
description :: Maybe Text
awsService :: Maybe IpamPoolAwsService
autoImport :: Maybe Bool
allocationResourceTags :: Maybe [IpamResourceTag]
allocationMinNetmaskLength :: Maybe Natural
allocationMaxNetmaskLength :: Maybe Natural
allocationDefaultNetmaskLength :: Maybe Natural
addressFamily :: Maybe AddressFamily
$sel:tags:IpamPool' :: IpamPool -> Maybe [Tag]
$sel:stateMessage:IpamPool' :: IpamPool -> Maybe Text
$sel:state:IpamPool' :: IpamPool -> Maybe IpamPoolState
$sel:sourceIpamPoolId:IpamPool' :: IpamPool -> Maybe Text
$sel:publiclyAdvertisable:IpamPool' :: IpamPool -> Maybe Bool
$sel:poolDepth:IpamPool' :: IpamPool -> Maybe Int
$sel:ownerId:IpamPool' :: IpamPool -> Maybe Text
$sel:locale:IpamPool' :: IpamPool -> Maybe Text
$sel:ipamScopeType:IpamPool' :: IpamPool -> Maybe IpamScopeType
$sel:ipamScopeArn:IpamPool' :: IpamPool -> Maybe Text
$sel:ipamRegion:IpamPool' :: IpamPool -> Maybe Text
$sel:ipamPoolId:IpamPool' :: IpamPool -> Maybe Text
$sel:ipamPoolArn:IpamPool' :: IpamPool -> Maybe Text
$sel:ipamArn:IpamPool' :: IpamPool -> Maybe Text
$sel:description:IpamPool' :: IpamPool -> Maybe Text
$sel:awsService:IpamPool' :: IpamPool -> Maybe IpamPoolAwsService
$sel:autoImport:IpamPool' :: IpamPool -> Maybe Bool
$sel:allocationResourceTags:IpamPool' :: IpamPool -> Maybe [IpamResourceTag]
$sel:allocationMinNetmaskLength:IpamPool' :: IpamPool -> Maybe Natural
$sel:allocationMaxNetmaskLength:IpamPool' :: IpamPool -> Maybe Natural
$sel:allocationDefaultNetmaskLength:IpamPool' :: IpamPool -> Maybe Natural
$sel:addressFamily:IpamPool' :: IpamPool -> Maybe AddressFamily
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe AddressFamily
addressFamily
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
allocationDefaultNetmaskLength
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
allocationMaxNetmaskLength
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
allocationMinNetmaskLength
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [IpamResourceTag]
allocationResourceTags
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
autoImport
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe IpamPoolAwsService
awsService
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
description
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ipamArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ipamPoolArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ipamPoolId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ipamRegion
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ipamScopeArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe IpamScopeType
ipamScopeType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
locale
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ownerId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
poolDepth
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
publiclyAdvertisable
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
sourceIpamPoolId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe IpamPoolState
state
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
stateMessage
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Tag]
tags
instance Prelude.NFData IpamPool where
rnf :: IpamPool -> ()
rnf IpamPool' {Maybe Bool
Maybe Int
Maybe Natural
Maybe [IpamResourceTag]
Maybe [Tag]
Maybe Text
Maybe AddressFamily
Maybe IpamPoolAwsService
Maybe IpamPoolState
Maybe IpamScopeType
tags :: Maybe [Tag]
stateMessage :: Maybe Text
state :: Maybe IpamPoolState
sourceIpamPoolId :: Maybe Text
publiclyAdvertisable :: Maybe Bool
poolDepth :: Maybe Int
ownerId :: Maybe Text
locale :: Maybe Text
ipamScopeType :: Maybe IpamScopeType
ipamScopeArn :: Maybe Text
ipamRegion :: Maybe Text
ipamPoolId :: Maybe Text
ipamPoolArn :: Maybe Text
ipamArn :: Maybe Text
description :: Maybe Text
awsService :: Maybe IpamPoolAwsService
autoImport :: Maybe Bool
allocationResourceTags :: Maybe [IpamResourceTag]
allocationMinNetmaskLength :: Maybe Natural
allocationMaxNetmaskLength :: Maybe Natural
allocationDefaultNetmaskLength :: Maybe Natural
addressFamily :: Maybe AddressFamily
$sel:tags:IpamPool' :: IpamPool -> Maybe [Tag]
$sel:stateMessage:IpamPool' :: IpamPool -> Maybe Text
$sel:state:IpamPool' :: IpamPool -> Maybe IpamPoolState
$sel:sourceIpamPoolId:IpamPool' :: IpamPool -> Maybe Text
$sel:publiclyAdvertisable:IpamPool' :: IpamPool -> Maybe Bool
$sel:poolDepth:IpamPool' :: IpamPool -> Maybe Int
$sel:ownerId:IpamPool' :: IpamPool -> Maybe Text
$sel:locale:IpamPool' :: IpamPool -> Maybe Text
$sel:ipamScopeType:IpamPool' :: IpamPool -> Maybe IpamScopeType
$sel:ipamScopeArn:IpamPool' :: IpamPool -> Maybe Text
$sel:ipamRegion:IpamPool' :: IpamPool -> Maybe Text
$sel:ipamPoolId:IpamPool' :: IpamPool -> Maybe Text
$sel:ipamPoolArn:IpamPool' :: IpamPool -> Maybe Text
$sel:ipamArn:IpamPool' :: IpamPool -> Maybe Text
$sel:description:IpamPool' :: IpamPool -> Maybe Text
$sel:awsService:IpamPool' :: IpamPool -> Maybe IpamPoolAwsService
$sel:autoImport:IpamPool' :: IpamPool -> Maybe Bool
$sel:allocationResourceTags:IpamPool' :: IpamPool -> Maybe [IpamResourceTag]
$sel:allocationMinNetmaskLength:IpamPool' :: IpamPool -> Maybe Natural
$sel:allocationMaxNetmaskLength:IpamPool' :: IpamPool -> Maybe Natural
$sel:allocationDefaultNetmaskLength:IpamPool' :: IpamPool -> Maybe Natural
$sel:addressFamily:IpamPool' :: IpamPool -> Maybe AddressFamily
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe AddressFamily
addressFamily
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
allocationDefaultNetmaskLength
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
allocationMaxNetmaskLength
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
allocationMinNetmaskLength
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [IpamResourceTag]
allocationResourceTags
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
autoImport
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe IpamPoolAwsService
awsService
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
description
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ipamArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ipamPoolArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ipamPoolId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ipamRegion
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ipamScopeArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe IpamScopeType
ipamScopeType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
locale
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ownerId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
poolDepth
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
publiclyAdvertisable
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
sourceIpamPoolId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe IpamPoolState
state
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
stateMessage
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Tag]
tags