{-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE StrictData #-} {-# LANGUAGE TupleSections #-} -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html module Stratosphere.ResourceProperties.GreengrassResourceDefinitionResourceDataContainer where import Stratosphere.ResourceImports import Stratosphere.ResourceProperties.GreengrassResourceDefinitionLocalDeviceResourceData import Stratosphere.ResourceProperties.GreengrassResourceDefinitionLocalVolumeResourceData import Stratosphere.ResourceProperties.GreengrassResourceDefinitionS3MachineLearningModelResourceData import Stratosphere.ResourceProperties.GreengrassResourceDefinitionSageMakerMachineLearningModelResourceData import Stratosphere.ResourceProperties.GreengrassResourceDefinitionSecretsManagerSecretResourceData -- | Full data type definition for -- GreengrassResourceDefinitionResourceDataContainer. See -- 'greengrassResourceDefinitionResourceDataContainer' for a more convenient -- constructor. data GreengrassResourceDefinitionResourceDataContainer = GreengrassResourceDefinitionResourceDataContainer { _greengrassResourceDefinitionResourceDataContainerLocalDeviceResourceData :: Maybe GreengrassResourceDefinitionLocalDeviceResourceData , _greengrassResourceDefinitionResourceDataContainerLocalVolumeResourceData :: Maybe GreengrassResourceDefinitionLocalVolumeResourceData , _greengrassResourceDefinitionResourceDataContainerS3MachineLearningModelResourceData :: Maybe GreengrassResourceDefinitionS3MachineLearningModelResourceData , _greengrassResourceDefinitionResourceDataContainerSageMakerMachineLearningModelResourceData :: Maybe GreengrassResourceDefinitionSageMakerMachineLearningModelResourceData , _greengrassResourceDefinitionResourceDataContainerSecretsManagerSecretResourceData :: Maybe GreengrassResourceDefinitionSecretsManagerSecretResourceData } deriving (Show, Eq) instance ToJSON GreengrassResourceDefinitionResourceDataContainer where toJSON GreengrassResourceDefinitionResourceDataContainer{..} = object $ catMaybes [ fmap (("LocalDeviceResourceData",) . toJSON) _greengrassResourceDefinitionResourceDataContainerLocalDeviceResourceData , fmap (("LocalVolumeResourceData",) . toJSON) _greengrassResourceDefinitionResourceDataContainerLocalVolumeResourceData , fmap (("S3MachineLearningModelResourceData",) . toJSON) _greengrassResourceDefinitionResourceDataContainerS3MachineLearningModelResourceData , fmap (("SageMakerMachineLearningModelResourceData",) . toJSON) _greengrassResourceDefinitionResourceDataContainerSageMakerMachineLearningModelResourceData , fmap (("SecretsManagerSecretResourceData",) . toJSON) _greengrassResourceDefinitionResourceDataContainerSecretsManagerSecretResourceData ] -- | Constructor for 'GreengrassResourceDefinitionResourceDataContainer' -- containing required fields as arguments. greengrassResourceDefinitionResourceDataContainer :: GreengrassResourceDefinitionResourceDataContainer greengrassResourceDefinitionResourceDataContainer = GreengrassResourceDefinitionResourceDataContainer { _greengrassResourceDefinitionResourceDataContainerLocalDeviceResourceData = Nothing , _greengrassResourceDefinitionResourceDataContainerLocalVolumeResourceData = Nothing , _greengrassResourceDefinitionResourceDataContainerS3MachineLearningModelResourceData = Nothing , _greengrassResourceDefinitionResourceDataContainerSageMakerMachineLearningModelResourceData = Nothing , _greengrassResourceDefinitionResourceDataContainerSecretsManagerSecretResourceData = Nothing } -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-localdeviceresourcedata grdrdcLocalDeviceResourceData :: Lens' GreengrassResourceDefinitionResourceDataContainer (Maybe GreengrassResourceDefinitionLocalDeviceResourceData) grdrdcLocalDeviceResourceData = lens _greengrassResourceDefinitionResourceDataContainerLocalDeviceResourceData (\s a -> s { _greengrassResourceDefinitionResourceDataContainerLocalDeviceResourceData = a }) -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-localvolumeresourcedata grdrdcLocalVolumeResourceData :: Lens' GreengrassResourceDefinitionResourceDataContainer (Maybe GreengrassResourceDefinitionLocalVolumeResourceData) grdrdcLocalVolumeResourceData = lens _greengrassResourceDefinitionResourceDataContainerLocalVolumeResourceData (\s a -> s { _greengrassResourceDefinitionResourceDataContainerLocalVolumeResourceData = a }) -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-s3machinelearningmodelresourcedata grdrdcS3MachineLearningModelResourceData :: Lens' GreengrassResourceDefinitionResourceDataContainer (Maybe GreengrassResourceDefinitionS3MachineLearningModelResourceData) grdrdcS3MachineLearningModelResourceData = lens _greengrassResourceDefinitionResourceDataContainerS3MachineLearningModelResourceData (\s a -> s { _greengrassResourceDefinitionResourceDataContainerS3MachineLearningModelResourceData = a }) -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-sagemakermachinelearningmodelresourcedata grdrdcSageMakerMachineLearningModelResourceData :: Lens' GreengrassResourceDefinitionResourceDataContainer (Maybe GreengrassResourceDefinitionSageMakerMachineLearningModelResourceData) grdrdcSageMakerMachineLearningModelResourceData = lens _greengrassResourceDefinitionResourceDataContainerSageMakerMachineLearningModelResourceData (\s a -> s { _greengrassResourceDefinitionResourceDataContainerSageMakerMachineLearningModelResourceData = a }) -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-resourcedefinition-resourcedatacontainer.html#cfn-greengrass-resourcedefinition-resourcedatacontainer-secretsmanagersecretresourcedata grdrdcSecretsManagerSecretResourceData :: Lens' GreengrassResourceDefinitionResourceDataContainer (Maybe GreengrassResourceDefinitionSecretsManagerSecretResourceData) grdrdcSecretsManagerSecretResourceData = lens _greengrassResourceDefinitionResourceDataContainerSecretsManagerSecretResourceData (\s a -> s { _greengrassResourceDefinitionResourceDataContainerSecretsManagerSecretResourceData = a })