stratosphere-0.58.0: library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringJobDefinition.hs
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TupleSections #-}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html
module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringJobDefinition where
import Stratosphere.ResourceImports
import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleBaselineConfig
import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringAppSpecification
import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringInputs
import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringOutputConfig
import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringResources
import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleNetworkConfig
import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleStoppingCondition
-- | Full data type definition for
-- SageMakerMonitoringScheduleMonitoringJobDefinition. See
-- 'sageMakerMonitoringScheduleMonitoringJobDefinition' for a more
-- convenient constructor.
data SageMakerMonitoringScheduleMonitoringJobDefinition =
SageMakerMonitoringScheduleMonitoringJobDefinition
{ _sageMakerMonitoringScheduleMonitoringJobDefinitionBaselineConfig :: Maybe SageMakerMonitoringScheduleBaselineConfig
, _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringAppSpecification :: SageMakerMonitoringScheduleMonitoringAppSpecification
, _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringInputs :: SageMakerMonitoringScheduleMonitoringInputs
, _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringOutputConfig :: SageMakerMonitoringScheduleMonitoringOutputConfig
, _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringResources :: SageMakerMonitoringScheduleMonitoringResources
, _sageMakerMonitoringScheduleMonitoringJobDefinitionNetworkConfig :: Maybe SageMakerMonitoringScheduleNetworkConfig
, _sageMakerMonitoringScheduleMonitoringJobDefinitionRoleArn :: Val Text
, _sageMakerMonitoringScheduleMonitoringJobDefinitionStoppingCondition :: Maybe SageMakerMonitoringScheduleStoppingCondition
} deriving (Show, Eq)
instance ToJSON SageMakerMonitoringScheduleMonitoringJobDefinition where
toJSON SageMakerMonitoringScheduleMonitoringJobDefinition{..} =
object $
catMaybes
[ fmap (("BaselineConfig",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionBaselineConfig
, (Just . ("MonitoringAppSpecification",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringAppSpecification
, (Just . ("MonitoringInputs",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringInputs
, (Just . ("MonitoringOutputConfig",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringOutputConfig
, (Just . ("MonitoringResources",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringResources
, fmap (("NetworkConfig",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionNetworkConfig
, (Just . ("RoleArn",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionRoleArn
, fmap (("StoppingCondition",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionStoppingCondition
]
-- | Constructor for 'SageMakerMonitoringScheduleMonitoringJobDefinition'
-- containing required fields as arguments.
sageMakerMonitoringScheduleMonitoringJobDefinition
:: SageMakerMonitoringScheduleMonitoringAppSpecification -- ^ 'smmsmjdMonitoringAppSpecification'
-> SageMakerMonitoringScheduleMonitoringInputs -- ^ 'smmsmjdMonitoringInputs'
-> SageMakerMonitoringScheduleMonitoringOutputConfig -- ^ 'smmsmjdMonitoringOutputConfig'
-> SageMakerMonitoringScheduleMonitoringResources -- ^ 'smmsmjdMonitoringResources'
-> Val Text -- ^ 'smmsmjdRoleArn'
-> SageMakerMonitoringScheduleMonitoringJobDefinition
sageMakerMonitoringScheduleMonitoringJobDefinition monitoringAppSpecificationarg monitoringInputsarg monitoringOutputConfigarg monitoringResourcesarg roleArnarg =
SageMakerMonitoringScheduleMonitoringJobDefinition
{ _sageMakerMonitoringScheduleMonitoringJobDefinitionBaselineConfig = Nothing
, _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringAppSpecification = monitoringAppSpecificationarg
, _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringInputs = monitoringInputsarg
, _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringOutputConfig = monitoringOutputConfigarg
, _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringResources = monitoringResourcesarg
, _sageMakerMonitoringScheduleMonitoringJobDefinitionNetworkConfig = Nothing
, _sageMakerMonitoringScheduleMonitoringJobDefinitionRoleArn = roleArnarg
, _sageMakerMonitoringScheduleMonitoringJobDefinitionStoppingCondition = Nothing
}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-baselineconfig
smmsmjdBaselineConfig :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition (Maybe SageMakerMonitoringScheduleBaselineConfig)
smmsmjdBaselineConfig = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionBaselineConfig (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionBaselineConfig = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-monitoringappspecification
smmsmjdMonitoringAppSpecification :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition SageMakerMonitoringScheduleMonitoringAppSpecification
smmsmjdMonitoringAppSpecification = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringAppSpecification (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringAppSpecification = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-monitoringinputs
smmsmjdMonitoringInputs :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition SageMakerMonitoringScheduleMonitoringInputs
smmsmjdMonitoringInputs = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringInputs (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringInputs = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-monitoringoutputconfig
smmsmjdMonitoringOutputConfig :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition SageMakerMonitoringScheduleMonitoringOutputConfig
smmsmjdMonitoringOutputConfig = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringOutputConfig (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringOutputConfig = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-monitoringresources
smmsmjdMonitoringResources :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition SageMakerMonitoringScheduleMonitoringResources
smmsmjdMonitoringResources = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringResources (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringResources = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-networkconfig
smmsmjdNetworkConfig :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition (Maybe SageMakerMonitoringScheduleNetworkConfig)
smmsmjdNetworkConfig = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionNetworkConfig (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionNetworkConfig = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-rolearn
smmsmjdRoleArn :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition (Val Text)
smmsmjdRoleArn = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionRoleArn (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionRoleArn = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-stoppingcondition
smmsmjdStoppingCondition :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition (Maybe SageMakerMonitoringScheduleStoppingCondition)
smmsmjdStoppingCondition = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionStoppingCondition (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionStoppingCondition = a })