{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.FSx.Types.LustreFileSystemConfiguration where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.FSx.Types.DataCompressionType
import Amazonka.FSx.Types.DataRepositoryConfiguration
import Amazonka.FSx.Types.DriveCacheType
import Amazonka.FSx.Types.LustreDeploymentType
import Amazonka.FSx.Types.LustreLogConfiguration
import Amazonka.FSx.Types.LustreRootSquashConfiguration
import qualified Amazonka.Prelude as Prelude
data LustreFileSystemConfiguration = LustreFileSystemConfiguration'
{ LustreFileSystemConfiguration -> Maybe Natural
automaticBackupRetentionDays :: Prelude.Maybe Prelude.Natural,
LustreFileSystemConfiguration -> Maybe Bool
copyTagsToBackups :: Prelude.Maybe Prelude.Bool,
LustreFileSystemConfiguration -> Maybe Text
dailyAutomaticBackupStartTime :: Prelude.Maybe Prelude.Text,
LustreFileSystemConfiguration -> Maybe DataCompressionType
dataCompressionType :: Prelude.Maybe DataCompressionType,
LustreFileSystemConfiguration -> Maybe DataRepositoryConfiguration
dataRepositoryConfiguration :: Prelude.Maybe DataRepositoryConfiguration,
LustreFileSystemConfiguration -> Maybe LustreDeploymentType
deploymentType :: Prelude.Maybe LustreDeploymentType,
LustreFileSystemConfiguration -> Maybe DriveCacheType
driveCacheType :: Prelude.Maybe DriveCacheType,
LustreFileSystemConfiguration -> Maybe LustreLogConfiguration
logConfiguration :: Prelude.Maybe LustreLogConfiguration,
LustreFileSystemConfiguration -> Maybe Text
mountName :: Prelude.Maybe Prelude.Text,
LustreFileSystemConfiguration -> Maybe Natural
perUnitStorageThroughput :: Prelude.Maybe Prelude.Natural,
LustreFileSystemConfiguration
-> Maybe LustreRootSquashConfiguration
rootSquashConfiguration :: Prelude.Maybe LustreRootSquashConfiguration,
LustreFileSystemConfiguration -> Maybe Text
weeklyMaintenanceStartTime :: Prelude.Maybe Prelude.Text
}
deriving (LustreFileSystemConfiguration
-> LustreFileSystemConfiguration -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: LustreFileSystemConfiguration
-> LustreFileSystemConfiguration -> Bool
$c/= :: LustreFileSystemConfiguration
-> LustreFileSystemConfiguration -> Bool
== :: LustreFileSystemConfiguration
-> LustreFileSystemConfiguration -> Bool
$c== :: LustreFileSystemConfiguration
-> LustreFileSystemConfiguration -> Bool
Prelude.Eq, ReadPrec [LustreFileSystemConfiguration]
ReadPrec LustreFileSystemConfiguration
Int -> ReadS LustreFileSystemConfiguration
ReadS [LustreFileSystemConfiguration]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [LustreFileSystemConfiguration]
$creadListPrec :: ReadPrec [LustreFileSystemConfiguration]
readPrec :: ReadPrec LustreFileSystemConfiguration
$creadPrec :: ReadPrec LustreFileSystemConfiguration
readList :: ReadS [LustreFileSystemConfiguration]
$creadList :: ReadS [LustreFileSystemConfiguration]
readsPrec :: Int -> ReadS LustreFileSystemConfiguration
$creadsPrec :: Int -> ReadS LustreFileSystemConfiguration
Prelude.Read, Int -> LustreFileSystemConfiguration -> ShowS
[LustreFileSystemConfiguration] -> ShowS
LustreFileSystemConfiguration -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [LustreFileSystemConfiguration] -> ShowS
$cshowList :: [LustreFileSystemConfiguration] -> ShowS
show :: LustreFileSystemConfiguration -> String
$cshow :: LustreFileSystemConfiguration -> String
showsPrec :: Int -> LustreFileSystemConfiguration -> ShowS
$cshowsPrec :: Int -> LustreFileSystemConfiguration -> ShowS
Prelude.Show, forall x.
Rep LustreFileSystemConfiguration x
-> LustreFileSystemConfiguration
forall x.
LustreFileSystemConfiguration
-> Rep LustreFileSystemConfiguration x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep LustreFileSystemConfiguration x
-> LustreFileSystemConfiguration
$cfrom :: forall x.
LustreFileSystemConfiguration
-> Rep LustreFileSystemConfiguration x
Prelude.Generic)
newLustreFileSystemConfiguration ::
LustreFileSystemConfiguration
newLustreFileSystemConfiguration :: LustreFileSystemConfiguration
newLustreFileSystemConfiguration =
LustreFileSystemConfiguration'
{ $sel:automaticBackupRetentionDays:LustreFileSystemConfiguration' :: Maybe Natural
automaticBackupRetentionDays =
forall a. Maybe a
Prelude.Nothing,
$sel:copyTagsToBackups:LustreFileSystemConfiguration' :: Maybe Bool
copyTagsToBackups = forall a. Maybe a
Prelude.Nothing,
$sel:dailyAutomaticBackupStartTime:LustreFileSystemConfiguration' :: Maybe Text
dailyAutomaticBackupStartTime =
forall a. Maybe a
Prelude.Nothing,
$sel:dataCompressionType:LustreFileSystemConfiguration' :: Maybe DataCompressionType
dataCompressionType = forall a. Maybe a
Prelude.Nothing,
$sel:dataRepositoryConfiguration:LustreFileSystemConfiguration' :: Maybe DataRepositoryConfiguration
dataRepositoryConfiguration =
forall a. Maybe a
Prelude.Nothing,
$sel:deploymentType:LustreFileSystemConfiguration' :: Maybe LustreDeploymentType
deploymentType = forall a. Maybe a
Prelude.Nothing,
$sel:driveCacheType:LustreFileSystemConfiguration' :: Maybe DriveCacheType
driveCacheType = forall a. Maybe a
Prelude.Nothing,
$sel:logConfiguration:LustreFileSystemConfiguration' :: Maybe LustreLogConfiguration
logConfiguration = forall a. Maybe a
Prelude.Nothing,
$sel:mountName:LustreFileSystemConfiguration' :: Maybe Text
mountName = forall a. Maybe a
Prelude.Nothing,
$sel:perUnitStorageThroughput:LustreFileSystemConfiguration' :: Maybe Natural
perUnitStorageThroughput = forall a. Maybe a
Prelude.Nothing,
$sel:rootSquashConfiguration:LustreFileSystemConfiguration' :: Maybe LustreRootSquashConfiguration
rootSquashConfiguration = forall a. Maybe a
Prelude.Nothing,
$sel:weeklyMaintenanceStartTime:LustreFileSystemConfiguration' :: Maybe Text
weeklyMaintenanceStartTime = forall a. Maybe a
Prelude.Nothing
}
lustreFileSystemConfiguration_automaticBackupRetentionDays :: Lens.Lens' LustreFileSystemConfiguration (Prelude.Maybe Prelude.Natural)
lustreFileSystemConfiguration_automaticBackupRetentionDays :: Lens' LustreFileSystemConfiguration (Maybe Natural)
lustreFileSystemConfiguration_automaticBackupRetentionDays = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LustreFileSystemConfiguration' {Maybe Natural
automaticBackupRetentionDays :: Maybe Natural
$sel:automaticBackupRetentionDays:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Natural
automaticBackupRetentionDays} -> Maybe Natural
automaticBackupRetentionDays) (\s :: LustreFileSystemConfiguration
s@LustreFileSystemConfiguration' {} Maybe Natural
a -> LustreFileSystemConfiguration
s {$sel:automaticBackupRetentionDays:LustreFileSystemConfiguration' :: Maybe Natural
automaticBackupRetentionDays = Maybe Natural
a} :: LustreFileSystemConfiguration)
lustreFileSystemConfiguration_copyTagsToBackups :: Lens.Lens' LustreFileSystemConfiguration (Prelude.Maybe Prelude.Bool)
lustreFileSystemConfiguration_copyTagsToBackups :: Lens' LustreFileSystemConfiguration (Maybe Bool)
lustreFileSystemConfiguration_copyTagsToBackups = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LustreFileSystemConfiguration' {Maybe Bool
copyTagsToBackups :: Maybe Bool
$sel:copyTagsToBackups:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Bool
copyTagsToBackups} -> Maybe Bool
copyTagsToBackups) (\s :: LustreFileSystemConfiguration
s@LustreFileSystemConfiguration' {} Maybe Bool
a -> LustreFileSystemConfiguration
s {$sel:copyTagsToBackups:LustreFileSystemConfiguration' :: Maybe Bool
copyTagsToBackups = Maybe Bool
a} :: LustreFileSystemConfiguration)
lustreFileSystemConfiguration_dailyAutomaticBackupStartTime :: Lens.Lens' LustreFileSystemConfiguration (Prelude.Maybe Prelude.Text)
lustreFileSystemConfiguration_dailyAutomaticBackupStartTime :: Lens' LustreFileSystemConfiguration (Maybe Text)
lustreFileSystemConfiguration_dailyAutomaticBackupStartTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LustreFileSystemConfiguration' {Maybe Text
dailyAutomaticBackupStartTime :: Maybe Text
$sel:dailyAutomaticBackupStartTime:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Text
dailyAutomaticBackupStartTime} -> Maybe Text
dailyAutomaticBackupStartTime) (\s :: LustreFileSystemConfiguration
s@LustreFileSystemConfiguration' {} Maybe Text
a -> LustreFileSystemConfiguration
s {$sel:dailyAutomaticBackupStartTime:LustreFileSystemConfiguration' :: Maybe Text
dailyAutomaticBackupStartTime = Maybe Text
a} :: LustreFileSystemConfiguration)
lustreFileSystemConfiguration_dataCompressionType :: Lens.Lens' LustreFileSystemConfiguration (Prelude.Maybe DataCompressionType)
lustreFileSystemConfiguration_dataCompressionType :: Lens' LustreFileSystemConfiguration (Maybe DataCompressionType)
lustreFileSystemConfiguration_dataCompressionType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LustreFileSystemConfiguration' {Maybe DataCompressionType
dataCompressionType :: Maybe DataCompressionType
$sel:dataCompressionType:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe DataCompressionType
dataCompressionType} -> Maybe DataCompressionType
dataCompressionType) (\s :: LustreFileSystemConfiguration
s@LustreFileSystemConfiguration' {} Maybe DataCompressionType
a -> LustreFileSystemConfiguration
s {$sel:dataCompressionType:LustreFileSystemConfiguration' :: Maybe DataCompressionType
dataCompressionType = Maybe DataCompressionType
a} :: LustreFileSystemConfiguration)
lustreFileSystemConfiguration_dataRepositoryConfiguration :: Lens.Lens' LustreFileSystemConfiguration (Prelude.Maybe DataRepositoryConfiguration)
lustreFileSystemConfiguration_dataRepositoryConfiguration :: Lens'
LustreFileSystemConfiguration (Maybe DataRepositoryConfiguration)
lustreFileSystemConfiguration_dataRepositoryConfiguration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LustreFileSystemConfiguration' {Maybe DataRepositoryConfiguration
dataRepositoryConfiguration :: Maybe DataRepositoryConfiguration
$sel:dataRepositoryConfiguration:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe DataRepositoryConfiguration
dataRepositoryConfiguration} -> Maybe DataRepositoryConfiguration
dataRepositoryConfiguration) (\s :: LustreFileSystemConfiguration
s@LustreFileSystemConfiguration' {} Maybe DataRepositoryConfiguration
a -> LustreFileSystemConfiguration
s {$sel:dataRepositoryConfiguration:LustreFileSystemConfiguration' :: Maybe DataRepositoryConfiguration
dataRepositoryConfiguration = Maybe DataRepositoryConfiguration
a} :: LustreFileSystemConfiguration)
lustreFileSystemConfiguration_deploymentType :: Lens.Lens' LustreFileSystemConfiguration (Prelude.Maybe LustreDeploymentType)
lustreFileSystemConfiguration_deploymentType :: Lens' LustreFileSystemConfiguration (Maybe LustreDeploymentType)
lustreFileSystemConfiguration_deploymentType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LustreFileSystemConfiguration' {Maybe LustreDeploymentType
deploymentType :: Maybe LustreDeploymentType
$sel:deploymentType:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe LustreDeploymentType
deploymentType} -> Maybe LustreDeploymentType
deploymentType) (\s :: LustreFileSystemConfiguration
s@LustreFileSystemConfiguration' {} Maybe LustreDeploymentType
a -> LustreFileSystemConfiguration
s {$sel:deploymentType:LustreFileSystemConfiguration' :: Maybe LustreDeploymentType
deploymentType = Maybe LustreDeploymentType
a} :: LustreFileSystemConfiguration)
lustreFileSystemConfiguration_driveCacheType :: Lens.Lens' LustreFileSystemConfiguration (Prelude.Maybe DriveCacheType)
lustreFileSystemConfiguration_driveCacheType :: Lens' LustreFileSystemConfiguration (Maybe DriveCacheType)
lustreFileSystemConfiguration_driveCacheType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LustreFileSystemConfiguration' {Maybe DriveCacheType
driveCacheType :: Maybe DriveCacheType
$sel:driveCacheType:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe DriveCacheType
driveCacheType} -> Maybe DriveCacheType
driveCacheType) (\s :: LustreFileSystemConfiguration
s@LustreFileSystemConfiguration' {} Maybe DriveCacheType
a -> LustreFileSystemConfiguration
s {$sel:driveCacheType:LustreFileSystemConfiguration' :: Maybe DriveCacheType
driveCacheType = Maybe DriveCacheType
a} :: LustreFileSystemConfiguration)
lustreFileSystemConfiguration_logConfiguration :: Lens.Lens' LustreFileSystemConfiguration (Prelude.Maybe LustreLogConfiguration)
lustreFileSystemConfiguration_logConfiguration :: Lens' LustreFileSystemConfiguration (Maybe LustreLogConfiguration)
lustreFileSystemConfiguration_logConfiguration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LustreFileSystemConfiguration' {Maybe LustreLogConfiguration
logConfiguration :: Maybe LustreLogConfiguration
$sel:logConfiguration:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe LustreLogConfiguration
logConfiguration} -> Maybe LustreLogConfiguration
logConfiguration) (\s :: LustreFileSystemConfiguration
s@LustreFileSystemConfiguration' {} Maybe LustreLogConfiguration
a -> LustreFileSystemConfiguration
s {$sel:logConfiguration:LustreFileSystemConfiguration' :: Maybe LustreLogConfiguration
logConfiguration = Maybe LustreLogConfiguration
a} :: LustreFileSystemConfiguration)
lustreFileSystemConfiguration_mountName :: Lens.Lens' LustreFileSystemConfiguration (Prelude.Maybe Prelude.Text)
lustreFileSystemConfiguration_mountName :: Lens' LustreFileSystemConfiguration (Maybe Text)
lustreFileSystemConfiguration_mountName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LustreFileSystemConfiguration' {Maybe Text
mountName :: Maybe Text
$sel:mountName:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Text
mountName} -> Maybe Text
mountName) (\s :: LustreFileSystemConfiguration
s@LustreFileSystemConfiguration' {} Maybe Text
a -> LustreFileSystemConfiguration
s {$sel:mountName:LustreFileSystemConfiguration' :: Maybe Text
mountName = Maybe Text
a} :: LustreFileSystemConfiguration)
lustreFileSystemConfiguration_perUnitStorageThroughput :: Lens.Lens' LustreFileSystemConfiguration (Prelude.Maybe Prelude.Natural)
lustreFileSystemConfiguration_perUnitStorageThroughput :: Lens' LustreFileSystemConfiguration (Maybe Natural)
lustreFileSystemConfiguration_perUnitStorageThroughput = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LustreFileSystemConfiguration' {Maybe Natural
perUnitStorageThroughput :: Maybe Natural
$sel:perUnitStorageThroughput:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Natural
perUnitStorageThroughput} -> Maybe Natural
perUnitStorageThroughput) (\s :: LustreFileSystemConfiguration
s@LustreFileSystemConfiguration' {} Maybe Natural
a -> LustreFileSystemConfiguration
s {$sel:perUnitStorageThroughput:LustreFileSystemConfiguration' :: Maybe Natural
perUnitStorageThroughput = Maybe Natural
a} :: LustreFileSystemConfiguration)
lustreFileSystemConfiguration_rootSquashConfiguration :: Lens.Lens' LustreFileSystemConfiguration (Prelude.Maybe LustreRootSquashConfiguration)
lustreFileSystemConfiguration_rootSquashConfiguration :: Lens'
LustreFileSystemConfiguration (Maybe LustreRootSquashConfiguration)
lustreFileSystemConfiguration_rootSquashConfiguration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LustreFileSystemConfiguration' {Maybe LustreRootSquashConfiguration
rootSquashConfiguration :: Maybe LustreRootSquashConfiguration
$sel:rootSquashConfiguration:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration
-> Maybe LustreRootSquashConfiguration
rootSquashConfiguration} -> Maybe LustreRootSquashConfiguration
rootSquashConfiguration) (\s :: LustreFileSystemConfiguration
s@LustreFileSystemConfiguration' {} Maybe LustreRootSquashConfiguration
a -> LustreFileSystemConfiguration
s {$sel:rootSquashConfiguration:LustreFileSystemConfiguration' :: Maybe LustreRootSquashConfiguration
rootSquashConfiguration = Maybe LustreRootSquashConfiguration
a} :: LustreFileSystemConfiguration)
lustreFileSystemConfiguration_weeklyMaintenanceStartTime :: Lens.Lens' LustreFileSystemConfiguration (Prelude.Maybe Prelude.Text)
lustreFileSystemConfiguration_weeklyMaintenanceStartTime :: Lens' LustreFileSystemConfiguration (Maybe Text)
lustreFileSystemConfiguration_weeklyMaintenanceStartTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\LustreFileSystemConfiguration' {Maybe Text
weeklyMaintenanceStartTime :: Maybe Text
$sel:weeklyMaintenanceStartTime:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Text
weeklyMaintenanceStartTime} -> Maybe Text
weeklyMaintenanceStartTime) (\s :: LustreFileSystemConfiguration
s@LustreFileSystemConfiguration' {} Maybe Text
a -> LustreFileSystemConfiguration
s {$sel:weeklyMaintenanceStartTime:LustreFileSystemConfiguration' :: Maybe Text
weeklyMaintenanceStartTime = Maybe Text
a} :: LustreFileSystemConfiguration)
instance Data.FromJSON LustreFileSystemConfiguration where
parseJSON :: Value -> Parser LustreFileSystemConfiguration
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"LustreFileSystemConfiguration"
( \Object
x ->
Maybe Natural
-> Maybe Bool
-> Maybe Text
-> Maybe DataCompressionType
-> Maybe DataRepositoryConfiguration
-> Maybe LustreDeploymentType
-> Maybe DriveCacheType
-> Maybe LustreLogConfiguration
-> Maybe Text
-> Maybe Natural
-> Maybe LustreRootSquashConfiguration
-> Maybe Text
-> LustreFileSystemConfiguration
LustreFileSystemConfiguration'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"AutomaticBackupRetentionDays")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"CopyTagsToBackups")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DailyAutomaticBackupStartTime")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DataCompressionType")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DataRepositoryConfiguration")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DeploymentType")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DriveCacheType")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"LogConfiguration")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"MountName")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"PerUnitStorageThroughput")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"RootSquashConfiguration")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"WeeklyMaintenanceStartTime")
)
instance
Prelude.Hashable
LustreFileSystemConfiguration
where
hashWithSalt :: Int -> LustreFileSystemConfiguration -> Int
hashWithSalt Int
_salt LustreFileSystemConfiguration' {Maybe Bool
Maybe Natural
Maybe Text
Maybe DataCompressionType
Maybe DataRepositoryConfiguration
Maybe DriveCacheType
Maybe LustreDeploymentType
Maybe LustreLogConfiguration
Maybe LustreRootSquashConfiguration
weeklyMaintenanceStartTime :: Maybe Text
rootSquashConfiguration :: Maybe LustreRootSquashConfiguration
perUnitStorageThroughput :: Maybe Natural
mountName :: Maybe Text
logConfiguration :: Maybe LustreLogConfiguration
driveCacheType :: Maybe DriveCacheType
deploymentType :: Maybe LustreDeploymentType
dataRepositoryConfiguration :: Maybe DataRepositoryConfiguration
dataCompressionType :: Maybe DataCompressionType
dailyAutomaticBackupStartTime :: Maybe Text
copyTagsToBackups :: Maybe Bool
automaticBackupRetentionDays :: Maybe Natural
$sel:weeklyMaintenanceStartTime:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Text
$sel:rootSquashConfiguration:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration
-> Maybe LustreRootSquashConfiguration
$sel:perUnitStorageThroughput:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Natural
$sel:mountName:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Text
$sel:logConfiguration:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe LustreLogConfiguration
$sel:driveCacheType:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe DriveCacheType
$sel:deploymentType:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe LustreDeploymentType
$sel:dataRepositoryConfiguration:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe DataRepositoryConfiguration
$sel:dataCompressionType:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe DataCompressionType
$sel:dailyAutomaticBackupStartTime:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Text
$sel:copyTagsToBackups:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Bool
$sel:automaticBackupRetentionDays:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Natural
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
automaticBackupRetentionDays
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
copyTagsToBackups
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
dailyAutomaticBackupStartTime
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DataCompressionType
dataCompressionType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DataRepositoryConfiguration
dataRepositoryConfiguration
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe LustreDeploymentType
deploymentType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DriveCacheType
driveCacheType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe LustreLogConfiguration
logConfiguration
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
mountName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
perUnitStorageThroughput
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe LustreRootSquashConfiguration
rootSquashConfiguration
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
weeklyMaintenanceStartTime
instance Prelude.NFData LustreFileSystemConfiguration where
rnf :: LustreFileSystemConfiguration -> ()
rnf LustreFileSystemConfiguration' {Maybe Bool
Maybe Natural
Maybe Text
Maybe DataCompressionType
Maybe DataRepositoryConfiguration
Maybe DriveCacheType
Maybe LustreDeploymentType
Maybe LustreLogConfiguration
Maybe LustreRootSquashConfiguration
weeklyMaintenanceStartTime :: Maybe Text
rootSquashConfiguration :: Maybe LustreRootSquashConfiguration
perUnitStorageThroughput :: Maybe Natural
mountName :: Maybe Text
logConfiguration :: Maybe LustreLogConfiguration
driveCacheType :: Maybe DriveCacheType
deploymentType :: Maybe LustreDeploymentType
dataRepositoryConfiguration :: Maybe DataRepositoryConfiguration
dataCompressionType :: Maybe DataCompressionType
dailyAutomaticBackupStartTime :: Maybe Text
copyTagsToBackups :: Maybe Bool
automaticBackupRetentionDays :: Maybe Natural
$sel:weeklyMaintenanceStartTime:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Text
$sel:rootSquashConfiguration:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration
-> Maybe LustreRootSquashConfiguration
$sel:perUnitStorageThroughput:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Natural
$sel:mountName:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Text
$sel:logConfiguration:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe LustreLogConfiguration
$sel:driveCacheType:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe DriveCacheType
$sel:deploymentType:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe LustreDeploymentType
$sel:dataRepositoryConfiguration:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe DataRepositoryConfiguration
$sel:dataCompressionType:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe DataCompressionType
$sel:dailyAutomaticBackupStartTime:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Text
$sel:copyTagsToBackups:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Bool
$sel:automaticBackupRetentionDays:LustreFileSystemConfiguration' :: LustreFileSystemConfiguration -> Maybe Natural
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
automaticBackupRetentionDays
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
copyTagsToBackups
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
dailyAutomaticBackupStartTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DataCompressionType
dataCompressionType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DataRepositoryConfiguration
dataRepositoryConfiguration
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe LustreDeploymentType
deploymentType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DriveCacheType
driveCacheType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe LustreLogConfiguration
logConfiguration
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
mountName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
perUnitStorageThroughput
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe LustreRootSquashConfiguration
rootSquashConfiguration
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
weeklyMaintenanceStartTime