module Network.AWS.OpsWorks.DescribeLoadBasedAutoScaling
(
DescribeLoadBasedAutoScaling
, describeLoadBasedAutoScaling
, dlbasLayerIds
, DescribeLoadBasedAutoScalingResponse
, describeLoadBasedAutoScalingResponse
, dlbasrLoadBasedAutoScalingConfigurations
) where
import Network.AWS.Prelude
import Network.AWS.Request.JSON
import Network.AWS.OpsWorks.Types
import qualified GHC.Exts
newtype DescribeLoadBasedAutoScaling = DescribeLoadBasedAutoScaling
{ _dlbasLayerIds :: List "InstanceIds" Text
} deriving (Eq, Ord, Show, Monoid, Semigroup)
instance GHC.Exts.IsList DescribeLoadBasedAutoScaling where
type Item DescribeLoadBasedAutoScaling = Text
fromList = DescribeLoadBasedAutoScaling . GHC.Exts.fromList
toList = GHC.Exts.toList . _dlbasLayerIds
describeLoadBasedAutoScaling :: DescribeLoadBasedAutoScaling
describeLoadBasedAutoScaling = DescribeLoadBasedAutoScaling
{ _dlbasLayerIds = mempty
}
dlbasLayerIds :: Lens' DescribeLoadBasedAutoScaling [Text]
dlbasLayerIds = lens _dlbasLayerIds (\s a -> s { _dlbasLayerIds = a }) . _List
newtype DescribeLoadBasedAutoScalingResponse = DescribeLoadBasedAutoScalingResponse
{ _dlbasrLoadBasedAutoScalingConfigurations :: List "LoadBasedAutoScalingConfigurations" LoadBasedAutoScalingConfiguration
} deriving (Eq, Show, Monoid, Semigroup)
instance GHC.Exts.IsList DescribeLoadBasedAutoScalingResponse where
type Item DescribeLoadBasedAutoScalingResponse = LoadBasedAutoScalingConfiguration
fromList = DescribeLoadBasedAutoScalingResponse . GHC.Exts.fromList
toList = GHC.Exts.toList . _dlbasrLoadBasedAutoScalingConfigurations
describeLoadBasedAutoScalingResponse :: DescribeLoadBasedAutoScalingResponse
describeLoadBasedAutoScalingResponse = DescribeLoadBasedAutoScalingResponse
{ _dlbasrLoadBasedAutoScalingConfigurations = mempty
}
dlbasrLoadBasedAutoScalingConfigurations :: Lens' DescribeLoadBasedAutoScalingResponse [LoadBasedAutoScalingConfiguration]
dlbasrLoadBasedAutoScalingConfigurations =
lens _dlbasrLoadBasedAutoScalingConfigurations
(\s a -> s { _dlbasrLoadBasedAutoScalingConfigurations = a })
. _List
instance ToPath DescribeLoadBasedAutoScaling where
toPath = const "/"
instance ToQuery DescribeLoadBasedAutoScaling where
toQuery = const mempty
instance ToHeaders DescribeLoadBasedAutoScaling
instance ToJSON DescribeLoadBasedAutoScaling where
toJSON DescribeLoadBasedAutoScaling{..} = object
[ "LayerIds" .= _dlbasLayerIds
]
instance AWSRequest DescribeLoadBasedAutoScaling where
type Sv DescribeLoadBasedAutoScaling = OpsWorks
type Rs DescribeLoadBasedAutoScaling = DescribeLoadBasedAutoScalingResponse
request = post "DescribeLoadBasedAutoScaling"
response = jsonResponse
instance FromJSON DescribeLoadBasedAutoScalingResponse where
parseJSON = withObject "DescribeLoadBasedAutoScalingResponse" $ \o -> DescribeLoadBasedAutoScalingResponse
<$> o .: "LoadBasedAutoScalingConfigurations"