{-# 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.CostExplorer.Types.ReservationPurchaseRecommendationDetail where
import qualified Amazonka.Core as Core
import Amazonka.CostExplorer.Types.InstanceDetails
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
data ReservationPurchaseRecommendationDetail = ReservationPurchaseRecommendationDetail'
{
ReservationPurchaseRecommendationDetail -> Maybe Text
maximumNormalizedUnitsUsedPerHour :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
recurringStandardMonthlyCost :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
averageNormalizedUnitsUsedPerHour :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
currencyCode :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
estimatedMonthlySavingsPercentage :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
recommendedNormalizedUnitsToPurchase :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
averageUtilization :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
accountId :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
estimatedMonthlySavingsAmount :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
upfrontCost :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
minimumNormalizedUnitsUsedPerHour :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
estimatedMonthlyOnDemandCost :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
recommendedNumberOfInstancesToPurchase :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
maximumNumberOfInstancesUsedPerHour :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
estimatedReservationCostForLookbackPeriod :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe InstanceDetails
instanceDetails :: Prelude.Maybe InstanceDetails,
ReservationPurchaseRecommendationDetail -> Maybe Text
averageNumberOfInstancesUsedPerHour :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
minimumNumberOfInstancesUsedPerHour :: Prelude.Maybe Prelude.Text,
ReservationPurchaseRecommendationDetail -> Maybe Text
estimatedBreakEvenInMonths :: Prelude.Maybe Prelude.Text
}
deriving (ReservationPurchaseRecommendationDetail
-> ReservationPurchaseRecommendationDetail -> Bool
(ReservationPurchaseRecommendationDetail
-> ReservationPurchaseRecommendationDetail -> Bool)
-> (ReservationPurchaseRecommendationDetail
-> ReservationPurchaseRecommendationDetail -> Bool)
-> Eq ReservationPurchaseRecommendationDetail
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ReservationPurchaseRecommendationDetail
-> ReservationPurchaseRecommendationDetail -> Bool
$c/= :: ReservationPurchaseRecommendationDetail
-> ReservationPurchaseRecommendationDetail -> Bool
== :: ReservationPurchaseRecommendationDetail
-> ReservationPurchaseRecommendationDetail -> Bool
$c== :: ReservationPurchaseRecommendationDetail
-> ReservationPurchaseRecommendationDetail -> Bool
Prelude.Eq, ReadPrec [ReservationPurchaseRecommendationDetail]
ReadPrec ReservationPurchaseRecommendationDetail
Int -> ReadS ReservationPurchaseRecommendationDetail
ReadS [ReservationPurchaseRecommendationDetail]
(Int -> ReadS ReservationPurchaseRecommendationDetail)
-> ReadS [ReservationPurchaseRecommendationDetail]
-> ReadPrec ReservationPurchaseRecommendationDetail
-> ReadPrec [ReservationPurchaseRecommendationDetail]
-> Read ReservationPurchaseRecommendationDetail
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ReservationPurchaseRecommendationDetail]
$creadListPrec :: ReadPrec [ReservationPurchaseRecommendationDetail]
readPrec :: ReadPrec ReservationPurchaseRecommendationDetail
$creadPrec :: ReadPrec ReservationPurchaseRecommendationDetail
readList :: ReadS [ReservationPurchaseRecommendationDetail]
$creadList :: ReadS [ReservationPurchaseRecommendationDetail]
readsPrec :: Int -> ReadS ReservationPurchaseRecommendationDetail
$creadsPrec :: Int -> ReadS ReservationPurchaseRecommendationDetail
Prelude.Read, Int -> ReservationPurchaseRecommendationDetail -> ShowS
[ReservationPurchaseRecommendationDetail] -> ShowS
ReservationPurchaseRecommendationDetail -> String
(Int -> ReservationPurchaseRecommendationDetail -> ShowS)
-> (ReservationPurchaseRecommendationDetail -> String)
-> ([ReservationPurchaseRecommendationDetail] -> ShowS)
-> Show ReservationPurchaseRecommendationDetail
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ReservationPurchaseRecommendationDetail] -> ShowS
$cshowList :: [ReservationPurchaseRecommendationDetail] -> ShowS
show :: ReservationPurchaseRecommendationDetail -> String
$cshow :: ReservationPurchaseRecommendationDetail -> String
showsPrec :: Int -> ReservationPurchaseRecommendationDetail -> ShowS
$cshowsPrec :: Int -> ReservationPurchaseRecommendationDetail -> ShowS
Prelude.Show, (forall x.
ReservationPurchaseRecommendationDetail
-> Rep ReservationPurchaseRecommendationDetail x)
-> (forall x.
Rep ReservationPurchaseRecommendationDetail x
-> ReservationPurchaseRecommendationDetail)
-> Generic ReservationPurchaseRecommendationDetail
forall x.
Rep ReservationPurchaseRecommendationDetail x
-> ReservationPurchaseRecommendationDetail
forall x.
ReservationPurchaseRecommendationDetail
-> Rep ReservationPurchaseRecommendationDetail x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ReservationPurchaseRecommendationDetail x
-> ReservationPurchaseRecommendationDetail
$cfrom :: forall x.
ReservationPurchaseRecommendationDetail
-> Rep ReservationPurchaseRecommendationDetail x
Prelude.Generic)
newReservationPurchaseRecommendationDetail ::
ReservationPurchaseRecommendationDetail
newReservationPurchaseRecommendationDetail :: ReservationPurchaseRecommendationDetail
newReservationPurchaseRecommendationDetail =
ReservationPurchaseRecommendationDetail' :: 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 Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail'
{ $sel:maximumNormalizedUnitsUsedPerHour:ReservationPurchaseRecommendationDetail' :: Maybe Text
maximumNormalizedUnitsUsedPerHour =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:recurringStandardMonthlyCost:ReservationPurchaseRecommendationDetail' :: Maybe Text
recurringStandardMonthlyCost =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:averageNormalizedUnitsUsedPerHour:ReservationPurchaseRecommendationDetail' :: Maybe Text
averageNormalizedUnitsUsedPerHour =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:currencyCode:ReservationPurchaseRecommendationDetail' :: Maybe Text
currencyCode = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:estimatedMonthlySavingsPercentage:ReservationPurchaseRecommendationDetail' :: Maybe Text
estimatedMonthlySavingsPercentage =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:recommendedNormalizedUnitsToPurchase:ReservationPurchaseRecommendationDetail' :: Maybe Text
recommendedNormalizedUnitsToPurchase =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:averageUtilization:ReservationPurchaseRecommendationDetail' :: Maybe Text
averageUtilization =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:accountId:ReservationPurchaseRecommendationDetail' :: Maybe Text
accountId = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:estimatedMonthlySavingsAmount:ReservationPurchaseRecommendationDetail' :: Maybe Text
estimatedMonthlySavingsAmount =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:upfrontCost:ReservationPurchaseRecommendationDetail' :: Maybe Text
upfrontCost = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:minimumNormalizedUnitsUsedPerHour:ReservationPurchaseRecommendationDetail' :: Maybe Text
minimumNormalizedUnitsUsedPerHour =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:estimatedMonthlyOnDemandCost:ReservationPurchaseRecommendationDetail' :: Maybe Text
estimatedMonthlyOnDemandCost =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:recommendedNumberOfInstancesToPurchase:ReservationPurchaseRecommendationDetail' :: Maybe Text
recommendedNumberOfInstancesToPurchase =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:maximumNumberOfInstancesUsedPerHour:ReservationPurchaseRecommendationDetail' :: Maybe Text
maximumNumberOfInstancesUsedPerHour =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:estimatedReservationCostForLookbackPeriod:ReservationPurchaseRecommendationDetail' :: Maybe Text
estimatedReservationCostForLookbackPeriod =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:instanceDetails:ReservationPurchaseRecommendationDetail' :: Maybe InstanceDetails
instanceDetails = Maybe InstanceDetails
forall a. Maybe a
Prelude.Nothing,
$sel:averageNumberOfInstancesUsedPerHour:ReservationPurchaseRecommendationDetail' :: Maybe Text
averageNumberOfInstancesUsedPerHour =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:minimumNumberOfInstancesUsedPerHour:ReservationPurchaseRecommendationDetail' :: Maybe Text
minimumNumberOfInstancesUsedPerHour =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:estimatedBreakEvenInMonths:ReservationPurchaseRecommendationDetail' :: Maybe Text
estimatedBreakEvenInMonths =
Maybe Text
forall a. Maybe a
Prelude.Nothing
}
reservationPurchaseRecommendationDetail_maximumNormalizedUnitsUsedPerHour :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_maximumNormalizedUnitsUsedPerHour :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_maximumNormalizedUnitsUsedPerHour = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
maximumNormalizedUnitsUsedPerHour :: Maybe Text
$sel:maximumNormalizedUnitsUsedPerHour:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
maximumNormalizedUnitsUsedPerHour} -> Maybe Text
maximumNormalizedUnitsUsedPerHour) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:maximumNormalizedUnitsUsedPerHour:ReservationPurchaseRecommendationDetail' :: Maybe Text
maximumNormalizedUnitsUsedPerHour = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_recurringStandardMonthlyCost :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_recurringStandardMonthlyCost :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_recurringStandardMonthlyCost = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
recurringStandardMonthlyCost :: Maybe Text
$sel:recurringStandardMonthlyCost:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
recurringStandardMonthlyCost} -> Maybe Text
recurringStandardMonthlyCost) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:recurringStandardMonthlyCost:ReservationPurchaseRecommendationDetail' :: Maybe Text
recurringStandardMonthlyCost = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_averageNormalizedUnitsUsedPerHour :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_averageNormalizedUnitsUsedPerHour :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_averageNormalizedUnitsUsedPerHour = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
averageNormalizedUnitsUsedPerHour :: Maybe Text
$sel:averageNormalizedUnitsUsedPerHour:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
averageNormalizedUnitsUsedPerHour} -> Maybe Text
averageNormalizedUnitsUsedPerHour) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:averageNormalizedUnitsUsedPerHour:ReservationPurchaseRecommendationDetail' :: Maybe Text
averageNormalizedUnitsUsedPerHour = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_currencyCode :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_currencyCode :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_currencyCode = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
currencyCode :: Maybe Text
$sel:currencyCode:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
currencyCode} -> Maybe Text
currencyCode) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:currencyCode:ReservationPurchaseRecommendationDetail' :: Maybe Text
currencyCode = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_estimatedMonthlySavingsPercentage :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_estimatedMonthlySavingsPercentage :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_estimatedMonthlySavingsPercentage = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
estimatedMonthlySavingsPercentage :: Maybe Text
$sel:estimatedMonthlySavingsPercentage:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
estimatedMonthlySavingsPercentage} -> Maybe Text
estimatedMonthlySavingsPercentage) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:estimatedMonthlySavingsPercentage:ReservationPurchaseRecommendationDetail' :: Maybe Text
estimatedMonthlySavingsPercentage = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_recommendedNormalizedUnitsToPurchase :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_recommendedNormalizedUnitsToPurchase :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_recommendedNormalizedUnitsToPurchase = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
recommendedNormalizedUnitsToPurchase :: Maybe Text
$sel:recommendedNormalizedUnitsToPurchase:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
recommendedNormalizedUnitsToPurchase} -> Maybe Text
recommendedNormalizedUnitsToPurchase) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:recommendedNormalizedUnitsToPurchase:ReservationPurchaseRecommendationDetail' :: Maybe Text
recommendedNormalizedUnitsToPurchase = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_averageUtilization :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_averageUtilization :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_averageUtilization = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
averageUtilization :: Maybe Text
$sel:averageUtilization:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
averageUtilization} -> Maybe Text
averageUtilization) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:averageUtilization:ReservationPurchaseRecommendationDetail' :: Maybe Text
averageUtilization = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_accountId :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_accountId :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_accountId = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
accountId :: Maybe Text
$sel:accountId:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
accountId} -> Maybe Text
accountId) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:accountId:ReservationPurchaseRecommendationDetail' :: Maybe Text
accountId = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_estimatedMonthlySavingsAmount :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_estimatedMonthlySavingsAmount :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_estimatedMonthlySavingsAmount = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
estimatedMonthlySavingsAmount :: Maybe Text
$sel:estimatedMonthlySavingsAmount:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
estimatedMonthlySavingsAmount} -> Maybe Text
estimatedMonthlySavingsAmount) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:estimatedMonthlySavingsAmount:ReservationPurchaseRecommendationDetail' :: Maybe Text
estimatedMonthlySavingsAmount = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_upfrontCost :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_upfrontCost :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_upfrontCost = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
upfrontCost :: Maybe Text
$sel:upfrontCost:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
upfrontCost} -> Maybe Text
upfrontCost) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:upfrontCost:ReservationPurchaseRecommendationDetail' :: Maybe Text
upfrontCost = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_minimumNormalizedUnitsUsedPerHour :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_minimumNormalizedUnitsUsedPerHour :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_minimumNormalizedUnitsUsedPerHour = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
minimumNormalizedUnitsUsedPerHour :: Maybe Text
$sel:minimumNormalizedUnitsUsedPerHour:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
minimumNormalizedUnitsUsedPerHour} -> Maybe Text
minimumNormalizedUnitsUsedPerHour) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:minimumNormalizedUnitsUsedPerHour:ReservationPurchaseRecommendationDetail' :: Maybe Text
minimumNormalizedUnitsUsedPerHour = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_estimatedMonthlyOnDemandCost :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_estimatedMonthlyOnDemandCost :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_estimatedMonthlyOnDemandCost = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
estimatedMonthlyOnDemandCost :: Maybe Text
$sel:estimatedMonthlyOnDemandCost:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
estimatedMonthlyOnDemandCost} -> Maybe Text
estimatedMonthlyOnDemandCost) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:estimatedMonthlyOnDemandCost:ReservationPurchaseRecommendationDetail' :: Maybe Text
estimatedMonthlyOnDemandCost = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_recommendedNumberOfInstancesToPurchase :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_recommendedNumberOfInstancesToPurchase :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_recommendedNumberOfInstancesToPurchase = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
recommendedNumberOfInstancesToPurchase :: Maybe Text
$sel:recommendedNumberOfInstancesToPurchase:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
recommendedNumberOfInstancesToPurchase} -> Maybe Text
recommendedNumberOfInstancesToPurchase) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:recommendedNumberOfInstancesToPurchase:ReservationPurchaseRecommendationDetail' :: Maybe Text
recommendedNumberOfInstancesToPurchase = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_maximumNumberOfInstancesUsedPerHour :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_maximumNumberOfInstancesUsedPerHour :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_maximumNumberOfInstancesUsedPerHour = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
maximumNumberOfInstancesUsedPerHour :: Maybe Text
$sel:maximumNumberOfInstancesUsedPerHour:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
maximumNumberOfInstancesUsedPerHour} -> Maybe Text
maximumNumberOfInstancesUsedPerHour) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:maximumNumberOfInstancesUsedPerHour:ReservationPurchaseRecommendationDetail' :: Maybe Text
maximumNumberOfInstancesUsedPerHour = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_estimatedReservationCostForLookbackPeriod :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_estimatedReservationCostForLookbackPeriod :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_estimatedReservationCostForLookbackPeriod = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
estimatedReservationCostForLookbackPeriod :: Maybe Text
$sel:estimatedReservationCostForLookbackPeriod:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
estimatedReservationCostForLookbackPeriod} -> Maybe Text
estimatedReservationCostForLookbackPeriod) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:estimatedReservationCostForLookbackPeriod:ReservationPurchaseRecommendationDetail' :: Maybe Text
estimatedReservationCostForLookbackPeriod = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_instanceDetails :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe InstanceDetails)
reservationPurchaseRecommendationDetail_instanceDetails :: (Maybe InstanceDetails -> f (Maybe InstanceDetails))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_instanceDetails = (ReservationPurchaseRecommendationDetail -> Maybe InstanceDetails)
-> (ReservationPurchaseRecommendationDetail
-> Maybe InstanceDetails
-> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe InstanceDetails)
(Maybe InstanceDetails)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe InstanceDetails
instanceDetails :: Maybe InstanceDetails
$sel:instanceDetails:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe InstanceDetails
instanceDetails} -> Maybe InstanceDetails
instanceDetails) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe InstanceDetails
a -> ReservationPurchaseRecommendationDetail
s {$sel:instanceDetails:ReservationPurchaseRecommendationDetail' :: Maybe InstanceDetails
instanceDetails = Maybe InstanceDetails
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_averageNumberOfInstancesUsedPerHour :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_averageNumberOfInstancesUsedPerHour :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_averageNumberOfInstancesUsedPerHour = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
averageNumberOfInstancesUsedPerHour :: Maybe Text
$sel:averageNumberOfInstancesUsedPerHour:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
averageNumberOfInstancesUsedPerHour} -> Maybe Text
averageNumberOfInstancesUsedPerHour) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:averageNumberOfInstancesUsedPerHour:ReservationPurchaseRecommendationDetail' :: Maybe Text
averageNumberOfInstancesUsedPerHour = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_minimumNumberOfInstancesUsedPerHour :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_minimumNumberOfInstancesUsedPerHour :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_minimumNumberOfInstancesUsedPerHour = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
minimumNumberOfInstancesUsedPerHour :: Maybe Text
$sel:minimumNumberOfInstancesUsedPerHour:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
minimumNumberOfInstancesUsedPerHour} -> Maybe Text
minimumNumberOfInstancesUsedPerHour) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:minimumNumberOfInstancesUsedPerHour:ReservationPurchaseRecommendationDetail' :: Maybe Text
minimumNumberOfInstancesUsedPerHour = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
reservationPurchaseRecommendationDetail_estimatedBreakEvenInMonths :: Lens.Lens' ReservationPurchaseRecommendationDetail (Prelude.Maybe Prelude.Text)
reservationPurchaseRecommendationDetail_estimatedBreakEvenInMonths :: (Maybe Text -> f (Maybe Text))
-> ReservationPurchaseRecommendationDetail
-> f ReservationPurchaseRecommendationDetail
reservationPurchaseRecommendationDetail_estimatedBreakEvenInMonths = (ReservationPurchaseRecommendationDetail -> Maybe Text)
-> (ReservationPurchaseRecommendationDetail
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Lens
ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ReservationPurchaseRecommendationDetail' {Maybe Text
estimatedBreakEvenInMonths :: Maybe Text
$sel:estimatedBreakEvenInMonths:ReservationPurchaseRecommendationDetail' :: ReservationPurchaseRecommendationDetail -> Maybe Text
estimatedBreakEvenInMonths} -> Maybe Text
estimatedBreakEvenInMonths) (\s :: ReservationPurchaseRecommendationDetail
s@ReservationPurchaseRecommendationDetail' {} Maybe Text
a -> ReservationPurchaseRecommendationDetail
s {$sel:estimatedBreakEvenInMonths:ReservationPurchaseRecommendationDetail' :: Maybe Text
estimatedBreakEvenInMonths = Maybe Text
a} :: ReservationPurchaseRecommendationDetail)
instance
Core.FromJSON
ReservationPurchaseRecommendationDetail
where
parseJSON :: Value -> Parser ReservationPurchaseRecommendationDetail
parseJSON =
String
-> (Object -> Parser ReservationPurchaseRecommendationDetail)
-> Value
-> Parser ReservationPurchaseRecommendationDetail
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
String
"ReservationPurchaseRecommendationDetail"
( \Object
x ->
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 Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail
ReservationPurchaseRecommendationDetail'
(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 Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(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 Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"MaximumNormalizedUnitsUsedPerHour")
Parser
(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 Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(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 InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"RecurringStandardMonthlyCost")
Parser
(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 InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(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 InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"AverageNormalizedUnitsUsedPerHour")
Parser
(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 InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"CurrencyCode")
Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"EstimatedMonthlySavingsPercentage")
Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"RecommendedNormalizedUnitsToPurchase")
Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"AverageUtilization")
Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"AccountId")
Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"EstimatedMonthlySavingsAmount")
Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"UpfrontCost")
Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"MinimumNormalizedUnitsUsedPerHour")
Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"EstimatedMonthlyOnDemandCost")
Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"RecommendedNumberOfInstancesToPurchase")
Parser
(Maybe Text
-> Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"MaximumNumberOfInstancesUsedPerHour")
Parser
(Maybe Text
-> Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( Object
x
Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"EstimatedReservationCostForLookbackPeriod"
)
Parser
(Maybe InstanceDetails
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe InstanceDetails)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe InstanceDetails)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"InstanceDetails")
Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"AverageNumberOfInstancesUsedPerHour")
Parser
(Maybe Text
-> Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser (Maybe Text -> ReservationPurchaseRecommendationDetail)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"MinimumNumberOfInstancesUsedPerHour")
Parser (Maybe Text -> ReservationPurchaseRecommendationDetail)
-> Parser (Maybe Text)
-> Parser ReservationPurchaseRecommendationDetail
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"EstimatedBreakEvenInMonths")
)
instance
Prelude.Hashable
ReservationPurchaseRecommendationDetail
instance
Prelude.NFData
ReservationPurchaseRecommendationDetail