{-# 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.EFS.Types.FileSystemDescription where
import qualified Amazonka.Core as Core
import Amazonka.EFS.Types.FileSystemSize
import Amazonka.EFS.Types.LifeCycleState
import Amazonka.EFS.Types.PerformanceMode
import Amazonka.EFS.Types.Tag
import Amazonka.EFS.Types.ThroughputMode
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
data FileSystemDescription = FileSystemDescription'
{
FileSystemDescription -> Maybe Text
availabilityZoneId :: Prelude.Maybe Prelude.Text,
FileSystemDescription -> Maybe Double
provisionedThroughputInMibps :: Prelude.Maybe Prelude.Double,
FileSystemDescription -> Maybe Text
availabilityZoneName :: Prelude.Maybe Prelude.Text,
FileSystemDescription -> Maybe Text
fileSystemArn :: Prelude.Maybe Prelude.Text,
FileSystemDescription -> Maybe Bool
encrypted :: Prelude.Maybe Prelude.Bool,
FileSystemDescription -> Maybe ThroughputMode
throughputMode :: Prelude.Maybe ThroughputMode,
FileSystemDescription -> Maybe Text
kmsKeyId :: Prelude.Maybe Prelude.Text,
FileSystemDescription -> Maybe Text
name :: Prelude.Maybe Prelude.Text,
FileSystemDescription -> Text
ownerId :: Prelude.Text,
FileSystemDescription -> Text
creationToken :: Prelude.Text,
FileSystemDescription -> Text
fileSystemId :: Prelude.Text,
FileSystemDescription -> POSIX
creationTime :: Core.POSIX,
FileSystemDescription -> LifeCycleState
lifeCycleState :: LifeCycleState,
FileSystemDescription -> Natural
numberOfMountTargets :: Prelude.Natural,
FileSystemDescription -> FileSystemSize
sizeInBytes :: FileSystemSize,
FileSystemDescription -> PerformanceMode
performanceMode :: PerformanceMode,
FileSystemDescription -> [Tag]
tags :: [Tag]
}
deriving (FileSystemDescription -> FileSystemDescription -> Bool
(FileSystemDescription -> FileSystemDescription -> Bool)
-> (FileSystemDescription -> FileSystemDescription -> Bool)
-> Eq FileSystemDescription
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: FileSystemDescription -> FileSystemDescription -> Bool
$c/= :: FileSystemDescription -> FileSystemDescription -> Bool
== :: FileSystemDescription -> FileSystemDescription -> Bool
$c== :: FileSystemDescription -> FileSystemDescription -> Bool
Prelude.Eq, ReadPrec [FileSystemDescription]
ReadPrec FileSystemDescription
Int -> ReadS FileSystemDescription
ReadS [FileSystemDescription]
(Int -> ReadS FileSystemDescription)
-> ReadS [FileSystemDescription]
-> ReadPrec FileSystemDescription
-> ReadPrec [FileSystemDescription]
-> Read FileSystemDescription
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [FileSystemDescription]
$creadListPrec :: ReadPrec [FileSystemDescription]
readPrec :: ReadPrec FileSystemDescription
$creadPrec :: ReadPrec FileSystemDescription
readList :: ReadS [FileSystemDescription]
$creadList :: ReadS [FileSystemDescription]
readsPrec :: Int -> ReadS FileSystemDescription
$creadsPrec :: Int -> ReadS FileSystemDescription
Prelude.Read, Int -> FileSystemDescription -> ShowS
[FileSystemDescription] -> ShowS
FileSystemDescription -> String
(Int -> FileSystemDescription -> ShowS)
-> (FileSystemDescription -> String)
-> ([FileSystemDescription] -> ShowS)
-> Show FileSystemDescription
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [FileSystemDescription] -> ShowS
$cshowList :: [FileSystemDescription] -> ShowS
show :: FileSystemDescription -> String
$cshow :: FileSystemDescription -> String
showsPrec :: Int -> FileSystemDescription -> ShowS
$cshowsPrec :: Int -> FileSystemDescription -> ShowS
Prelude.Show, (forall x. FileSystemDescription -> Rep FileSystemDescription x)
-> (forall x. Rep FileSystemDescription x -> FileSystemDescription)
-> Generic FileSystemDescription
forall x. Rep FileSystemDescription x -> FileSystemDescription
forall x. FileSystemDescription -> Rep FileSystemDescription x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep FileSystemDescription x -> FileSystemDescription
$cfrom :: forall x. FileSystemDescription -> Rep FileSystemDescription x
Prelude.Generic)
newFileSystemDescription ::
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
Prelude.UTCTime ->
LifeCycleState ->
Prelude.Natural ->
FileSystemSize ->
PerformanceMode ->
FileSystemDescription
newFileSystemDescription :: Text
-> Text
-> Text
-> UTCTime
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> FileSystemDescription
newFileSystemDescription
Text
pOwnerId_
Text
pCreationToken_
Text
pFileSystemId_
UTCTime
pCreationTime_
LifeCycleState
pLifeCycleState_
Natural
pNumberOfMountTargets_
FileSystemSize
pSizeInBytes_
PerformanceMode
pPerformanceMode_ =
FileSystemDescription' :: Maybe Text
-> Maybe Double
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription
FileSystemDescription'
{ $sel:availabilityZoneId:FileSystemDescription' :: Maybe Text
availabilityZoneId =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:provisionedThroughputInMibps:FileSystemDescription' :: Maybe Double
provisionedThroughputInMibps = Maybe Double
forall a. Maybe a
Prelude.Nothing,
$sel:availabilityZoneName:FileSystemDescription' :: Maybe Text
availabilityZoneName = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:fileSystemArn:FileSystemDescription' :: Maybe Text
fileSystemArn = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:encrypted:FileSystemDescription' :: Maybe Bool
encrypted = Maybe Bool
forall a. Maybe a
Prelude.Nothing,
$sel:throughputMode:FileSystemDescription' :: Maybe ThroughputMode
throughputMode = Maybe ThroughputMode
forall a. Maybe a
Prelude.Nothing,
$sel:kmsKeyId:FileSystemDescription' :: Maybe Text
kmsKeyId = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:name:FileSystemDescription' :: Maybe Text
name = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:ownerId:FileSystemDescription' :: Text
ownerId = Text
pOwnerId_,
$sel:creationToken:FileSystemDescription' :: Text
creationToken = Text
pCreationToken_,
$sel:fileSystemId:FileSystemDescription' :: Text
fileSystemId = Text
pFileSystemId_,
$sel:creationTime:FileSystemDescription' :: POSIX
creationTime = Tagged UTCTime (Identity UTCTime) -> Tagged POSIX (Identity POSIX)
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time (Tagged UTCTime (Identity UTCTime)
-> Tagged POSIX (Identity POSIX))
-> UTCTime -> POSIX
forall t b. AReview t b -> b -> t
Lens.# UTCTime
pCreationTime_,
$sel:lifeCycleState:FileSystemDescription' :: LifeCycleState
lifeCycleState = LifeCycleState
pLifeCycleState_,
$sel:numberOfMountTargets:FileSystemDescription' :: Natural
numberOfMountTargets = Natural
pNumberOfMountTargets_,
$sel:sizeInBytes:FileSystemDescription' :: FileSystemSize
sizeInBytes = FileSystemSize
pSizeInBytes_,
$sel:performanceMode:FileSystemDescription' :: PerformanceMode
performanceMode = PerformanceMode
pPerformanceMode_,
$sel:tags:FileSystemDescription' :: [Tag]
tags = [Tag]
forall a. Monoid a => a
Prelude.mempty
}
fileSystemDescription_availabilityZoneId :: Lens.Lens' FileSystemDescription (Prelude.Maybe Prelude.Text)
fileSystemDescription_availabilityZoneId :: (Maybe Text -> f (Maybe Text))
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_availabilityZoneId = (FileSystemDescription -> Maybe Text)
-> (FileSystemDescription -> Maybe Text -> FileSystemDescription)
-> Lens
FileSystemDescription
FileSystemDescription
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {Maybe Text
availabilityZoneId :: Maybe Text
$sel:availabilityZoneId:FileSystemDescription' :: FileSystemDescription -> Maybe Text
availabilityZoneId} -> Maybe Text
availabilityZoneId) (\s :: FileSystemDescription
s@FileSystemDescription' {} Maybe Text
a -> FileSystemDescription
s {$sel:availabilityZoneId:FileSystemDescription' :: Maybe Text
availabilityZoneId = Maybe Text
a} :: FileSystemDescription)
fileSystemDescription_provisionedThroughputInMibps :: Lens.Lens' FileSystemDescription (Prelude.Maybe Prelude.Double)
fileSystemDescription_provisionedThroughputInMibps :: (Maybe Double -> f (Maybe Double))
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_provisionedThroughputInMibps = (FileSystemDescription -> Maybe Double)
-> (FileSystemDescription -> Maybe Double -> FileSystemDescription)
-> Lens
FileSystemDescription
FileSystemDescription
(Maybe Double)
(Maybe Double)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {Maybe Double
provisionedThroughputInMibps :: Maybe Double
$sel:provisionedThroughputInMibps:FileSystemDescription' :: FileSystemDescription -> Maybe Double
provisionedThroughputInMibps} -> Maybe Double
provisionedThroughputInMibps) (\s :: FileSystemDescription
s@FileSystemDescription' {} Maybe Double
a -> FileSystemDescription
s {$sel:provisionedThroughputInMibps:FileSystemDescription' :: Maybe Double
provisionedThroughputInMibps = Maybe Double
a} :: FileSystemDescription)
fileSystemDescription_availabilityZoneName :: Lens.Lens' FileSystemDescription (Prelude.Maybe Prelude.Text)
fileSystemDescription_availabilityZoneName :: (Maybe Text -> f (Maybe Text))
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_availabilityZoneName = (FileSystemDescription -> Maybe Text)
-> (FileSystemDescription -> Maybe Text -> FileSystemDescription)
-> Lens
FileSystemDescription
FileSystemDescription
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {Maybe Text
availabilityZoneName :: Maybe Text
$sel:availabilityZoneName:FileSystemDescription' :: FileSystemDescription -> Maybe Text
availabilityZoneName} -> Maybe Text
availabilityZoneName) (\s :: FileSystemDescription
s@FileSystemDescription' {} Maybe Text
a -> FileSystemDescription
s {$sel:availabilityZoneName:FileSystemDescription' :: Maybe Text
availabilityZoneName = Maybe Text
a} :: FileSystemDescription)
fileSystemDescription_fileSystemArn :: Lens.Lens' FileSystemDescription (Prelude.Maybe Prelude.Text)
fileSystemDescription_fileSystemArn :: (Maybe Text -> f (Maybe Text))
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_fileSystemArn = (FileSystemDescription -> Maybe Text)
-> (FileSystemDescription -> Maybe Text -> FileSystemDescription)
-> Lens
FileSystemDescription
FileSystemDescription
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {Maybe Text
fileSystemArn :: Maybe Text
$sel:fileSystemArn:FileSystemDescription' :: FileSystemDescription -> Maybe Text
fileSystemArn} -> Maybe Text
fileSystemArn) (\s :: FileSystemDescription
s@FileSystemDescription' {} Maybe Text
a -> FileSystemDescription
s {$sel:fileSystemArn:FileSystemDescription' :: Maybe Text
fileSystemArn = Maybe Text
a} :: FileSystemDescription)
fileSystemDescription_encrypted :: Lens.Lens' FileSystemDescription (Prelude.Maybe Prelude.Bool)
fileSystemDescription_encrypted :: (Maybe Bool -> f (Maybe Bool))
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_encrypted = (FileSystemDescription -> Maybe Bool)
-> (FileSystemDescription -> Maybe Bool -> FileSystemDescription)
-> Lens
FileSystemDescription
FileSystemDescription
(Maybe Bool)
(Maybe Bool)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {Maybe Bool
encrypted :: Maybe Bool
$sel:encrypted:FileSystemDescription' :: FileSystemDescription -> Maybe Bool
encrypted} -> Maybe Bool
encrypted) (\s :: FileSystemDescription
s@FileSystemDescription' {} Maybe Bool
a -> FileSystemDescription
s {$sel:encrypted:FileSystemDescription' :: Maybe Bool
encrypted = Maybe Bool
a} :: FileSystemDescription)
fileSystemDescription_throughputMode :: Lens.Lens' FileSystemDescription (Prelude.Maybe ThroughputMode)
fileSystemDescription_throughputMode :: (Maybe ThroughputMode -> f (Maybe ThroughputMode))
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_throughputMode = (FileSystemDescription -> Maybe ThroughputMode)
-> (FileSystemDescription
-> Maybe ThroughputMode -> FileSystemDescription)
-> Lens
FileSystemDescription
FileSystemDescription
(Maybe ThroughputMode)
(Maybe ThroughputMode)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {Maybe ThroughputMode
throughputMode :: Maybe ThroughputMode
$sel:throughputMode:FileSystemDescription' :: FileSystemDescription -> Maybe ThroughputMode
throughputMode} -> Maybe ThroughputMode
throughputMode) (\s :: FileSystemDescription
s@FileSystemDescription' {} Maybe ThroughputMode
a -> FileSystemDescription
s {$sel:throughputMode:FileSystemDescription' :: Maybe ThroughputMode
throughputMode = Maybe ThroughputMode
a} :: FileSystemDescription)
fileSystemDescription_kmsKeyId :: Lens.Lens' FileSystemDescription (Prelude.Maybe Prelude.Text)
fileSystemDescription_kmsKeyId :: (Maybe Text -> f (Maybe Text))
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_kmsKeyId = (FileSystemDescription -> Maybe Text)
-> (FileSystemDescription -> Maybe Text -> FileSystemDescription)
-> Lens
FileSystemDescription
FileSystemDescription
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {Maybe Text
kmsKeyId :: Maybe Text
$sel:kmsKeyId:FileSystemDescription' :: FileSystemDescription -> Maybe Text
kmsKeyId} -> Maybe Text
kmsKeyId) (\s :: FileSystemDescription
s@FileSystemDescription' {} Maybe Text
a -> FileSystemDescription
s {$sel:kmsKeyId:FileSystemDescription' :: Maybe Text
kmsKeyId = Maybe Text
a} :: FileSystemDescription)
fileSystemDescription_name :: Lens.Lens' FileSystemDescription (Prelude.Maybe Prelude.Text)
fileSystemDescription_name :: (Maybe Text -> f (Maybe Text))
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_name = (FileSystemDescription -> Maybe Text)
-> (FileSystemDescription -> Maybe Text -> FileSystemDescription)
-> Lens
FileSystemDescription
FileSystemDescription
(Maybe Text)
(Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {Maybe Text
name :: Maybe Text
$sel:name:FileSystemDescription' :: FileSystemDescription -> Maybe Text
name} -> Maybe Text
name) (\s :: FileSystemDescription
s@FileSystemDescription' {} Maybe Text
a -> FileSystemDescription
s {$sel:name:FileSystemDescription' :: Maybe Text
name = Maybe Text
a} :: FileSystemDescription)
fileSystemDescription_ownerId :: Lens.Lens' FileSystemDescription Prelude.Text
fileSystemDescription_ownerId :: (Text -> f Text)
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_ownerId = (FileSystemDescription -> Text)
-> (FileSystemDescription -> Text -> FileSystemDescription)
-> Lens FileSystemDescription FileSystemDescription Text Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {Text
ownerId :: Text
$sel:ownerId:FileSystemDescription' :: FileSystemDescription -> Text
ownerId} -> Text
ownerId) (\s :: FileSystemDescription
s@FileSystemDescription' {} Text
a -> FileSystemDescription
s {$sel:ownerId:FileSystemDescription' :: Text
ownerId = Text
a} :: FileSystemDescription)
fileSystemDescription_creationToken :: Lens.Lens' FileSystemDescription Prelude.Text
fileSystemDescription_creationToken :: (Text -> f Text)
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_creationToken = (FileSystemDescription -> Text)
-> (FileSystemDescription -> Text -> FileSystemDescription)
-> Lens FileSystemDescription FileSystemDescription Text Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {Text
creationToken :: Text
$sel:creationToken:FileSystemDescription' :: FileSystemDescription -> Text
creationToken} -> Text
creationToken) (\s :: FileSystemDescription
s@FileSystemDescription' {} Text
a -> FileSystemDescription
s {$sel:creationToken:FileSystemDescription' :: Text
creationToken = Text
a} :: FileSystemDescription)
fileSystemDescription_fileSystemId :: Lens.Lens' FileSystemDescription Prelude.Text
fileSystemDescription_fileSystemId :: (Text -> f Text)
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_fileSystemId = (FileSystemDescription -> Text)
-> (FileSystemDescription -> Text -> FileSystemDescription)
-> Lens FileSystemDescription FileSystemDescription Text Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {Text
fileSystemId :: Text
$sel:fileSystemId:FileSystemDescription' :: FileSystemDescription -> Text
fileSystemId} -> Text
fileSystemId) (\s :: FileSystemDescription
s@FileSystemDescription' {} Text
a -> FileSystemDescription
s {$sel:fileSystemId:FileSystemDescription' :: Text
fileSystemId = Text
a} :: FileSystemDescription)
fileSystemDescription_creationTime :: Lens.Lens' FileSystemDescription Prelude.UTCTime
fileSystemDescription_creationTime :: (UTCTime -> f UTCTime)
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_creationTime = (FileSystemDescription -> POSIX)
-> (FileSystemDescription -> POSIX -> FileSystemDescription)
-> Lens FileSystemDescription FileSystemDescription POSIX POSIX
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {POSIX
creationTime :: POSIX
$sel:creationTime:FileSystemDescription' :: FileSystemDescription -> POSIX
creationTime} -> POSIX
creationTime) (\s :: FileSystemDescription
s@FileSystemDescription' {} POSIX
a -> FileSystemDescription
s {$sel:creationTime:FileSystemDescription' :: POSIX
creationTime = POSIX
a} :: FileSystemDescription) ((POSIX -> f POSIX)
-> FileSystemDescription -> f FileSystemDescription)
-> ((UTCTime -> f UTCTime) -> POSIX -> f POSIX)
-> (UTCTime -> f UTCTime)
-> FileSystemDescription
-> f FileSystemDescription
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (UTCTime -> f UTCTime) -> POSIX -> f POSIX
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time
fileSystemDescription_lifeCycleState :: Lens.Lens' FileSystemDescription LifeCycleState
fileSystemDescription_lifeCycleState :: (LifeCycleState -> f LifeCycleState)
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_lifeCycleState = (FileSystemDescription -> LifeCycleState)
-> (FileSystemDescription
-> LifeCycleState -> FileSystemDescription)
-> Lens
FileSystemDescription
FileSystemDescription
LifeCycleState
LifeCycleState
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {LifeCycleState
lifeCycleState :: LifeCycleState
$sel:lifeCycleState:FileSystemDescription' :: FileSystemDescription -> LifeCycleState
lifeCycleState} -> LifeCycleState
lifeCycleState) (\s :: FileSystemDescription
s@FileSystemDescription' {} LifeCycleState
a -> FileSystemDescription
s {$sel:lifeCycleState:FileSystemDescription' :: LifeCycleState
lifeCycleState = LifeCycleState
a} :: FileSystemDescription)
fileSystemDescription_numberOfMountTargets :: Lens.Lens' FileSystemDescription Prelude.Natural
fileSystemDescription_numberOfMountTargets :: (Natural -> f Natural)
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_numberOfMountTargets = (FileSystemDescription -> Natural)
-> (FileSystemDescription -> Natural -> FileSystemDescription)
-> Lens FileSystemDescription FileSystemDescription Natural Natural
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {Natural
numberOfMountTargets :: Natural
$sel:numberOfMountTargets:FileSystemDescription' :: FileSystemDescription -> Natural
numberOfMountTargets} -> Natural
numberOfMountTargets) (\s :: FileSystemDescription
s@FileSystemDescription' {} Natural
a -> FileSystemDescription
s {$sel:numberOfMountTargets:FileSystemDescription' :: Natural
numberOfMountTargets = Natural
a} :: FileSystemDescription)
fileSystemDescription_sizeInBytes :: Lens.Lens' FileSystemDescription FileSystemSize
fileSystemDescription_sizeInBytes :: (FileSystemSize -> f FileSystemSize)
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_sizeInBytes = (FileSystemDescription -> FileSystemSize)
-> (FileSystemDescription
-> FileSystemSize -> FileSystemDescription)
-> Lens
FileSystemDescription
FileSystemDescription
FileSystemSize
FileSystemSize
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {FileSystemSize
sizeInBytes :: FileSystemSize
$sel:sizeInBytes:FileSystemDescription' :: FileSystemDescription -> FileSystemSize
sizeInBytes} -> FileSystemSize
sizeInBytes) (\s :: FileSystemDescription
s@FileSystemDescription' {} FileSystemSize
a -> FileSystemDescription
s {$sel:sizeInBytes:FileSystemDescription' :: FileSystemSize
sizeInBytes = FileSystemSize
a} :: FileSystemDescription)
fileSystemDescription_performanceMode :: Lens.Lens' FileSystemDescription PerformanceMode
fileSystemDescription_performanceMode :: (PerformanceMode -> f PerformanceMode)
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_performanceMode = (FileSystemDescription -> PerformanceMode)
-> (FileSystemDescription
-> PerformanceMode -> FileSystemDescription)
-> Lens
FileSystemDescription
FileSystemDescription
PerformanceMode
PerformanceMode
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {PerformanceMode
performanceMode :: PerformanceMode
$sel:performanceMode:FileSystemDescription' :: FileSystemDescription -> PerformanceMode
performanceMode} -> PerformanceMode
performanceMode) (\s :: FileSystemDescription
s@FileSystemDescription' {} PerformanceMode
a -> FileSystemDescription
s {$sel:performanceMode:FileSystemDescription' :: PerformanceMode
performanceMode = PerformanceMode
a} :: FileSystemDescription)
fileSystemDescription_tags :: Lens.Lens' FileSystemDescription [Tag]
fileSystemDescription_tags :: ([Tag] -> f [Tag])
-> FileSystemDescription -> f FileSystemDescription
fileSystemDescription_tags = (FileSystemDescription -> [Tag])
-> (FileSystemDescription -> [Tag] -> FileSystemDescription)
-> Lens FileSystemDescription FileSystemDescription [Tag] [Tag]
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\FileSystemDescription' {[Tag]
tags :: [Tag]
$sel:tags:FileSystemDescription' :: FileSystemDescription -> [Tag]
tags} -> [Tag]
tags) (\s :: FileSystemDescription
s@FileSystemDescription' {} [Tag]
a -> FileSystemDescription
s {$sel:tags:FileSystemDescription' :: [Tag]
tags = [Tag]
a} :: FileSystemDescription) (([Tag] -> f [Tag])
-> FileSystemDescription -> f FileSystemDescription)
-> (([Tag] -> f [Tag]) -> [Tag] -> f [Tag])
-> ([Tag] -> f [Tag])
-> FileSystemDescription
-> f FileSystemDescription
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Tag] -> f [Tag]) -> [Tag] -> f [Tag]
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instance Core.FromJSON FileSystemDescription where
parseJSON :: Value -> Parser FileSystemDescription
parseJSON =
String
-> (Object -> Parser FileSystemDescription)
-> Value
-> Parser FileSystemDescription
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
String
"FileSystemDescription"
( \Object
x ->
Maybe Text
-> Maybe Double
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription
FileSystemDescription'
(Maybe Text
-> Maybe Double
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser (Maybe Text)
-> Parser
(Maybe Double
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"AvailabilityZoneId")
Parser
(Maybe Double
-> Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser (Maybe Double)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Double)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"ProvisionedThroughputInMibps")
Parser
(Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Bool
-> Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"AvailabilityZoneName")
Parser
(Maybe Text
-> Maybe Bool
-> Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser (Maybe Text)
-> Parser
(Maybe Bool
-> Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"FileSystemArn")
Parser
(Maybe Bool
-> Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser (Maybe Bool)
-> Parser
(Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"Encrypted")
Parser
(Maybe ThroughputMode
-> Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser (Maybe ThroughputMode)
-> Parser
(Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe ThroughputMode)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"ThroughputMode")
Parser
(Maybe Text
-> Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"KmsKeyId")
Parser
(Maybe Text
-> Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser (Maybe Text)
-> Parser
(Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"Name")
Parser
(Text
-> Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser Text
-> Parser
(Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"OwnerId")
Parser
(Text
-> Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser Text
-> Parser
(Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"CreationToken")
Parser
(Text
-> POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser Text
-> Parser
(POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"FileSystemId")
Parser
(POSIX
-> LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser POSIX
-> Parser
(LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser POSIX
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"CreationTime")
Parser
(LifeCycleState
-> Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser LifeCycleState
-> Parser
(Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser LifeCycleState
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"LifeCycleState")
Parser
(Natural
-> FileSystemSize
-> PerformanceMode
-> [Tag]
-> FileSystemDescription)
-> Parser Natural
-> Parser
(FileSystemSize
-> PerformanceMode -> [Tag] -> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser Natural
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"NumberOfMountTargets")
Parser
(FileSystemSize
-> PerformanceMode -> [Tag] -> FileSystemDescription)
-> Parser FileSystemSize
-> Parser (PerformanceMode -> [Tag] -> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser FileSystemSize
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"SizeInBytes")
Parser (PerformanceMode -> [Tag] -> FileSystemDescription)
-> Parser PerformanceMode
-> Parser ([Tag] -> FileSystemDescription)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser PerformanceMode
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"PerformanceMode")
Parser ([Tag] -> FileSystemDescription)
-> Parser [Tag] -> Parser FileSystemDescription
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe [Tag])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"Tags" Parser (Maybe [Tag]) -> [Tag] -> Parser [Tag]
forall a. Parser (Maybe a) -> a -> Parser a
Core..!= [Tag]
forall a. Monoid a => a
Prelude.mempty)
)
instance Prelude.Hashable FileSystemDescription
instance Prelude.NFData FileSystemDescription