{-# 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.ManagedPrefixList 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.PrefixListState
import Amazonka.EC2.Types.Tag
import qualified Amazonka.Prelude as Prelude
data ManagedPrefixList = ManagedPrefixList'
{
ManagedPrefixList -> Maybe Text
addressFamily :: Prelude.Maybe Prelude.Text,
ManagedPrefixList -> Maybe Int
maxEntries :: Prelude.Maybe Prelude.Int,
ManagedPrefixList -> Maybe Text
ownerId :: Prelude.Maybe Prelude.Text,
ManagedPrefixList -> Maybe Text
prefixListArn :: Prelude.Maybe Prelude.Text,
ManagedPrefixList -> Maybe Text
prefixListId :: Prelude.Maybe Prelude.Text,
ManagedPrefixList -> Maybe Text
prefixListName :: Prelude.Maybe Prelude.Text,
ManagedPrefixList -> Maybe PrefixListState
state :: Prelude.Maybe PrefixListState,
ManagedPrefixList -> Maybe Text
stateMessage :: Prelude.Maybe Prelude.Text,
ManagedPrefixList -> Maybe [Tag]
tags :: Prelude.Maybe [Tag],
ManagedPrefixList -> Maybe Integer
version :: Prelude.Maybe Prelude.Integer
}
deriving (ManagedPrefixList -> ManagedPrefixList -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ManagedPrefixList -> ManagedPrefixList -> Bool
$c/= :: ManagedPrefixList -> ManagedPrefixList -> Bool
== :: ManagedPrefixList -> ManagedPrefixList -> Bool
$c== :: ManagedPrefixList -> ManagedPrefixList -> Bool
Prelude.Eq, ReadPrec [ManagedPrefixList]
ReadPrec ManagedPrefixList
Int -> ReadS ManagedPrefixList
ReadS [ManagedPrefixList]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ManagedPrefixList]
$creadListPrec :: ReadPrec [ManagedPrefixList]
readPrec :: ReadPrec ManagedPrefixList
$creadPrec :: ReadPrec ManagedPrefixList
readList :: ReadS [ManagedPrefixList]
$creadList :: ReadS [ManagedPrefixList]
readsPrec :: Int -> ReadS ManagedPrefixList
$creadsPrec :: Int -> ReadS ManagedPrefixList
Prelude.Read, Int -> ManagedPrefixList -> ShowS
[ManagedPrefixList] -> ShowS
ManagedPrefixList -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ManagedPrefixList] -> ShowS
$cshowList :: [ManagedPrefixList] -> ShowS
show :: ManagedPrefixList -> String
$cshow :: ManagedPrefixList -> String
showsPrec :: Int -> ManagedPrefixList -> ShowS
$cshowsPrec :: Int -> ManagedPrefixList -> ShowS
Prelude.Show, forall x. Rep ManagedPrefixList x -> ManagedPrefixList
forall x. ManagedPrefixList -> Rep ManagedPrefixList x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ManagedPrefixList x -> ManagedPrefixList
$cfrom :: forall x. ManagedPrefixList -> Rep ManagedPrefixList x
Prelude.Generic)
newManagedPrefixList ::
ManagedPrefixList
newManagedPrefixList :: ManagedPrefixList
newManagedPrefixList =
ManagedPrefixList'
{ $sel:addressFamily:ManagedPrefixList' :: Maybe Text
addressFamily = forall a. Maybe a
Prelude.Nothing,
$sel:maxEntries:ManagedPrefixList' :: Maybe Int
maxEntries = forall a. Maybe a
Prelude.Nothing,
$sel:ownerId:ManagedPrefixList' :: Maybe Text
ownerId = forall a. Maybe a
Prelude.Nothing,
$sel:prefixListArn:ManagedPrefixList' :: Maybe Text
prefixListArn = forall a. Maybe a
Prelude.Nothing,
$sel:prefixListId:ManagedPrefixList' :: Maybe Text
prefixListId = forall a. Maybe a
Prelude.Nothing,
$sel:prefixListName:ManagedPrefixList' :: Maybe Text
prefixListName = forall a. Maybe a
Prelude.Nothing,
$sel:state:ManagedPrefixList' :: Maybe PrefixListState
state = forall a. Maybe a
Prelude.Nothing,
$sel:stateMessage:ManagedPrefixList' :: Maybe Text
stateMessage = forall a. Maybe a
Prelude.Nothing,
$sel:tags:ManagedPrefixList' :: Maybe [Tag]
tags = forall a. Maybe a
Prelude.Nothing,
$sel:version:ManagedPrefixList' :: Maybe Integer
version = forall a. Maybe a
Prelude.Nothing
}
managedPrefixList_addressFamily :: Lens.Lens' ManagedPrefixList (Prelude.Maybe Prelude.Text)
managedPrefixList_addressFamily :: Lens' ManagedPrefixList (Maybe Text)
managedPrefixList_addressFamily = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ManagedPrefixList' {Maybe Text
addressFamily :: Maybe Text
$sel:addressFamily:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
addressFamily} -> Maybe Text
addressFamily) (\s :: ManagedPrefixList
s@ManagedPrefixList' {} Maybe Text
a -> ManagedPrefixList
s {$sel:addressFamily:ManagedPrefixList' :: Maybe Text
addressFamily = Maybe Text
a} :: ManagedPrefixList)
managedPrefixList_maxEntries :: Lens.Lens' ManagedPrefixList (Prelude.Maybe Prelude.Int)
managedPrefixList_maxEntries :: Lens' ManagedPrefixList (Maybe Int)
managedPrefixList_maxEntries = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ManagedPrefixList' {Maybe Int
maxEntries :: Maybe Int
$sel:maxEntries:ManagedPrefixList' :: ManagedPrefixList -> Maybe Int
maxEntries} -> Maybe Int
maxEntries) (\s :: ManagedPrefixList
s@ManagedPrefixList' {} Maybe Int
a -> ManagedPrefixList
s {$sel:maxEntries:ManagedPrefixList' :: Maybe Int
maxEntries = Maybe Int
a} :: ManagedPrefixList)
managedPrefixList_ownerId :: Lens.Lens' ManagedPrefixList (Prelude.Maybe Prelude.Text)
managedPrefixList_ownerId :: Lens' ManagedPrefixList (Maybe Text)
managedPrefixList_ownerId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ManagedPrefixList' {Maybe Text
ownerId :: Maybe Text
$sel:ownerId:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
ownerId} -> Maybe Text
ownerId) (\s :: ManagedPrefixList
s@ManagedPrefixList' {} Maybe Text
a -> ManagedPrefixList
s {$sel:ownerId:ManagedPrefixList' :: Maybe Text
ownerId = Maybe Text
a} :: ManagedPrefixList)
managedPrefixList_prefixListArn :: Lens.Lens' ManagedPrefixList (Prelude.Maybe Prelude.Text)
managedPrefixList_prefixListArn :: Lens' ManagedPrefixList (Maybe Text)
managedPrefixList_prefixListArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ManagedPrefixList' {Maybe Text
prefixListArn :: Maybe Text
$sel:prefixListArn:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
prefixListArn} -> Maybe Text
prefixListArn) (\s :: ManagedPrefixList
s@ManagedPrefixList' {} Maybe Text
a -> ManagedPrefixList
s {$sel:prefixListArn:ManagedPrefixList' :: Maybe Text
prefixListArn = Maybe Text
a} :: ManagedPrefixList)
managedPrefixList_prefixListId :: Lens.Lens' ManagedPrefixList (Prelude.Maybe Prelude.Text)
managedPrefixList_prefixListId :: Lens' ManagedPrefixList (Maybe Text)
managedPrefixList_prefixListId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ManagedPrefixList' {Maybe Text
prefixListId :: Maybe Text
$sel:prefixListId:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
prefixListId} -> Maybe Text
prefixListId) (\s :: ManagedPrefixList
s@ManagedPrefixList' {} Maybe Text
a -> ManagedPrefixList
s {$sel:prefixListId:ManagedPrefixList' :: Maybe Text
prefixListId = Maybe Text
a} :: ManagedPrefixList)
managedPrefixList_prefixListName :: Lens.Lens' ManagedPrefixList (Prelude.Maybe Prelude.Text)
managedPrefixList_prefixListName :: Lens' ManagedPrefixList (Maybe Text)
managedPrefixList_prefixListName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ManagedPrefixList' {Maybe Text
prefixListName :: Maybe Text
$sel:prefixListName:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
prefixListName} -> Maybe Text
prefixListName) (\s :: ManagedPrefixList
s@ManagedPrefixList' {} Maybe Text
a -> ManagedPrefixList
s {$sel:prefixListName:ManagedPrefixList' :: Maybe Text
prefixListName = Maybe Text
a} :: ManagedPrefixList)
managedPrefixList_state :: Lens.Lens' ManagedPrefixList (Prelude.Maybe PrefixListState)
managedPrefixList_state :: Lens' ManagedPrefixList (Maybe PrefixListState)
managedPrefixList_state = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ManagedPrefixList' {Maybe PrefixListState
state :: Maybe PrefixListState
$sel:state:ManagedPrefixList' :: ManagedPrefixList -> Maybe PrefixListState
state} -> Maybe PrefixListState
state) (\s :: ManagedPrefixList
s@ManagedPrefixList' {} Maybe PrefixListState
a -> ManagedPrefixList
s {$sel:state:ManagedPrefixList' :: Maybe PrefixListState
state = Maybe PrefixListState
a} :: ManagedPrefixList)
managedPrefixList_stateMessage :: Lens.Lens' ManagedPrefixList (Prelude.Maybe Prelude.Text)
managedPrefixList_stateMessage :: Lens' ManagedPrefixList (Maybe Text)
managedPrefixList_stateMessage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ManagedPrefixList' {Maybe Text
stateMessage :: Maybe Text
$sel:stateMessage:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
stateMessage} -> Maybe Text
stateMessage) (\s :: ManagedPrefixList
s@ManagedPrefixList' {} Maybe Text
a -> ManagedPrefixList
s {$sel:stateMessage:ManagedPrefixList' :: Maybe Text
stateMessage = Maybe Text
a} :: ManagedPrefixList)
managedPrefixList_tags :: Lens.Lens' ManagedPrefixList (Prelude.Maybe [Tag])
managedPrefixList_tags :: Lens' ManagedPrefixList (Maybe [Tag])
managedPrefixList_tags = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ManagedPrefixList' {Maybe [Tag]
tags :: Maybe [Tag]
$sel:tags:ManagedPrefixList' :: ManagedPrefixList -> Maybe [Tag]
tags} -> Maybe [Tag]
tags) (\s :: ManagedPrefixList
s@ManagedPrefixList' {} Maybe [Tag]
a -> ManagedPrefixList
s {$sel:tags:ManagedPrefixList' :: Maybe [Tag]
tags = Maybe [Tag]
a} :: ManagedPrefixList) 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
managedPrefixList_version :: Lens.Lens' ManagedPrefixList (Prelude.Maybe Prelude.Integer)
managedPrefixList_version :: Lens' ManagedPrefixList (Maybe Integer)
managedPrefixList_version = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ManagedPrefixList' {Maybe Integer
version :: Maybe Integer
$sel:version:ManagedPrefixList' :: ManagedPrefixList -> Maybe Integer
version} -> Maybe Integer
version) (\s :: ManagedPrefixList
s@ManagedPrefixList' {} Maybe Integer
a -> ManagedPrefixList
s {$sel:version:ManagedPrefixList' :: Maybe Integer
version = Maybe Integer
a} :: ManagedPrefixList)
instance Data.FromXML ManagedPrefixList where
parseXML :: [Node] -> Either String ManagedPrefixList
parseXML [Node]
x =
Maybe Text
-> Maybe Int
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe PrefixListState
-> Maybe Text
-> Maybe [Tag]
-> Maybe Integer
-> ManagedPrefixList
ManagedPrefixList'
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
"maxEntries")
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
"prefixListArn")
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
"prefixListId")
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
"prefixListName")
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")
)
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
"version")
instance Prelude.Hashable ManagedPrefixList where
hashWithSalt :: Int -> ManagedPrefixList -> Int
hashWithSalt Int
_salt ManagedPrefixList' {Maybe Int
Maybe Integer
Maybe [Tag]
Maybe Text
Maybe PrefixListState
version :: Maybe Integer
tags :: Maybe [Tag]
stateMessage :: Maybe Text
state :: Maybe PrefixListState
prefixListName :: Maybe Text
prefixListId :: Maybe Text
prefixListArn :: Maybe Text
ownerId :: Maybe Text
maxEntries :: Maybe Int
addressFamily :: Maybe Text
$sel:version:ManagedPrefixList' :: ManagedPrefixList -> Maybe Integer
$sel:tags:ManagedPrefixList' :: ManagedPrefixList -> Maybe [Tag]
$sel:stateMessage:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
$sel:state:ManagedPrefixList' :: ManagedPrefixList -> Maybe PrefixListState
$sel:prefixListName:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
$sel:prefixListId:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
$sel:prefixListArn:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
$sel:ownerId:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
$sel:maxEntries:ManagedPrefixList' :: ManagedPrefixList -> Maybe Int
$sel:addressFamily:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
addressFamily
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
maxEntries
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ownerId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
prefixListArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
prefixListId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
prefixListName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe PrefixListState
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
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Integer
version
instance Prelude.NFData ManagedPrefixList where
rnf :: ManagedPrefixList -> ()
rnf ManagedPrefixList' {Maybe Int
Maybe Integer
Maybe [Tag]
Maybe Text
Maybe PrefixListState
version :: Maybe Integer
tags :: Maybe [Tag]
stateMessage :: Maybe Text
state :: Maybe PrefixListState
prefixListName :: Maybe Text
prefixListId :: Maybe Text
prefixListArn :: Maybe Text
ownerId :: Maybe Text
maxEntries :: Maybe Int
addressFamily :: Maybe Text
$sel:version:ManagedPrefixList' :: ManagedPrefixList -> Maybe Integer
$sel:tags:ManagedPrefixList' :: ManagedPrefixList -> Maybe [Tag]
$sel:stateMessage:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
$sel:state:ManagedPrefixList' :: ManagedPrefixList -> Maybe PrefixListState
$sel:prefixListName:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
$sel:prefixListId:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
$sel:prefixListArn:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
$sel:ownerId:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
$sel:maxEntries:ManagedPrefixList' :: ManagedPrefixList -> Maybe Int
$sel:addressFamily:ManagedPrefixList' :: ManagedPrefixList -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
addressFamily
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
maxEntries
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 Text
prefixListArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
prefixListId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
prefixListName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe PrefixListState
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
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Integer
version