module Network.AWS.CloudWatchEvents.Types.Product where
import Network.AWS.CloudWatchEvents.Types.Sum
import Network.AWS.Lens
import Network.AWS.Prelude
data PutEventsRequestEntry = PutEventsRequestEntry'
{ _pereTime :: !(Maybe POSIX)
, _pereDetailType :: !(Maybe Text)
, _pereResources :: !(Maybe [Text])
, _pereSource :: !(Maybe Text)
, _pereDetail :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
putEventsRequestEntry
:: PutEventsRequestEntry
putEventsRequestEntry =
PutEventsRequestEntry'
{ _pereTime = Nothing
, _pereDetailType = Nothing
, _pereResources = Nothing
, _pereSource = Nothing
, _pereDetail = Nothing
}
pereTime :: Lens' PutEventsRequestEntry (Maybe UTCTime)
pereTime = lens _pereTime (\ s a -> s{_pereTime = a}) . mapping _Time;
pereDetailType :: Lens' PutEventsRequestEntry (Maybe Text)
pereDetailType = lens _pereDetailType (\ s a -> s{_pereDetailType = a});
pereResources :: Lens' PutEventsRequestEntry [Text]
pereResources = lens _pereResources (\ s a -> s{_pereResources = a}) . _Default . _Coerce;
pereSource :: Lens' PutEventsRequestEntry (Maybe Text)
pereSource = lens _pereSource (\ s a -> s{_pereSource = a});
pereDetail :: Lens' PutEventsRequestEntry (Maybe Text)
pereDetail = lens _pereDetail (\ s a -> s{_pereDetail = a});
instance Hashable PutEventsRequestEntry
instance ToJSON PutEventsRequestEntry where
toJSON PutEventsRequestEntry'{..}
= object
(catMaybes
[("Time" .=) <$> _pereTime,
("DetailType" .=) <$> _pereDetailType,
("Resources" .=) <$> _pereResources,
("Source" .=) <$> _pereSource,
("Detail" .=) <$> _pereDetail])
data PutEventsResultEntry = PutEventsResultEntry'
{ _pereErrorCode :: !(Maybe Text)
, _pereErrorMessage :: !(Maybe Text)
, _pereEventId :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
putEventsResultEntry
:: PutEventsResultEntry
putEventsResultEntry =
PutEventsResultEntry'
{ _pereErrorCode = Nothing
, _pereErrorMessage = Nothing
, _pereEventId = Nothing
}
pereErrorCode :: Lens' PutEventsResultEntry (Maybe Text)
pereErrorCode = lens _pereErrorCode (\ s a -> s{_pereErrorCode = a});
pereErrorMessage :: Lens' PutEventsResultEntry (Maybe Text)
pereErrorMessage = lens _pereErrorMessage (\ s a -> s{_pereErrorMessage = a});
pereEventId :: Lens' PutEventsResultEntry (Maybe Text)
pereEventId = lens _pereEventId (\ s a -> s{_pereEventId = a});
instance FromJSON PutEventsResultEntry where
parseJSON
= withObject "PutEventsResultEntry"
(\ x ->
PutEventsResultEntry' <$>
(x .:? "ErrorCode") <*> (x .:? "ErrorMessage") <*>
(x .:? "EventId"))
instance Hashable PutEventsResultEntry
data PutTargetsResultEntry = PutTargetsResultEntry'
{ _ptreTargetId :: !(Maybe Text)
, _ptreErrorCode :: !(Maybe Text)
, _ptreErrorMessage :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
putTargetsResultEntry
:: PutTargetsResultEntry
putTargetsResultEntry =
PutTargetsResultEntry'
{ _ptreTargetId = Nothing
, _ptreErrorCode = Nothing
, _ptreErrorMessage = Nothing
}
ptreTargetId :: Lens' PutTargetsResultEntry (Maybe Text)
ptreTargetId = lens _ptreTargetId (\ s a -> s{_ptreTargetId = a});
ptreErrorCode :: Lens' PutTargetsResultEntry (Maybe Text)
ptreErrorCode = lens _ptreErrorCode (\ s a -> s{_ptreErrorCode = a});
ptreErrorMessage :: Lens' PutTargetsResultEntry (Maybe Text)
ptreErrorMessage = lens _ptreErrorMessage (\ s a -> s{_ptreErrorMessage = a});
instance FromJSON PutTargetsResultEntry where
parseJSON
= withObject "PutTargetsResultEntry"
(\ x ->
PutTargetsResultEntry' <$>
(x .:? "TargetId") <*> (x .:? "ErrorCode") <*>
(x .:? "ErrorMessage"))
instance Hashable PutTargetsResultEntry
data RemoveTargetsResultEntry = RemoveTargetsResultEntry'
{ _rtreTargetId :: !(Maybe Text)
, _rtreErrorCode :: !(Maybe Text)
, _rtreErrorMessage :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
removeTargetsResultEntry
:: RemoveTargetsResultEntry
removeTargetsResultEntry =
RemoveTargetsResultEntry'
{ _rtreTargetId = Nothing
, _rtreErrorCode = Nothing
, _rtreErrorMessage = Nothing
}
rtreTargetId :: Lens' RemoveTargetsResultEntry (Maybe Text)
rtreTargetId = lens _rtreTargetId (\ s a -> s{_rtreTargetId = a});
rtreErrorCode :: Lens' RemoveTargetsResultEntry (Maybe Text)
rtreErrorCode = lens _rtreErrorCode (\ s a -> s{_rtreErrorCode = a});
rtreErrorMessage :: Lens' RemoveTargetsResultEntry (Maybe Text)
rtreErrorMessage = lens _rtreErrorMessage (\ s a -> s{_rtreErrorMessage = a});
instance FromJSON RemoveTargetsResultEntry where
parseJSON
= withObject "RemoveTargetsResultEntry"
(\ x ->
RemoveTargetsResultEntry' <$>
(x .:? "TargetId") <*> (x .:? "ErrorCode") <*>
(x .:? "ErrorMessage"))
instance Hashable RemoveTargetsResultEntry
data Rule = Rule'
{ _rEventPattern :: !(Maybe Text)
, _rState :: !(Maybe RuleState)
, _rARN :: !(Maybe Text)
, _rScheduleExpression :: !(Maybe Text)
, _rName :: !(Maybe Text)
, _rDescription :: !(Maybe Text)
, _rRoleARN :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
rule
:: Rule
rule =
Rule'
{ _rEventPattern = Nothing
, _rState = Nothing
, _rARN = Nothing
, _rScheduleExpression = Nothing
, _rName = Nothing
, _rDescription = Nothing
, _rRoleARN = Nothing
}
rEventPattern :: Lens' Rule (Maybe Text)
rEventPattern = lens _rEventPattern (\ s a -> s{_rEventPattern = a});
rState :: Lens' Rule (Maybe RuleState)
rState = lens _rState (\ s a -> s{_rState = a});
rARN :: Lens' Rule (Maybe Text)
rARN = lens _rARN (\ s a -> s{_rARN = a});
rScheduleExpression :: Lens' Rule (Maybe Text)
rScheduleExpression = lens _rScheduleExpression (\ s a -> s{_rScheduleExpression = a});
rName :: Lens' Rule (Maybe Text)
rName = lens _rName (\ s a -> s{_rName = a});
rDescription :: Lens' Rule (Maybe Text)
rDescription = lens _rDescription (\ s a -> s{_rDescription = a});
rRoleARN :: Lens' Rule (Maybe Text)
rRoleARN = lens _rRoleARN (\ s a -> s{_rRoleARN = a});
instance FromJSON Rule where
parseJSON
= withObject "Rule"
(\ x ->
Rule' <$>
(x .:? "EventPattern") <*> (x .:? "State") <*>
(x .:? "Arn")
<*> (x .:? "ScheduleExpression")
<*> (x .:? "Name")
<*> (x .:? "Description")
<*> (x .:? "RoleArn"))
instance Hashable Rule
data Target = Target'
{ _tInput :: !(Maybe Text)
, _tInputPath :: !(Maybe Text)
, _tId :: !Text
, _tARN :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
target
:: Text
-> Text
-> Target
target pId_ pARN_ =
Target'
{ _tInput = Nothing
, _tInputPath = Nothing
, _tId = pId_
, _tARN = pARN_
}
tInput :: Lens' Target (Maybe Text)
tInput = lens _tInput (\ s a -> s{_tInput = a});
tInputPath :: Lens' Target (Maybe Text)
tInputPath = lens _tInputPath (\ s a -> s{_tInputPath = a});
tId :: Lens' Target Text
tId = lens _tId (\ s a -> s{_tId = a});
tARN :: Lens' Target Text
tARN = lens _tARN (\ s a -> s{_tARN = a});
instance FromJSON Target where
parseJSON
= withObject "Target"
(\ x ->
Target' <$>
(x .:? "Input") <*> (x .:? "InputPath") <*>
(x .: "Id")
<*> (x .: "Arn"))
instance Hashable Target
instance ToJSON Target where
toJSON Target'{..}
= object
(catMaybes
[("Input" .=) <$> _tInput,
("InputPath" .=) <$> _tInputPath,
Just ("Id" .= _tId), Just ("Arn" .= _tARN)])