module Network.AWS.CloudFormation.Types.Product where
import Network.AWS.CloudFormation.Types.Sum
import Network.AWS.Prelude
data Output = Output'
{ _oOutputValue :: !(Maybe Text)
, _oOutputKey :: !(Maybe Text)
, _oDescription :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
output
:: Output
output =
Output'
{ _oOutputValue = Nothing
, _oOutputKey = Nothing
, _oDescription = Nothing
}
oOutputValue :: Lens' Output (Maybe Text)
oOutputValue = lens _oOutputValue (\ s a -> s{_oOutputValue = a});
oOutputKey :: Lens' Output (Maybe Text)
oOutputKey = lens _oOutputKey (\ s a -> s{_oOutputKey = a});
oDescription :: Lens' Output (Maybe Text)
oDescription = lens _oDescription (\ s a -> s{_oDescription = a});
instance FromXML Output where
parseXML x
= Output' <$>
(x .@? "OutputValue") <*> (x .@? "OutputKey") <*>
(x .@? "Description")
data Parameter = Parameter'
{ _pParameterValue :: !(Maybe Text)
, _pParameterKey :: !(Maybe Text)
, _pUsePreviousValue :: !(Maybe Bool)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
parameter
:: Parameter
parameter =
Parameter'
{ _pParameterValue = Nothing
, _pParameterKey = Nothing
, _pUsePreviousValue = Nothing
}
pParameterValue :: Lens' Parameter (Maybe Text)
pParameterValue = lens _pParameterValue (\ s a -> s{_pParameterValue = a});
pParameterKey :: Lens' Parameter (Maybe Text)
pParameterKey = lens _pParameterKey (\ s a -> s{_pParameterKey = a});
pUsePreviousValue :: Lens' Parameter (Maybe Bool)
pUsePreviousValue = lens _pUsePreviousValue (\ s a -> s{_pUsePreviousValue = a});
instance FromXML Parameter where
parseXML x
= Parameter' <$>
(x .@? "ParameterValue") <*> (x .@? "ParameterKey")
<*> (x .@? "UsePreviousValue")
instance ToQuery Parameter where
toQuery Parameter'{..}
= mconcat
["ParameterValue" =: _pParameterValue,
"ParameterKey" =: _pParameterKey,
"UsePreviousValue" =: _pUsePreviousValue]
newtype ParameterConstraints = ParameterConstraints'
{ _pcAllowedValues :: Maybe [Text]
} deriving (Eq,Read,Show,Data,Typeable,Generic)
parameterConstraints
:: ParameterConstraints
parameterConstraints =
ParameterConstraints'
{ _pcAllowedValues = Nothing
}
pcAllowedValues :: Lens' ParameterConstraints [Text]
pcAllowedValues = lens _pcAllowedValues (\ s a -> s{_pcAllowedValues = a}) . _Default . _Coerce;
instance FromXML ParameterConstraints where
parseXML x
= ParameterConstraints' <$>
(x .@? "AllowedValues" .!@ mempty >>=
may (parseXMLList "member"))
data ParameterDeclaration = ParameterDeclaration'
{ _pdParameterKey :: !(Maybe Text)
, _pdParameterType :: !(Maybe Text)
, _pdParameterConstraints :: !(Maybe ParameterConstraints)
, _pdDefaultValue :: !(Maybe Text)
, _pdNoEcho :: !(Maybe Bool)
, _pdDescription :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
parameterDeclaration
:: ParameterDeclaration
parameterDeclaration =
ParameterDeclaration'
{ _pdParameterKey = Nothing
, _pdParameterType = Nothing
, _pdParameterConstraints = Nothing
, _pdDefaultValue = Nothing
, _pdNoEcho = Nothing
, _pdDescription = Nothing
}
pdParameterKey :: Lens' ParameterDeclaration (Maybe Text)
pdParameterKey = lens _pdParameterKey (\ s a -> s{_pdParameterKey = a});
pdParameterType :: Lens' ParameterDeclaration (Maybe Text)
pdParameterType = lens _pdParameterType (\ s a -> s{_pdParameterType = a});
pdParameterConstraints :: Lens' ParameterDeclaration (Maybe ParameterConstraints)
pdParameterConstraints = lens _pdParameterConstraints (\ s a -> s{_pdParameterConstraints = a});
pdDefaultValue :: Lens' ParameterDeclaration (Maybe Text)
pdDefaultValue = lens _pdDefaultValue (\ s a -> s{_pdDefaultValue = a});
pdNoEcho :: Lens' ParameterDeclaration (Maybe Bool)
pdNoEcho = lens _pdNoEcho (\ s a -> s{_pdNoEcho = a});
pdDescription :: Lens' ParameterDeclaration (Maybe Text)
pdDescription = lens _pdDescription (\ s a -> s{_pdDescription = a});
instance FromXML ParameterDeclaration where
parseXML x
= ParameterDeclaration' <$>
(x .@? "ParameterKey") <*> (x .@? "ParameterType")
<*> (x .@? "ParameterConstraints")
<*> (x .@? "DefaultValue")
<*> (x .@? "NoEcho")
<*> (x .@? "Description")
data Stack = Stack'
{ _sDisableRollback :: !(Maybe Bool)
, _sLastUpdatedTime :: !(Maybe ISO8601)
, _sNotificationARNs :: !(Maybe [Text])
, _sStackStatusReason :: !(Maybe Text)
, _sOutputs :: !(Maybe [Output])
, _sParameters :: !(Maybe [Parameter])
, _sStackId :: !(Maybe Text)
, _sCapabilities :: !(Maybe [Capability])
, _sDescription :: !(Maybe Text)
, _sTags :: !(Maybe [Tag])
, _sTimeoutInMinutes :: !(Maybe Nat)
, _sStackName :: !Text
, _sCreationTime :: !ISO8601
, _sStackStatus :: !StackStatus
} deriving (Eq,Read,Show,Data,Typeable,Generic)
stack
:: Text
-> UTCTime
-> StackStatus
-> Stack
stack pStackName_ pCreationTime_ pStackStatus_ =
Stack'
{ _sDisableRollback = Nothing
, _sLastUpdatedTime = Nothing
, _sNotificationARNs = Nothing
, _sStackStatusReason = Nothing
, _sOutputs = Nothing
, _sParameters = Nothing
, _sStackId = Nothing
, _sCapabilities = Nothing
, _sDescription = Nothing
, _sTags = Nothing
, _sTimeoutInMinutes = Nothing
, _sStackName = pStackName_
, _sCreationTime = _Time # pCreationTime_
, _sStackStatus = pStackStatus_
}
sDisableRollback :: Lens' Stack (Maybe Bool)
sDisableRollback = lens _sDisableRollback (\ s a -> s{_sDisableRollback = a});
sLastUpdatedTime :: Lens' Stack (Maybe UTCTime)
sLastUpdatedTime = lens _sLastUpdatedTime (\ s a -> s{_sLastUpdatedTime = a}) . mapping _Time;
sNotificationARNs :: Lens' Stack [Text]
sNotificationARNs = lens _sNotificationARNs (\ s a -> s{_sNotificationARNs = a}) . _Default . _Coerce;
sStackStatusReason :: Lens' Stack (Maybe Text)
sStackStatusReason = lens _sStackStatusReason (\ s a -> s{_sStackStatusReason = a});
sOutputs :: Lens' Stack [Output]
sOutputs = lens _sOutputs (\ s a -> s{_sOutputs = a}) . _Default . _Coerce;
sParameters :: Lens' Stack [Parameter]
sParameters = lens _sParameters (\ s a -> s{_sParameters = a}) . _Default . _Coerce;
sStackId :: Lens' Stack (Maybe Text)
sStackId = lens _sStackId (\ s a -> s{_sStackId = a});
sCapabilities :: Lens' Stack [Capability]
sCapabilities = lens _sCapabilities (\ s a -> s{_sCapabilities = a}) . _Default . _Coerce;
sDescription :: Lens' Stack (Maybe Text)
sDescription = lens _sDescription (\ s a -> s{_sDescription = a});
sTags :: Lens' Stack [Tag]
sTags = lens _sTags (\ s a -> s{_sTags = a}) . _Default . _Coerce;
sTimeoutInMinutes :: Lens' Stack (Maybe Natural)
sTimeoutInMinutes = lens _sTimeoutInMinutes (\ s a -> s{_sTimeoutInMinutes = a}) . mapping _Nat;
sStackName :: Lens' Stack Text
sStackName = lens _sStackName (\ s a -> s{_sStackName = a});
sCreationTime :: Lens' Stack UTCTime
sCreationTime = lens _sCreationTime (\ s a -> s{_sCreationTime = a}) . _Time;
sStackStatus :: Lens' Stack StackStatus
sStackStatus = lens _sStackStatus (\ s a -> s{_sStackStatus = a});
instance FromXML Stack where
parseXML x
= Stack' <$>
(x .@? "DisableRollback") <*>
(x .@? "LastUpdatedTime")
<*>
(x .@? "NotificationARNs" .!@ mempty >>=
may (parseXMLList "member"))
<*> (x .@? "StackStatusReason")
<*>
(x .@? "Outputs" .!@ mempty >>=
may (parseXMLList "member"))
<*>
(x .@? "Parameters" .!@ mempty >>=
may (parseXMLList "member"))
<*> (x .@? "StackId")
<*>
(x .@? "Capabilities" .!@ mempty >>=
may (parseXMLList "member"))
<*> (x .@? "Description")
<*>
(x .@? "Tags" .!@ mempty >>=
may (parseXMLList "member"))
<*> (x .@? "TimeoutInMinutes")
<*> (x .@ "StackName")
<*> (x .@ "CreationTime")
<*> (x .@ "StackStatus")
data StackEvent = StackEvent'
{ _seLogicalResourceId :: !(Maybe Text)
, _seResourceStatusReason :: !(Maybe Text)
, _seResourceType :: !(Maybe Text)
, _sePhysicalResourceId :: !(Maybe Text)
, _seResourceProperties :: !(Maybe Text)
, _seResourceStatus :: !(Maybe ResourceStatus)
, _seStackId :: !Text
, _seEventId :: !Text
, _seStackName :: !Text
, _seTimestamp :: !ISO8601
} deriving (Eq,Read,Show,Data,Typeable,Generic)
stackEvent
:: Text
-> Text
-> Text
-> UTCTime
-> StackEvent
stackEvent pStackId_ pEventId_ pStackName_ pTimestamp_ =
StackEvent'
{ _seLogicalResourceId = Nothing
, _seResourceStatusReason = Nothing
, _seResourceType = Nothing
, _sePhysicalResourceId = Nothing
, _seResourceProperties = Nothing
, _seResourceStatus = Nothing
, _seStackId = pStackId_
, _seEventId = pEventId_
, _seStackName = pStackName_
, _seTimestamp = _Time # pTimestamp_
}
seLogicalResourceId :: Lens' StackEvent (Maybe Text)
seLogicalResourceId = lens _seLogicalResourceId (\ s a -> s{_seLogicalResourceId = a});
seResourceStatusReason :: Lens' StackEvent (Maybe Text)
seResourceStatusReason = lens _seResourceStatusReason (\ s a -> s{_seResourceStatusReason = a});
seResourceType :: Lens' StackEvent (Maybe Text)
seResourceType = lens _seResourceType (\ s a -> s{_seResourceType = a});
sePhysicalResourceId :: Lens' StackEvent (Maybe Text)
sePhysicalResourceId = lens _sePhysicalResourceId (\ s a -> s{_sePhysicalResourceId = a});
seResourceProperties :: Lens' StackEvent (Maybe Text)
seResourceProperties = lens _seResourceProperties (\ s a -> s{_seResourceProperties = a});
seResourceStatus :: Lens' StackEvent (Maybe ResourceStatus)
seResourceStatus = lens _seResourceStatus (\ s a -> s{_seResourceStatus = a});
seStackId :: Lens' StackEvent Text
seStackId = lens _seStackId (\ s a -> s{_seStackId = a});
seEventId :: Lens' StackEvent Text
seEventId = lens _seEventId (\ s a -> s{_seEventId = a});
seStackName :: Lens' StackEvent Text
seStackName = lens _seStackName (\ s a -> s{_seStackName = a});
seTimestamp :: Lens' StackEvent UTCTime
seTimestamp = lens _seTimestamp (\ s a -> s{_seTimestamp = a}) . _Time;
instance FromXML StackEvent where
parseXML x
= StackEvent' <$>
(x .@? "LogicalResourceId") <*>
(x .@? "ResourceStatusReason")
<*> (x .@? "ResourceType")
<*> (x .@? "PhysicalResourceId")
<*> (x .@? "ResourceProperties")
<*> (x .@? "ResourceStatus")
<*> (x .@ "StackId")
<*> (x .@ "EventId")
<*> (x .@ "StackName")
<*> (x .@ "Timestamp")
data StackResource = StackResource'
{ _srResourceStatusReason :: !(Maybe Text)
, _srPhysicalResourceId :: !(Maybe Text)
, _srStackId :: !(Maybe Text)
, _srDescription :: !(Maybe Text)
, _srStackName :: !(Maybe Text)
, _srLogicalResourceId :: !Text
, _srResourceType :: !Text
, _srTimestamp :: !ISO8601
, _srResourceStatus :: !ResourceStatus
} deriving (Eq,Read,Show,Data,Typeable,Generic)
stackResource
:: Text
-> Text
-> UTCTime
-> ResourceStatus
-> StackResource
stackResource pLogicalResourceId_ pResourceType_ pTimestamp_ pResourceStatus_ =
StackResource'
{ _srResourceStatusReason = Nothing
, _srPhysicalResourceId = Nothing
, _srStackId = Nothing
, _srDescription = Nothing
, _srStackName = Nothing
, _srLogicalResourceId = pLogicalResourceId_
, _srResourceType = pResourceType_
, _srTimestamp = _Time # pTimestamp_
, _srResourceStatus = pResourceStatus_
}
srResourceStatusReason :: Lens' StackResource (Maybe Text)
srResourceStatusReason = lens _srResourceStatusReason (\ s a -> s{_srResourceStatusReason = a});
srPhysicalResourceId :: Lens' StackResource (Maybe Text)
srPhysicalResourceId = lens _srPhysicalResourceId (\ s a -> s{_srPhysicalResourceId = a});
srStackId :: Lens' StackResource (Maybe Text)
srStackId = lens _srStackId (\ s a -> s{_srStackId = a});
srDescription :: Lens' StackResource (Maybe Text)
srDescription = lens _srDescription (\ s a -> s{_srDescription = a});
srStackName :: Lens' StackResource (Maybe Text)
srStackName = lens _srStackName (\ s a -> s{_srStackName = a});
srLogicalResourceId :: Lens' StackResource Text
srLogicalResourceId = lens _srLogicalResourceId (\ s a -> s{_srLogicalResourceId = a});
srResourceType :: Lens' StackResource Text
srResourceType = lens _srResourceType (\ s a -> s{_srResourceType = a});
srTimestamp :: Lens' StackResource UTCTime
srTimestamp = lens _srTimestamp (\ s a -> s{_srTimestamp = a}) . _Time;
srResourceStatus :: Lens' StackResource ResourceStatus
srResourceStatus = lens _srResourceStatus (\ s a -> s{_srResourceStatus = a});
instance FromXML StackResource where
parseXML x
= StackResource' <$>
(x .@? "ResourceStatusReason") <*>
(x .@? "PhysicalResourceId")
<*> (x .@? "StackId")
<*> (x .@? "Description")
<*> (x .@? "StackName")
<*> (x .@ "LogicalResourceId")
<*> (x .@ "ResourceType")
<*> (x .@ "Timestamp")
<*> (x .@ "ResourceStatus")
data StackResourceDetail = StackResourceDetail'
{ _srdResourceStatusReason :: !(Maybe Text)
, _srdPhysicalResourceId :: !(Maybe Text)
, _srdMetadata :: !(Maybe Text)
, _srdStackId :: !(Maybe Text)
, _srdDescription :: !(Maybe Text)
, _srdStackName :: !(Maybe Text)
, _srdLogicalResourceId :: !Text
, _srdResourceType :: !Text
, _srdLastUpdatedTimestamp :: !ISO8601
, _srdResourceStatus :: !ResourceStatus
} deriving (Eq,Read,Show,Data,Typeable,Generic)
stackResourceDetail
:: Text
-> Text
-> UTCTime
-> ResourceStatus
-> StackResourceDetail
stackResourceDetail pLogicalResourceId_ pResourceType_ pLastUpdatedTimestamp_ pResourceStatus_ =
StackResourceDetail'
{ _srdResourceStatusReason = Nothing
, _srdPhysicalResourceId = Nothing
, _srdMetadata = Nothing
, _srdStackId = Nothing
, _srdDescription = Nothing
, _srdStackName = Nothing
, _srdLogicalResourceId = pLogicalResourceId_
, _srdResourceType = pResourceType_
, _srdLastUpdatedTimestamp = _Time # pLastUpdatedTimestamp_
, _srdResourceStatus = pResourceStatus_
}
srdResourceStatusReason :: Lens' StackResourceDetail (Maybe Text)
srdResourceStatusReason = lens _srdResourceStatusReason (\ s a -> s{_srdResourceStatusReason = a});
srdPhysicalResourceId :: Lens' StackResourceDetail (Maybe Text)
srdPhysicalResourceId = lens _srdPhysicalResourceId (\ s a -> s{_srdPhysicalResourceId = a});
srdMetadata :: Lens' StackResourceDetail (Maybe Text)
srdMetadata = lens _srdMetadata (\ s a -> s{_srdMetadata = a});
srdStackId :: Lens' StackResourceDetail (Maybe Text)
srdStackId = lens _srdStackId (\ s a -> s{_srdStackId = a});
srdDescription :: Lens' StackResourceDetail (Maybe Text)
srdDescription = lens _srdDescription (\ s a -> s{_srdDescription = a});
srdStackName :: Lens' StackResourceDetail (Maybe Text)
srdStackName = lens _srdStackName (\ s a -> s{_srdStackName = a});
srdLogicalResourceId :: Lens' StackResourceDetail Text
srdLogicalResourceId = lens _srdLogicalResourceId (\ s a -> s{_srdLogicalResourceId = a});
srdResourceType :: Lens' StackResourceDetail Text
srdResourceType = lens _srdResourceType (\ s a -> s{_srdResourceType = a});
srdLastUpdatedTimestamp :: Lens' StackResourceDetail UTCTime
srdLastUpdatedTimestamp = lens _srdLastUpdatedTimestamp (\ s a -> s{_srdLastUpdatedTimestamp = a}) . _Time;
srdResourceStatus :: Lens' StackResourceDetail ResourceStatus
srdResourceStatus = lens _srdResourceStatus (\ s a -> s{_srdResourceStatus = a});
instance FromXML StackResourceDetail where
parseXML x
= StackResourceDetail' <$>
(x .@? "ResourceStatusReason") <*>
(x .@? "PhysicalResourceId")
<*> (x .@? "Metadata")
<*> (x .@? "StackId")
<*> (x .@? "Description")
<*> (x .@? "StackName")
<*> (x .@ "LogicalResourceId")
<*> (x .@ "ResourceType")
<*> (x .@ "LastUpdatedTimestamp")
<*> (x .@ "ResourceStatus")
data StackResourceSummary = StackResourceSummary'
{ _srsResourceStatusReason :: !(Maybe Text)
, _srsPhysicalResourceId :: !(Maybe Text)
, _srsLogicalResourceId :: !Text
, _srsResourceType :: !Text
, _srsLastUpdatedTimestamp :: !ISO8601
, _srsResourceStatus :: !ResourceStatus
} deriving (Eq,Read,Show,Data,Typeable,Generic)
stackResourceSummary
:: Text
-> Text
-> UTCTime
-> ResourceStatus
-> StackResourceSummary
stackResourceSummary pLogicalResourceId_ pResourceType_ pLastUpdatedTimestamp_ pResourceStatus_ =
StackResourceSummary'
{ _srsResourceStatusReason = Nothing
, _srsPhysicalResourceId = Nothing
, _srsLogicalResourceId = pLogicalResourceId_
, _srsResourceType = pResourceType_
, _srsLastUpdatedTimestamp = _Time # pLastUpdatedTimestamp_
, _srsResourceStatus = pResourceStatus_
}
srsResourceStatusReason :: Lens' StackResourceSummary (Maybe Text)
srsResourceStatusReason = lens _srsResourceStatusReason (\ s a -> s{_srsResourceStatusReason = a});
srsPhysicalResourceId :: Lens' StackResourceSummary (Maybe Text)
srsPhysicalResourceId = lens _srsPhysicalResourceId (\ s a -> s{_srsPhysicalResourceId = a});
srsLogicalResourceId :: Lens' StackResourceSummary Text
srsLogicalResourceId = lens _srsLogicalResourceId (\ s a -> s{_srsLogicalResourceId = a});
srsResourceType :: Lens' StackResourceSummary Text
srsResourceType = lens _srsResourceType (\ s a -> s{_srsResourceType = a});
srsLastUpdatedTimestamp :: Lens' StackResourceSummary UTCTime
srsLastUpdatedTimestamp = lens _srsLastUpdatedTimestamp (\ s a -> s{_srsLastUpdatedTimestamp = a}) . _Time;
srsResourceStatus :: Lens' StackResourceSummary ResourceStatus
srsResourceStatus = lens _srsResourceStatus (\ s a -> s{_srsResourceStatus = a});
instance FromXML StackResourceSummary where
parseXML x
= StackResourceSummary' <$>
(x .@? "ResourceStatusReason") <*>
(x .@? "PhysicalResourceId")
<*> (x .@ "LogicalResourceId")
<*> (x .@ "ResourceType")
<*> (x .@ "LastUpdatedTimestamp")
<*> (x .@ "ResourceStatus")
data StackSummary = StackSummary'
{ _ssLastUpdatedTime :: !(Maybe ISO8601)
, _ssTemplateDescription :: !(Maybe Text)
, _ssStackStatusReason :: !(Maybe Text)
, _ssDeletionTime :: !(Maybe ISO8601)
, _ssStackId :: !(Maybe Text)
, _ssStackName :: !Text
, _ssCreationTime :: !ISO8601
, _ssStackStatus :: !StackStatus
} deriving (Eq,Read,Show,Data,Typeable,Generic)
stackSummary
:: Text
-> UTCTime
-> StackStatus
-> StackSummary
stackSummary pStackName_ pCreationTime_ pStackStatus_ =
StackSummary'
{ _ssLastUpdatedTime = Nothing
, _ssTemplateDescription = Nothing
, _ssStackStatusReason = Nothing
, _ssDeletionTime = Nothing
, _ssStackId = Nothing
, _ssStackName = pStackName_
, _ssCreationTime = _Time # pCreationTime_
, _ssStackStatus = pStackStatus_
}
ssLastUpdatedTime :: Lens' StackSummary (Maybe UTCTime)
ssLastUpdatedTime = lens _ssLastUpdatedTime (\ s a -> s{_ssLastUpdatedTime = a}) . mapping _Time;
ssTemplateDescription :: Lens' StackSummary (Maybe Text)
ssTemplateDescription = lens _ssTemplateDescription (\ s a -> s{_ssTemplateDescription = a});
ssStackStatusReason :: Lens' StackSummary (Maybe Text)
ssStackStatusReason = lens _ssStackStatusReason (\ s a -> s{_ssStackStatusReason = a});
ssDeletionTime :: Lens' StackSummary (Maybe UTCTime)
ssDeletionTime = lens _ssDeletionTime (\ s a -> s{_ssDeletionTime = a}) . mapping _Time;
ssStackId :: Lens' StackSummary (Maybe Text)
ssStackId = lens _ssStackId (\ s a -> s{_ssStackId = a});
ssStackName :: Lens' StackSummary Text
ssStackName = lens _ssStackName (\ s a -> s{_ssStackName = a});
ssCreationTime :: Lens' StackSummary UTCTime
ssCreationTime = lens _ssCreationTime (\ s a -> s{_ssCreationTime = a}) . _Time;
ssStackStatus :: Lens' StackSummary StackStatus
ssStackStatus = lens _ssStackStatus (\ s a -> s{_ssStackStatus = a});
instance FromXML StackSummary where
parseXML x
= StackSummary' <$>
(x .@? "LastUpdatedTime") <*>
(x .@? "TemplateDescription")
<*> (x .@? "StackStatusReason")
<*> (x .@? "DeletionTime")
<*> (x .@? "StackId")
<*> (x .@ "StackName")
<*> (x .@ "CreationTime")
<*> (x .@ "StackStatus")
data Tag = Tag'
{ _tagValue :: !(Maybe Text)
, _tagKey :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
tag
:: Tag
tag =
Tag'
{ _tagValue = Nothing
, _tagKey = Nothing
}
tagValue :: Lens' Tag (Maybe Text)
tagValue = lens _tagValue (\ s a -> s{_tagValue = a});
tagKey :: Lens' Tag (Maybe Text)
tagKey = lens _tagKey (\ s a -> s{_tagKey = a});
instance FromXML Tag where
parseXML x
= Tag' <$> (x .@? "Value") <*> (x .@? "Key")
instance ToQuery Tag where
toQuery Tag'{..}
= mconcat ["Value" =: _tagValue, "Key" =: _tagKey]
data TemplateParameter = TemplateParameter'
{ _tpParameterKey :: !(Maybe Text)
, _tpDefaultValue :: !(Maybe Text)
, _tpNoEcho :: !(Maybe Bool)
, _tpDescription :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
templateParameter
:: TemplateParameter
templateParameter =
TemplateParameter'
{ _tpParameterKey = Nothing
, _tpDefaultValue = Nothing
, _tpNoEcho = Nothing
, _tpDescription = Nothing
}
tpParameterKey :: Lens' TemplateParameter (Maybe Text)
tpParameterKey = lens _tpParameterKey (\ s a -> s{_tpParameterKey = a});
tpDefaultValue :: Lens' TemplateParameter (Maybe Text)
tpDefaultValue = lens _tpDefaultValue (\ s a -> s{_tpDefaultValue = a});
tpNoEcho :: Lens' TemplateParameter (Maybe Bool)
tpNoEcho = lens _tpNoEcho (\ s a -> s{_tpNoEcho = a});
tpDescription :: Lens' TemplateParameter (Maybe Text)
tpDescription = lens _tpDescription (\ s a -> s{_tpDescription = a});
instance FromXML TemplateParameter where
parseXML x
= TemplateParameter' <$>
(x .@? "ParameterKey") <*> (x .@? "DefaultValue") <*>
(x .@? "NoEcho")
<*> (x .@? "Description")