{-# 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.SpotDatafeedSubscription 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.DatafeedSubscriptionState
import Amazonka.EC2.Types.SpotInstanceStateFault
import qualified Amazonka.Prelude as Prelude
data SpotDatafeedSubscription = SpotDatafeedSubscription'
{
SpotDatafeedSubscription -> Maybe Text
bucket :: Prelude.Maybe Prelude.Text,
SpotDatafeedSubscription -> Maybe SpotInstanceStateFault
fault :: Prelude.Maybe SpotInstanceStateFault,
SpotDatafeedSubscription -> Maybe Text
ownerId :: Prelude.Maybe Prelude.Text,
SpotDatafeedSubscription -> Maybe Text
prefix :: Prelude.Maybe Prelude.Text,
SpotDatafeedSubscription -> Maybe DatafeedSubscriptionState
state :: Prelude.Maybe DatafeedSubscriptionState
}
deriving (SpotDatafeedSubscription -> SpotDatafeedSubscription -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SpotDatafeedSubscription -> SpotDatafeedSubscription -> Bool
$c/= :: SpotDatafeedSubscription -> SpotDatafeedSubscription -> Bool
== :: SpotDatafeedSubscription -> SpotDatafeedSubscription -> Bool
$c== :: SpotDatafeedSubscription -> SpotDatafeedSubscription -> Bool
Prelude.Eq, ReadPrec [SpotDatafeedSubscription]
ReadPrec SpotDatafeedSubscription
Int -> ReadS SpotDatafeedSubscription
ReadS [SpotDatafeedSubscription]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [SpotDatafeedSubscription]
$creadListPrec :: ReadPrec [SpotDatafeedSubscription]
readPrec :: ReadPrec SpotDatafeedSubscription
$creadPrec :: ReadPrec SpotDatafeedSubscription
readList :: ReadS [SpotDatafeedSubscription]
$creadList :: ReadS [SpotDatafeedSubscription]
readsPrec :: Int -> ReadS SpotDatafeedSubscription
$creadsPrec :: Int -> ReadS SpotDatafeedSubscription
Prelude.Read, Int -> SpotDatafeedSubscription -> ShowS
[SpotDatafeedSubscription] -> ShowS
SpotDatafeedSubscription -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [SpotDatafeedSubscription] -> ShowS
$cshowList :: [SpotDatafeedSubscription] -> ShowS
show :: SpotDatafeedSubscription -> String
$cshow :: SpotDatafeedSubscription -> String
showsPrec :: Int -> SpotDatafeedSubscription -> ShowS
$cshowsPrec :: Int -> SpotDatafeedSubscription -> ShowS
Prelude.Show, forall x.
Rep SpotDatafeedSubscription x -> SpotDatafeedSubscription
forall x.
SpotDatafeedSubscription -> Rep SpotDatafeedSubscription x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep SpotDatafeedSubscription x -> SpotDatafeedSubscription
$cfrom :: forall x.
SpotDatafeedSubscription -> Rep SpotDatafeedSubscription x
Prelude.Generic)
newSpotDatafeedSubscription ::
SpotDatafeedSubscription
newSpotDatafeedSubscription :: SpotDatafeedSubscription
newSpotDatafeedSubscription =
SpotDatafeedSubscription'
{ $sel:bucket:SpotDatafeedSubscription' :: Maybe Text
bucket = forall a. Maybe a
Prelude.Nothing,
$sel:fault:SpotDatafeedSubscription' :: Maybe SpotInstanceStateFault
fault = forall a. Maybe a
Prelude.Nothing,
$sel:ownerId:SpotDatafeedSubscription' :: Maybe Text
ownerId = forall a. Maybe a
Prelude.Nothing,
$sel:prefix:SpotDatafeedSubscription' :: Maybe Text
prefix = forall a. Maybe a
Prelude.Nothing,
$sel:state:SpotDatafeedSubscription' :: Maybe DatafeedSubscriptionState
state = forall a. Maybe a
Prelude.Nothing
}
spotDatafeedSubscription_bucket :: Lens.Lens' SpotDatafeedSubscription (Prelude.Maybe Prelude.Text)
spotDatafeedSubscription_bucket :: Lens' SpotDatafeedSubscription (Maybe Text)
spotDatafeedSubscription_bucket = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SpotDatafeedSubscription' {Maybe Text
bucket :: Maybe Text
$sel:bucket:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe Text
bucket} -> Maybe Text
bucket) (\s :: SpotDatafeedSubscription
s@SpotDatafeedSubscription' {} Maybe Text
a -> SpotDatafeedSubscription
s {$sel:bucket:SpotDatafeedSubscription' :: Maybe Text
bucket = Maybe Text
a} :: SpotDatafeedSubscription)
spotDatafeedSubscription_fault :: Lens.Lens' SpotDatafeedSubscription (Prelude.Maybe SpotInstanceStateFault)
spotDatafeedSubscription_fault :: Lens' SpotDatafeedSubscription (Maybe SpotInstanceStateFault)
spotDatafeedSubscription_fault = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SpotDatafeedSubscription' {Maybe SpotInstanceStateFault
fault :: Maybe SpotInstanceStateFault
$sel:fault:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe SpotInstanceStateFault
fault} -> Maybe SpotInstanceStateFault
fault) (\s :: SpotDatafeedSubscription
s@SpotDatafeedSubscription' {} Maybe SpotInstanceStateFault
a -> SpotDatafeedSubscription
s {$sel:fault:SpotDatafeedSubscription' :: Maybe SpotInstanceStateFault
fault = Maybe SpotInstanceStateFault
a} :: SpotDatafeedSubscription)
spotDatafeedSubscription_ownerId :: Lens.Lens' SpotDatafeedSubscription (Prelude.Maybe Prelude.Text)
spotDatafeedSubscription_ownerId :: Lens' SpotDatafeedSubscription (Maybe Text)
spotDatafeedSubscription_ownerId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SpotDatafeedSubscription' {Maybe Text
ownerId :: Maybe Text
$sel:ownerId:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe Text
ownerId} -> Maybe Text
ownerId) (\s :: SpotDatafeedSubscription
s@SpotDatafeedSubscription' {} Maybe Text
a -> SpotDatafeedSubscription
s {$sel:ownerId:SpotDatafeedSubscription' :: Maybe Text
ownerId = Maybe Text
a} :: SpotDatafeedSubscription)
spotDatafeedSubscription_prefix :: Lens.Lens' SpotDatafeedSubscription (Prelude.Maybe Prelude.Text)
spotDatafeedSubscription_prefix :: Lens' SpotDatafeedSubscription (Maybe Text)
spotDatafeedSubscription_prefix = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SpotDatafeedSubscription' {Maybe Text
prefix :: Maybe Text
$sel:prefix:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe Text
prefix} -> Maybe Text
prefix) (\s :: SpotDatafeedSubscription
s@SpotDatafeedSubscription' {} Maybe Text
a -> SpotDatafeedSubscription
s {$sel:prefix:SpotDatafeedSubscription' :: Maybe Text
prefix = Maybe Text
a} :: SpotDatafeedSubscription)
spotDatafeedSubscription_state :: Lens.Lens' SpotDatafeedSubscription (Prelude.Maybe DatafeedSubscriptionState)
spotDatafeedSubscription_state :: Lens' SpotDatafeedSubscription (Maybe DatafeedSubscriptionState)
spotDatafeedSubscription_state = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\SpotDatafeedSubscription' {Maybe DatafeedSubscriptionState
state :: Maybe DatafeedSubscriptionState
$sel:state:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe DatafeedSubscriptionState
state} -> Maybe DatafeedSubscriptionState
state) (\s :: SpotDatafeedSubscription
s@SpotDatafeedSubscription' {} Maybe DatafeedSubscriptionState
a -> SpotDatafeedSubscription
s {$sel:state:SpotDatafeedSubscription' :: Maybe DatafeedSubscriptionState
state = Maybe DatafeedSubscriptionState
a} :: SpotDatafeedSubscription)
instance Data.FromXML SpotDatafeedSubscription where
parseXML :: [Node] -> Either String SpotDatafeedSubscription
parseXML [Node]
x =
Maybe Text
-> Maybe SpotInstanceStateFault
-> Maybe Text
-> Maybe Text
-> Maybe DatafeedSubscriptionState
-> SpotDatafeedSubscription
SpotDatafeedSubscription'
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
"bucket")
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
"fault")
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
"prefix")
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")
instance Prelude.Hashable SpotDatafeedSubscription where
hashWithSalt :: Int -> SpotDatafeedSubscription -> Int
hashWithSalt Int
_salt SpotDatafeedSubscription' {Maybe Text
Maybe DatafeedSubscriptionState
Maybe SpotInstanceStateFault
state :: Maybe DatafeedSubscriptionState
prefix :: Maybe Text
ownerId :: Maybe Text
fault :: Maybe SpotInstanceStateFault
bucket :: Maybe Text
$sel:state:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe DatafeedSubscriptionState
$sel:prefix:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe Text
$sel:ownerId:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe Text
$sel:fault:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe SpotInstanceStateFault
$sel:bucket:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
bucket
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe SpotInstanceStateFault
fault
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ownerId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
prefix
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DatafeedSubscriptionState
state
instance Prelude.NFData SpotDatafeedSubscription where
rnf :: SpotDatafeedSubscription -> ()
rnf SpotDatafeedSubscription' {Maybe Text
Maybe DatafeedSubscriptionState
Maybe SpotInstanceStateFault
state :: Maybe DatafeedSubscriptionState
prefix :: Maybe Text
ownerId :: Maybe Text
fault :: Maybe SpotInstanceStateFault
bucket :: Maybe Text
$sel:state:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe DatafeedSubscriptionState
$sel:prefix:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe Text
$sel:ownerId:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe Text
$sel:fault:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe SpotInstanceStateFault
$sel:bucket:SpotDatafeedSubscription' :: SpotDatafeedSubscription -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
bucket
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe SpotInstanceStateFault
fault
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
prefix
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DatafeedSubscriptionState
state