{-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE StrictData #-} {-# LANGUAGE TupleSections #-} -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html module Stratosphere.ResourceProperties.GreengrassFunctionDefinitionRunAs where import Stratosphere.ResourceImports -- | Full data type definition for GreengrassFunctionDefinitionRunAs. See -- 'greengrassFunctionDefinitionRunAs' for a more convenient constructor. data GreengrassFunctionDefinitionRunAs = GreengrassFunctionDefinitionRunAs { _greengrassFunctionDefinitionRunAsGid :: Maybe (Val Integer) , _greengrassFunctionDefinitionRunAsUid :: Maybe (Val Integer) } deriving (Show, Eq) instance ToJSON GreengrassFunctionDefinitionRunAs where toJSON GreengrassFunctionDefinitionRunAs{..} = object $ catMaybes [ fmap (("Gid",) . toJSON) _greengrassFunctionDefinitionRunAsGid , fmap (("Uid",) . toJSON) _greengrassFunctionDefinitionRunAsUid ] -- | Constructor for 'GreengrassFunctionDefinitionRunAs' containing required -- fields as arguments. greengrassFunctionDefinitionRunAs :: GreengrassFunctionDefinitionRunAs greengrassFunctionDefinitionRunAs = GreengrassFunctionDefinitionRunAs { _greengrassFunctionDefinitionRunAsGid = Nothing , _greengrassFunctionDefinitionRunAsUid = Nothing } -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html#cfn-greengrass-functiondefinition-runas-gid gfdraGid :: Lens' GreengrassFunctionDefinitionRunAs (Maybe (Val Integer)) gfdraGid = lens _greengrassFunctionDefinitionRunAsGid (\s a -> s { _greengrassFunctionDefinitionRunAsGid = a }) -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-greengrass-functiondefinition-runas.html#cfn-greengrass-functiondefinition-runas-uid gfdraUid :: Lens' GreengrassFunctionDefinitionRunAs (Maybe (Val Integer)) gfdraUid = lens _greengrassFunctionDefinitionRunAsUid (\s a -> s { _greengrassFunctionDefinitionRunAsUid = a })