stratosphere-0.33.0: library-gen/Stratosphere/Resources/AppStreamStackFleetAssociation.hs
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TupleSections #-}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html
module Stratosphere.Resources.AppStreamStackFleetAssociation where
import Stratosphere.ResourceImports
-- | Full data type definition for AppStreamStackFleetAssociation. See
-- 'appStreamStackFleetAssociation' for a more convenient constructor.
data AppStreamStackFleetAssociation =
AppStreamStackFleetAssociation
{ _appStreamStackFleetAssociationFleetName :: Val Text
, _appStreamStackFleetAssociationStackName :: Val Text
} deriving (Show, Eq)
instance ToResourceProperties AppStreamStackFleetAssociation where
toResourceProperties AppStreamStackFleetAssociation{..} =
ResourceProperties
{ resourcePropertiesType = "AWS::AppStream::StackFleetAssociation"
, resourcePropertiesProperties =
hashMapFromList $ catMaybes
[ (Just . ("FleetName",) . toJSON) _appStreamStackFleetAssociationFleetName
, (Just . ("StackName",) . toJSON) _appStreamStackFleetAssociationStackName
]
}
-- | Constructor for 'AppStreamStackFleetAssociation' containing required
-- fields as arguments.
appStreamStackFleetAssociation
:: Val Text -- ^ 'assfaFleetName'
-> Val Text -- ^ 'assfaStackName'
-> AppStreamStackFleetAssociation
appStreamStackFleetAssociation fleetNamearg stackNamearg =
AppStreamStackFleetAssociation
{ _appStreamStackFleetAssociationFleetName = fleetNamearg
, _appStreamStackFleetAssociationStackName = stackNamearg
}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html#cfn-appstream-stackfleetassociation-fleetname
assfaFleetName :: Lens' AppStreamStackFleetAssociation (Val Text)
assfaFleetName = lens _appStreamStackFleetAssociationFleetName (\s a -> s { _appStreamStackFleetAssociationFleetName = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html#cfn-appstream-stackfleetassociation-stackname
assfaStackName :: Lens' AppStreamStackFleetAssociation (Val Text)
assfaStackName = lens _appStreamStackFleetAssociationStackName (\s a -> s { _appStreamStackFleetAssociationStackName = a })