module Stratosphere.EC2.SpotFleet.ClassicLoadBalancersConfigProperty (
        module Exports, ClassicLoadBalancersConfigProperty(..),
        mkClassicLoadBalancersConfigProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.EC2.SpotFleet.ClassicLoadBalancerProperty as Exports
import Stratosphere.ResourceProperties
data ClassicLoadBalancersConfigProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancersconfig.html>
    ClassicLoadBalancersConfigProperty {ClassicLoadBalancersConfigProperty -> ()
haddock_workaround_ :: (),
                                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-classicloadbalancersconfig.html#cfn-ec2-spotfleet-classicloadbalancersconfig-classicloadbalancers>
                                        ClassicLoadBalancersConfigProperty -> [ClassicLoadBalancerProperty]
classicLoadBalancers :: [ClassicLoadBalancerProperty]}
  deriving stock (ClassicLoadBalancersConfigProperty
-> ClassicLoadBalancersConfigProperty -> Bool
(ClassicLoadBalancersConfigProperty
 -> ClassicLoadBalancersConfigProperty -> Bool)
-> (ClassicLoadBalancersConfigProperty
    -> ClassicLoadBalancersConfigProperty -> Bool)
-> Eq ClassicLoadBalancersConfigProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ClassicLoadBalancersConfigProperty
-> ClassicLoadBalancersConfigProperty -> Bool
== :: ClassicLoadBalancersConfigProperty
-> ClassicLoadBalancersConfigProperty -> Bool
$c/= :: ClassicLoadBalancersConfigProperty
-> ClassicLoadBalancersConfigProperty -> Bool
/= :: ClassicLoadBalancersConfigProperty
-> ClassicLoadBalancersConfigProperty -> Bool
Prelude.Eq, Int -> ClassicLoadBalancersConfigProperty -> ShowS
[ClassicLoadBalancersConfigProperty] -> ShowS
ClassicLoadBalancersConfigProperty -> String
(Int -> ClassicLoadBalancersConfigProperty -> ShowS)
-> (ClassicLoadBalancersConfigProperty -> String)
-> ([ClassicLoadBalancersConfigProperty] -> ShowS)
-> Show ClassicLoadBalancersConfigProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ClassicLoadBalancersConfigProperty -> ShowS
showsPrec :: Int -> ClassicLoadBalancersConfigProperty -> ShowS
$cshow :: ClassicLoadBalancersConfigProperty -> String
show :: ClassicLoadBalancersConfigProperty -> String
$cshowList :: [ClassicLoadBalancersConfigProperty] -> ShowS
showList :: [ClassicLoadBalancersConfigProperty] -> ShowS
Prelude.Show)
mkClassicLoadBalancersConfigProperty ::
  [ClassicLoadBalancerProperty] -> ClassicLoadBalancersConfigProperty
mkClassicLoadBalancersConfigProperty :: [ClassicLoadBalancerProperty] -> ClassicLoadBalancersConfigProperty
mkClassicLoadBalancersConfigProperty [ClassicLoadBalancerProperty]
classicLoadBalancers
  = ClassicLoadBalancersConfigProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (),
       classicLoadBalancers :: [ClassicLoadBalancerProperty]
classicLoadBalancers = [ClassicLoadBalancerProperty]
classicLoadBalancers}
instance ToResourceProperties ClassicLoadBalancersConfigProperty where
  toResourceProperties :: ClassicLoadBalancersConfigProperty -> ResourceProperties
toResourceProperties ClassicLoadBalancersConfigProperty {[ClassicLoadBalancerProperty]
()
haddock_workaround_ :: ClassicLoadBalancersConfigProperty -> ()
classicLoadBalancers :: ClassicLoadBalancersConfigProperty -> [ClassicLoadBalancerProperty]
haddock_workaround_ :: ()
classicLoadBalancers :: [ClassicLoadBalancerProperty]
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::EC2::SpotFleet.ClassicLoadBalancersConfig",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"ClassicLoadBalancers" Key -> [ClassicLoadBalancerProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= [ClassicLoadBalancerProperty]
classicLoadBalancers]}
instance JSON.ToJSON ClassicLoadBalancersConfigProperty where
  toJSON :: ClassicLoadBalancersConfigProperty -> Value
toJSON ClassicLoadBalancersConfigProperty {[ClassicLoadBalancerProperty]
()
haddock_workaround_ :: ClassicLoadBalancersConfigProperty -> ()
classicLoadBalancers :: ClassicLoadBalancersConfigProperty -> [ClassicLoadBalancerProperty]
haddock_workaround_ :: ()
classicLoadBalancers :: [ClassicLoadBalancerProperty]
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"ClassicLoadBalancers" Key -> [ClassicLoadBalancerProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= [ClassicLoadBalancerProperty]
classicLoadBalancers]
instance Property "ClassicLoadBalancers" ClassicLoadBalancersConfigProperty where
  type PropertyType "ClassicLoadBalancers" ClassicLoadBalancersConfigProperty = [ClassicLoadBalancerProperty]
  set :: PropertyType
  "ClassicLoadBalancers" ClassicLoadBalancersConfigProperty
-> ClassicLoadBalancersConfigProperty
-> ClassicLoadBalancersConfigProperty
set PropertyType
  "ClassicLoadBalancers" ClassicLoadBalancersConfigProperty
newValue ClassicLoadBalancersConfigProperty {[ClassicLoadBalancerProperty]
()
haddock_workaround_ :: ClassicLoadBalancersConfigProperty -> ()
classicLoadBalancers :: ClassicLoadBalancersConfigProperty -> [ClassicLoadBalancerProperty]
haddock_workaround_ :: ()
classicLoadBalancers :: [ClassicLoadBalancerProperty]
..}
    = ClassicLoadBalancersConfigProperty
        {classicLoadBalancers :: [ClassicLoadBalancerProperty]
classicLoadBalancers = [ClassicLoadBalancerProperty]
PropertyType
  "ClassicLoadBalancers" ClassicLoadBalancersConfigProperty
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}