stratosphere-0.39.0: library-gen/Stratosphere/ResourceProperties/PinpointCampaignCampaignEmailMessage.hs
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TupleSections #-}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html
module Stratosphere.ResourceProperties.PinpointCampaignCampaignEmailMessage where
import Stratosphere.ResourceImports
-- | Full data type definition for PinpointCampaignCampaignEmailMessage. See
-- 'pinpointCampaignCampaignEmailMessage' for a more convenient constructor.
data PinpointCampaignCampaignEmailMessage =
PinpointCampaignCampaignEmailMessage
{ _pinpointCampaignCampaignEmailMessageBody :: Maybe (Val Text)
, _pinpointCampaignCampaignEmailMessageFromAddress :: Maybe (Val Text)
, _pinpointCampaignCampaignEmailMessageHtmlBody :: Maybe (Val Text)
, _pinpointCampaignCampaignEmailMessageTitle :: Maybe (Val Text)
} deriving (Show, Eq)
instance ToJSON PinpointCampaignCampaignEmailMessage where
toJSON PinpointCampaignCampaignEmailMessage{..} =
object $
catMaybes
[ fmap (("Body",) . toJSON) _pinpointCampaignCampaignEmailMessageBody
, fmap (("FromAddress",) . toJSON) _pinpointCampaignCampaignEmailMessageFromAddress
, fmap (("HtmlBody",) . toJSON) _pinpointCampaignCampaignEmailMessageHtmlBody
, fmap (("Title",) . toJSON) _pinpointCampaignCampaignEmailMessageTitle
]
-- | Constructor for 'PinpointCampaignCampaignEmailMessage' containing
-- required fields as arguments.
pinpointCampaignCampaignEmailMessage
:: PinpointCampaignCampaignEmailMessage
pinpointCampaignCampaignEmailMessage =
PinpointCampaignCampaignEmailMessage
{ _pinpointCampaignCampaignEmailMessageBody = Nothing
, _pinpointCampaignCampaignEmailMessageFromAddress = Nothing
, _pinpointCampaignCampaignEmailMessageHtmlBody = Nothing
, _pinpointCampaignCampaignEmailMessageTitle = Nothing
}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html#cfn-pinpoint-campaign-campaignemailmessage-body
pccemBody :: Lens' PinpointCampaignCampaignEmailMessage (Maybe (Val Text))
pccemBody = lens _pinpointCampaignCampaignEmailMessageBody (\s a -> s { _pinpointCampaignCampaignEmailMessageBody = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html#cfn-pinpoint-campaign-campaignemailmessage-fromaddress
pccemFromAddress :: Lens' PinpointCampaignCampaignEmailMessage (Maybe (Val Text))
pccemFromAddress = lens _pinpointCampaignCampaignEmailMessageFromAddress (\s a -> s { _pinpointCampaignCampaignEmailMessageFromAddress = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html#cfn-pinpoint-campaign-campaignemailmessage-htmlbody
pccemHtmlBody :: Lens' PinpointCampaignCampaignEmailMessage (Maybe (Val Text))
pccemHtmlBody = lens _pinpointCampaignCampaignEmailMessageHtmlBody (\s a -> s { _pinpointCampaignCampaignEmailMessageHtmlBody = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html#cfn-pinpoint-campaign-campaignemailmessage-title
pccemTitle :: Lens' PinpointCampaignCampaignEmailMessage (Maybe (Val Text))
pccemTitle = lens _pinpointCampaignCampaignEmailMessageTitle (\s a -> s { _pinpointCampaignCampaignEmailMessageTitle = a })