module Stratosphere.KafkaConnect.Connector.AutoScalingProperty (
module Exports, AutoScalingProperty(..), mkAutoScalingProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.KafkaConnect.Connector.ScaleInPolicyProperty as Exports
import {-# SOURCE #-} Stratosphere.KafkaConnect.Connector.ScaleOutPolicyProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data AutoScalingProperty
=
AutoScalingProperty {AutoScalingProperty -> ()
haddock_workaround_ :: (),
AutoScalingProperty -> Value Integer
maxWorkerCount :: (Value Prelude.Integer),
AutoScalingProperty -> Value Integer
mcuCount :: (Value Prelude.Integer),
AutoScalingProperty -> Value Integer
minWorkerCount :: (Value Prelude.Integer),
AutoScalingProperty -> ScaleInPolicyProperty
scaleInPolicy :: ScaleInPolicyProperty,
AutoScalingProperty -> ScaleOutPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty}
deriving stock (AutoScalingProperty -> AutoScalingProperty -> Bool
(AutoScalingProperty -> AutoScalingProperty -> Bool)
-> (AutoScalingProperty -> AutoScalingProperty -> Bool)
-> Eq AutoScalingProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: AutoScalingProperty -> AutoScalingProperty -> Bool
== :: AutoScalingProperty -> AutoScalingProperty -> Bool
$c/= :: AutoScalingProperty -> AutoScalingProperty -> Bool
/= :: AutoScalingProperty -> AutoScalingProperty -> Bool
Prelude.Eq, Int -> AutoScalingProperty -> ShowS
[AutoScalingProperty] -> ShowS
AutoScalingProperty -> String
(Int -> AutoScalingProperty -> ShowS)
-> (AutoScalingProperty -> String)
-> ([AutoScalingProperty] -> ShowS)
-> Show AutoScalingProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> AutoScalingProperty -> ShowS
showsPrec :: Int -> AutoScalingProperty -> ShowS
$cshow :: AutoScalingProperty -> String
show :: AutoScalingProperty -> String
$cshowList :: [AutoScalingProperty] -> ShowS
showList :: [AutoScalingProperty] -> ShowS
Prelude.Show)
mkAutoScalingProperty ::
Value Prelude.Integer
-> Value Prelude.Integer
-> Value Prelude.Integer
-> ScaleInPolicyProperty
-> ScaleOutPolicyProperty -> AutoScalingProperty
mkAutoScalingProperty :: Value Integer
-> Value Integer
-> Value Integer
-> ScaleInPolicyProperty
-> ScaleOutPolicyProperty
-> AutoScalingProperty
mkAutoScalingProperty
Value Integer
maxWorkerCount
Value Integer
mcuCount
Value Integer
minWorkerCount
ScaleInPolicyProperty
scaleInPolicy
ScaleOutPolicyProperty
scaleOutPolicy
= AutoScalingProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), maxWorkerCount :: Value Integer
maxWorkerCount = Value Integer
maxWorkerCount,
mcuCount :: Value Integer
mcuCount = Value Integer
mcuCount, minWorkerCount :: Value Integer
minWorkerCount = Value Integer
minWorkerCount,
scaleInPolicy :: ScaleInPolicyProperty
scaleInPolicy = ScaleInPolicyProperty
scaleInPolicy, scaleOutPolicy :: ScaleOutPolicyProperty
scaleOutPolicy = ScaleOutPolicyProperty
scaleOutPolicy}
instance ToResourceProperties AutoScalingProperty where
toResourceProperties :: AutoScalingProperty -> ResourceProperties
toResourceProperties AutoScalingProperty {()
Value Integer
ScaleInPolicyProperty
ScaleOutPolicyProperty
haddock_workaround_ :: AutoScalingProperty -> ()
maxWorkerCount :: AutoScalingProperty -> Value Integer
mcuCount :: AutoScalingProperty -> Value Integer
minWorkerCount :: AutoScalingProperty -> Value Integer
scaleInPolicy :: AutoScalingProperty -> ScaleInPolicyProperty
scaleOutPolicy :: AutoScalingProperty -> ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::KafkaConnect::Connector.AutoScaling",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Key
"MaxWorkerCount" Key -> Value Integer -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Integer
maxWorkerCount,
Key
"McuCount" Key -> Value Integer -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Integer
mcuCount,
Key
"MinWorkerCount" Key -> Value Integer -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Integer
minWorkerCount,
Key
"ScaleInPolicy" Key -> ScaleInPolicyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ScaleInPolicyProperty
scaleInPolicy,
Key
"ScaleOutPolicy" Key -> ScaleOutPolicyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ScaleOutPolicyProperty
scaleOutPolicy]}
instance JSON.ToJSON AutoScalingProperty where
toJSON :: AutoScalingProperty -> Value
toJSON AutoScalingProperty {()
Value Integer
ScaleInPolicyProperty
ScaleOutPolicyProperty
haddock_workaround_ :: AutoScalingProperty -> ()
maxWorkerCount :: AutoScalingProperty -> Value Integer
mcuCount :: AutoScalingProperty -> Value Integer
minWorkerCount :: AutoScalingProperty -> Value Integer
scaleInPolicy :: AutoScalingProperty -> ScaleInPolicyProperty
scaleOutPolicy :: AutoScalingProperty -> ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
..}
= [(Key, Value)] -> Value
JSON.object
[Key
"MaxWorkerCount" Key -> Value Integer -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Integer
maxWorkerCount,
Key
"McuCount" Key -> Value Integer -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Integer
mcuCount,
Key
"MinWorkerCount" Key -> Value Integer -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Integer
minWorkerCount,
Key
"ScaleInPolicy" Key -> ScaleInPolicyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ScaleInPolicyProperty
scaleInPolicy,
Key
"ScaleOutPolicy" Key -> ScaleOutPolicyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ScaleOutPolicyProperty
scaleOutPolicy]
instance Property "MaxWorkerCount" AutoScalingProperty where
type PropertyType "MaxWorkerCount" AutoScalingProperty = Value Prelude.Integer
set :: PropertyType "MaxWorkerCount" AutoScalingProperty
-> AutoScalingProperty -> AutoScalingProperty
set PropertyType "MaxWorkerCount" AutoScalingProperty
newValue AutoScalingProperty {()
Value Integer
ScaleInPolicyProperty
ScaleOutPolicyProperty
haddock_workaround_ :: AutoScalingProperty -> ()
maxWorkerCount :: AutoScalingProperty -> Value Integer
mcuCount :: AutoScalingProperty -> Value Integer
minWorkerCount :: AutoScalingProperty -> Value Integer
scaleInPolicy :: AutoScalingProperty -> ScaleInPolicyProperty
scaleOutPolicy :: AutoScalingProperty -> ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
..}
= AutoScalingProperty {maxWorkerCount :: Value Integer
maxWorkerCount = PropertyType "MaxWorkerCount" AutoScalingProperty
Value Integer
newValue, ()
Value Integer
ScaleInPolicyProperty
ScaleOutPolicyProperty
haddock_workaround_ :: ()
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
haddock_workaround_ :: ()
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
..}
instance Property "McuCount" AutoScalingProperty where
type PropertyType "McuCount" AutoScalingProperty = Value Prelude.Integer
set :: PropertyType "McuCount" AutoScalingProperty
-> AutoScalingProperty -> AutoScalingProperty
set PropertyType "McuCount" AutoScalingProperty
newValue AutoScalingProperty {()
Value Integer
ScaleInPolicyProperty
ScaleOutPolicyProperty
haddock_workaround_ :: AutoScalingProperty -> ()
maxWorkerCount :: AutoScalingProperty -> Value Integer
mcuCount :: AutoScalingProperty -> Value Integer
minWorkerCount :: AutoScalingProperty -> Value Integer
scaleInPolicy :: AutoScalingProperty -> ScaleInPolicyProperty
scaleOutPolicy :: AutoScalingProperty -> ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
..}
= AutoScalingProperty {mcuCount :: Value Integer
mcuCount = PropertyType "McuCount" AutoScalingProperty
Value Integer
newValue, ()
Value Integer
ScaleInPolicyProperty
ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
..}
instance Property "MinWorkerCount" AutoScalingProperty where
type PropertyType "MinWorkerCount" AutoScalingProperty = Value Prelude.Integer
set :: PropertyType "MinWorkerCount" AutoScalingProperty
-> AutoScalingProperty -> AutoScalingProperty
set PropertyType "MinWorkerCount" AutoScalingProperty
newValue AutoScalingProperty {()
Value Integer
ScaleInPolicyProperty
ScaleOutPolicyProperty
haddock_workaround_ :: AutoScalingProperty -> ()
maxWorkerCount :: AutoScalingProperty -> Value Integer
mcuCount :: AutoScalingProperty -> Value Integer
minWorkerCount :: AutoScalingProperty -> Value Integer
scaleInPolicy :: AutoScalingProperty -> ScaleInPolicyProperty
scaleOutPolicy :: AutoScalingProperty -> ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
..}
= AutoScalingProperty {minWorkerCount :: Value Integer
minWorkerCount = PropertyType "MinWorkerCount" AutoScalingProperty
Value Integer
newValue, ()
Value Integer
ScaleInPolicyProperty
ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
..}
instance Property "ScaleInPolicy" AutoScalingProperty where
type PropertyType "ScaleInPolicy" AutoScalingProperty = ScaleInPolicyProperty
set :: PropertyType "ScaleInPolicy" AutoScalingProperty
-> AutoScalingProperty -> AutoScalingProperty
set PropertyType "ScaleInPolicy" AutoScalingProperty
newValue AutoScalingProperty {()
Value Integer
ScaleInPolicyProperty
ScaleOutPolicyProperty
haddock_workaround_ :: AutoScalingProperty -> ()
maxWorkerCount :: AutoScalingProperty -> Value Integer
mcuCount :: AutoScalingProperty -> Value Integer
minWorkerCount :: AutoScalingProperty -> Value Integer
scaleInPolicy :: AutoScalingProperty -> ScaleInPolicyProperty
scaleOutPolicy :: AutoScalingProperty -> ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
..}
= AutoScalingProperty {scaleInPolicy :: ScaleInPolicyProperty
scaleInPolicy = PropertyType "ScaleInPolicy" AutoScalingProperty
ScaleInPolicyProperty
newValue, ()
Value Integer
ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleOutPolicy :: ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleOutPolicy :: ScaleOutPolicyProperty
..}
instance Property "ScaleOutPolicy" AutoScalingProperty where
type PropertyType "ScaleOutPolicy" AutoScalingProperty = ScaleOutPolicyProperty
set :: PropertyType "ScaleOutPolicy" AutoScalingProperty
-> AutoScalingProperty -> AutoScalingProperty
set PropertyType "ScaleOutPolicy" AutoScalingProperty
newValue AutoScalingProperty {()
Value Integer
ScaleInPolicyProperty
ScaleOutPolicyProperty
haddock_workaround_ :: AutoScalingProperty -> ()
maxWorkerCount :: AutoScalingProperty -> Value Integer
mcuCount :: AutoScalingProperty -> Value Integer
minWorkerCount :: AutoScalingProperty -> Value Integer
scaleInPolicy :: AutoScalingProperty -> ScaleInPolicyProperty
scaleOutPolicy :: AutoScalingProperty -> ScaleOutPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
scaleOutPolicy :: ScaleOutPolicyProperty
..}
= AutoScalingProperty {scaleOutPolicy :: ScaleOutPolicyProperty
scaleOutPolicy = PropertyType "ScaleOutPolicy" AutoScalingProperty
ScaleOutPolicyProperty
newValue, ()
Value Integer
ScaleInPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
haddock_workaround_ :: ()
maxWorkerCount :: Value Integer
mcuCount :: Value Integer
minWorkerCount :: Value Integer
scaleInPolicy :: ScaleInPolicyProperty
..}