{-# 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.ServiceCatalog.Types.ProvisionedProductPlanSummary where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import Amazonka.ServiceCatalog.Types.ProvisionedProductPlanType
data ProvisionedProductPlanSummary = ProvisionedProductPlanSummary'
{
ProvisionedProductPlanSummary -> Maybe Text
planId :: Prelude.Maybe Prelude.Text,
ProvisionedProductPlanSummary -> Maybe Text
planName :: Prelude.Maybe Prelude.Text,
ProvisionedProductPlanSummary -> Maybe ProvisionedProductPlanType
planType :: Prelude.Maybe ProvisionedProductPlanType,
ProvisionedProductPlanSummary -> Maybe Text
provisionProductId :: Prelude.Maybe Prelude.Text,
ProvisionedProductPlanSummary -> Maybe Text
provisionProductName :: Prelude.Maybe Prelude.Text,
ProvisionedProductPlanSummary -> Maybe Text
provisioningArtifactId :: Prelude.Maybe Prelude.Text
}
deriving (ProvisionedProductPlanSummary
-> ProvisionedProductPlanSummary -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ProvisionedProductPlanSummary
-> ProvisionedProductPlanSummary -> Bool
$c/= :: ProvisionedProductPlanSummary
-> ProvisionedProductPlanSummary -> Bool
== :: ProvisionedProductPlanSummary
-> ProvisionedProductPlanSummary -> Bool
$c== :: ProvisionedProductPlanSummary
-> ProvisionedProductPlanSummary -> Bool
Prelude.Eq, ReadPrec [ProvisionedProductPlanSummary]
ReadPrec ProvisionedProductPlanSummary
Int -> ReadS ProvisionedProductPlanSummary
ReadS [ProvisionedProductPlanSummary]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ProvisionedProductPlanSummary]
$creadListPrec :: ReadPrec [ProvisionedProductPlanSummary]
readPrec :: ReadPrec ProvisionedProductPlanSummary
$creadPrec :: ReadPrec ProvisionedProductPlanSummary
readList :: ReadS [ProvisionedProductPlanSummary]
$creadList :: ReadS [ProvisionedProductPlanSummary]
readsPrec :: Int -> ReadS ProvisionedProductPlanSummary
$creadsPrec :: Int -> ReadS ProvisionedProductPlanSummary
Prelude.Read, Int -> ProvisionedProductPlanSummary -> ShowS
[ProvisionedProductPlanSummary] -> ShowS
ProvisionedProductPlanSummary -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ProvisionedProductPlanSummary] -> ShowS
$cshowList :: [ProvisionedProductPlanSummary] -> ShowS
show :: ProvisionedProductPlanSummary -> String
$cshow :: ProvisionedProductPlanSummary -> String
showsPrec :: Int -> ProvisionedProductPlanSummary -> ShowS
$cshowsPrec :: Int -> ProvisionedProductPlanSummary -> ShowS
Prelude.Show, forall x.
Rep ProvisionedProductPlanSummary x
-> ProvisionedProductPlanSummary
forall x.
ProvisionedProductPlanSummary
-> Rep ProvisionedProductPlanSummary x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ProvisionedProductPlanSummary x
-> ProvisionedProductPlanSummary
$cfrom :: forall x.
ProvisionedProductPlanSummary
-> Rep ProvisionedProductPlanSummary x
Prelude.Generic)
newProvisionedProductPlanSummary ::
ProvisionedProductPlanSummary
newProvisionedProductPlanSummary :: ProvisionedProductPlanSummary
newProvisionedProductPlanSummary =
ProvisionedProductPlanSummary'
{ $sel:planId:ProvisionedProductPlanSummary' :: Maybe Text
planId =
forall a. Maybe a
Prelude.Nothing,
$sel:planName:ProvisionedProductPlanSummary' :: Maybe Text
planName = forall a. Maybe a
Prelude.Nothing,
$sel:planType:ProvisionedProductPlanSummary' :: Maybe ProvisionedProductPlanType
planType = forall a. Maybe a
Prelude.Nothing,
$sel:provisionProductId:ProvisionedProductPlanSummary' :: Maybe Text
provisionProductId = forall a. Maybe a
Prelude.Nothing,
$sel:provisionProductName:ProvisionedProductPlanSummary' :: Maybe Text
provisionProductName = forall a. Maybe a
Prelude.Nothing,
$sel:provisioningArtifactId:ProvisionedProductPlanSummary' :: Maybe Text
provisioningArtifactId = forall a. Maybe a
Prelude.Nothing
}
provisionedProductPlanSummary_planId :: Lens.Lens' ProvisionedProductPlanSummary (Prelude.Maybe Prelude.Text)
provisionedProductPlanSummary_planId :: Lens' ProvisionedProductPlanSummary (Maybe Text)
provisionedProductPlanSummary_planId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProvisionedProductPlanSummary' {Maybe Text
planId :: Maybe Text
$sel:planId:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
planId} -> Maybe Text
planId) (\s :: ProvisionedProductPlanSummary
s@ProvisionedProductPlanSummary' {} Maybe Text
a -> ProvisionedProductPlanSummary
s {$sel:planId:ProvisionedProductPlanSummary' :: Maybe Text
planId = Maybe Text
a} :: ProvisionedProductPlanSummary)
provisionedProductPlanSummary_planName :: Lens.Lens' ProvisionedProductPlanSummary (Prelude.Maybe Prelude.Text)
provisionedProductPlanSummary_planName :: Lens' ProvisionedProductPlanSummary (Maybe Text)
provisionedProductPlanSummary_planName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProvisionedProductPlanSummary' {Maybe Text
planName :: Maybe Text
$sel:planName:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
planName} -> Maybe Text
planName) (\s :: ProvisionedProductPlanSummary
s@ProvisionedProductPlanSummary' {} Maybe Text
a -> ProvisionedProductPlanSummary
s {$sel:planName:ProvisionedProductPlanSummary' :: Maybe Text
planName = Maybe Text
a} :: ProvisionedProductPlanSummary)
provisionedProductPlanSummary_planType :: Lens.Lens' ProvisionedProductPlanSummary (Prelude.Maybe ProvisionedProductPlanType)
provisionedProductPlanSummary_planType :: Lens'
ProvisionedProductPlanSummary (Maybe ProvisionedProductPlanType)
provisionedProductPlanSummary_planType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProvisionedProductPlanSummary' {Maybe ProvisionedProductPlanType
planType :: Maybe ProvisionedProductPlanType
$sel:planType:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe ProvisionedProductPlanType
planType} -> Maybe ProvisionedProductPlanType
planType) (\s :: ProvisionedProductPlanSummary
s@ProvisionedProductPlanSummary' {} Maybe ProvisionedProductPlanType
a -> ProvisionedProductPlanSummary
s {$sel:planType:ProvisionedProductPlanSummary' :: Maybe ProvisionedProductPlanType
planType = Maybe ProvisionedProductPlanType
a} :: ProvisionedProductPlanSummary)
provisionedProductPlanSummary_provisionProductId :: Lens.Lens' ProvisionedProductPlanSummary (Prelude.Maybe Prelude.Text)
provisionedProductPlanSummary_provisionProductId :: Lens' ProvisionedProductPlanSummary (Maybe Text)
provisionedProductPlanSummary_provisionProductId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProvisionedProductPlanSummary' {Maybe Text
provisionProductId :: Maybe Text
$sel:provisionProductId:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
provisionProductId} -> Maybe Text
provisionProductId) (\s :: ProvisionedProductPlanSummary
s@ProvisionedProductPlanSummary' {} Maybe Text
a -> ProvisionedProductPlanSummary
s {$sel:provisionProductId:ProvisionedProductPlanSummary' :: Maybe Text
provisionProductId = Maybe Text
a} :: ProvisionedProductPlanSummary)
provisionedProductPlanSummary_provisionProductName :: Lens.Lens' ProvisionedProductPlanSummary (Prelude.Maybe Prelude.Text)
provisionedProductPlanSummary_provisionProductName :: Lens' ProvisionedProductPlanSummary (Maybe Text)
provisionedProductPlanSummary_provisionProductName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProvisionedProductPlanSummary' {Maybe Text
provisionProductName :: Maybe Text
$sel:provisionProductName:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
provisionProductName} -> Maybe Text
provisionProductName) (\s :: ProvisionedProductPlanSummary
s@ProvisionedProductPlanSummary' {} Maybe Text
a -> ProvisionedProductPlanSummary
s {$sel:provisionProductName:ProvisionedProductPlanSummary' :: Maybe Text
provisionProductName = Maybe Text
a} :: ProvisionedProductPlanSummary)
provisionedProductPlanSummary_provisioningArtifactId :: Lens.Lens' ProvisionedProductPlanSummary (Prelude.Maybe Prelude.Text)
provisionedProductPlanSummary_provisioningArtifactId :: Lens' ProvisionedProductPlanSummary (Maybe Text)
provisionedProductPlanSummary_provisioningArtifactId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ProvisionedProductPlanSummary' {Maybe Text
provisioningArtifactId :: Maybe Text
$sel:provisioningArtifactId:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
provisioningArtifactId} -> Maybe Text
provisioningArtifactId) (\s :: ProvisionedProductPlanSummary
s@ProvisionedProductPlanSummary' {} Maybe Text
a -> ProvisionedProductPlanSummary
s {$sel:provisioningArtifactId:ProvisionedProductPlanSummary' :: Maybe Text
provisioningArtifactId = Maybe Text
a} :: ProvisionedProductPlanSummary)
instance Data.FromJSON ProvisionedProductPlanSummary where
parseJSON :: Value -> Parser ProvisionedProductPlanSummary
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"ProvisionedProductPlanSummary"
( \Object
x ->
Maybe Text
-> Maybe Text
-> Maybe ProvisionedProductPlanType
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ProvisionedProductPlanSummary
ProvisionedProductPlanSummary'
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
"PlanId")
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
"PlanName")
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
"PlanType")
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
"ProvisionProductId")
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
"ProvisionProductName")
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
"ProvisioningArtifactId")
)
instance
Prelude.Hashable
ProvisionedProductPlanSummary
where
hashWithSalt :: Int -> ProvisionedProductPlanSummary -> Int
hashWithSalt Int
_salt ProvisionedProductPlanSummary' {Maybe Text
Maybe ProvisionedProductPlanType
provisioningArtifactId :: Maybe Text
provisionProductName :: Maybe Text
provisionProductId :: Maybe Text
planType :: Maybe ProvisionedProductPlanType
planName :: Maybe Text
planId :: Maybe Text
$sel:provisioningArtifactId:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
$sel:provisionProductName:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
$sel:provisionProductId:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
$sel:planType:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe ProvisionedProductPlanType
$sel:planName:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
$sel:planId:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
planId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
planName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ProvisionedProductPlanType
planType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
provisionProductId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
provisionProductName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
provisioningArtifactId
instance Prelude.NFData ProvisionedProductPlanSummary where
rnf :: ProvisionedProductPlanSummary -> ()
rnf ProvisionedProductPlanSummary' {Maybe Text
Maybe ProvisionedProductPlanType
provisioningArtifactId :: Maybe Text
provisionProductName :: Maybe Text
provisionProductId :: Maybe Text
planType :: Maybe ProvisionedProductPlanType
planName :: Maybe Text
planId :: Maybe Text
$sel:provisioningArtifactId:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
$sel:provisionProductName:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
$sel:provisionProductId:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
$sel:planType:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe ProvisionedProductPlanType
$sel:planName:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
$sel:planId:ProvisionedProductPlanSummary' :: ProvisionedProductPlanSummary -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
planId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
planName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ProvisionedProductPlanType
planType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
provisionProductId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
provisionProductName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
provisioningArtifactId