{-# 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 #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.FinSpace.Types.Environment
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.FinSpace.Types.Environment where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.FinSpace.Types.EnvironmentStatus
import Amazonka.FinSpace.Types.FederationMode
import Amazonka.FinSpace.Types.FederationParameters
import qualified Amazonka.Prelude as Prelude

-- | Represents an FinSpace environment.
--
-- /See:/ 'newEnvironment' smart constructor.
data Environment = Environment'
  { -- | The ID of the AWS account in which the FinSpace environment is created.
    Environment -> Maybe Text
awsAccountId :: Prelude.Maybe Prelude.Text,
    -- | The AWS account ID of the dedicated service account associated with your
    -- FinSpace environment.
    Environment -> Maybe Text
dedicatedServiceAccountId :: Prelude.Maybe Prelude.Text,
    -- | The description of the FinSpace environment.
    Environment -> Maybe Text
description :: Prelude.Maybe Prelude.Text,
    -- | The Amazon Resource Name (ARN) of your FinSpace environment.
    Environment -> Maybe Text
environmentArn :: Prelude.Maybe Prelude.Text,
    -- | The identifier of the FinSpace environment.
    Environment -> Maybe Text
environmentId :: Prelude.Maybe Prelude.Text,
    -- | The sign-in url for the web application of your FinSpace environment.
    Environment -> Maybe Text
environmentUrl :: Prelude.Maybe Prelude.Text,
    -- | The authentication mode for the environment.
    Environment -> Maybe FederationMode
federationMode :: Prelude.Maybe FederationMode,
    -- | Configuration information when authentication mode is FEDERATED.
    Environment -> Maybe FederationParameters
federationParameters :: Prelude.Maybe FederationParameters,
    -- | The KMS key id used to encrypt in the FinSpace environment.
    Environment -> Maybe Text
kmsKeyId :: Prelude.Maybe Prelude.Text,
    -- | The name of the FinSpace environment.
    Environment -> Maybe Text
name :: Prelude.Maybe Prelude.Text,
    -- | The url of the integrated FinSpace notebook environment in your web
    -- application.
    Environment -> Maybe Text
sageMakerStudioDomainUrl :: Prelude.Maybe Prelude.Text,
    -- | The current status of creation of the FinSpace environment.
    Environment -> Maybe EnvironmentStatus
status :: Prelude.Maybe EnvironmentStatus
  }
  deriving (Environment -> Environment -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Environment -> Environment -> Bool
$c/= :: Environment -> Environment -> Bool
== :: Environment -> Environment -> Bool
$c== :: Environment -> Environment -> Bool
Prelude.Eq, ReadPrec [Environment]
ReadPrec Environment
Int -> ReadS Environment
ReadS [Environment]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [Environment]
$creadListPrec :: ReadPrec [Environment]
readPrec :: ReadPrec Environment
$creadPrec :: ReadPrec Environment
readList :: ReadS [Environment]
$creadList :: ReadS [Environment]
readsPrec :: Int -> ReadS Environment
$creadsPrec :: Int -> ReadS Environment
Prelude.Read, Int -> Environment -> ShowS
[Environment] -> ShowS
Environment -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Environment] -> ShowS
$cshowList :: [Environment] -> ShowS
show :: Environment -> String
$cshow :: Environment -> String
showsPrec :: Int -> Environment -> ShowS
$cshowsPrec :: Int -> Environment -> ShowS
Prelude.Show, forall x. Rep Environment x -> Environment
forall x. Environment -> Rep Environment x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep Environment x -> Environment
$cfrom :: forall x. Environment -> Rep Environment x
Prelude.Generic)

-- |
-- Create a value of 'Environment' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'awsAccountId', 'environment_awsAccountId' - The ID of the AWS account in which the FinSpace environment is created.
--
-- 'dedicatedServiceAccountId', 'environment_dedicatedServiceAccountId' - The AWS account ID of the dedicated service account associated with your
-- FinSpace environment.
--
-- 'description', 'environment_description' - The description of the FinSpace environment.
--
-- 'environmentArn', 'environment_environmentArn' - The Amazon Resource Name (ARN) of your FinSpace environment.
--
-- 'environmentId', 'environment_environmentId' - The identifier of the FinSpace environment.
--
-- 'environmentUrl', 'environment_environmentUrl' - The sign-in url for the web application of your FinSpace environment.
--
-- 'federationMode', 'environment_federationMode' - The authentication mode for the environment.
--
-- 'federationParameters', 'environment_federationParameters' - Configuration information when authentication mode is FEDERATED.
--
-- 'kmsKeyId', 'environment_kmsKeyId' - The KMS key id used to encrypt in the FinSpace environment.
--
-- 'name', 'environment_name' - The name of the FinSpace environment.
--
-- 'sageMakerStudioDomainUrl', 'environment_sageMakerStudioDomainUrl' - The url of the integrated FinSpace notebook environment in your web
-- application.
--
-- 'status', 'environment_status' - The current status of creation of the FinSpace environment.
newEnvironment ::
  Environment
newEnvironment :: Environment
newEnvironment =
  Environment'
    { $sel:awsAccountId:Environment' :: Maybe Text
awsAccountId = forall a. Maybe a
Prelude.Nothing,
      $sel:dedicatedServiceAccountId:Environment' :: Maybe Text
dedicatedServiceAccountId = forall a. Maybe a
Prelude.Nothing,
      $sel:description:Environment' :: Maybe Text
description = forall a. Maybe a
Prelude.Nothing,
      $sel:environmentArn:Environment' :: Maybe Text
environmentArn = forall a. Maybe a
Prelude.Nothing,
      $sel:environmentId:Environment' :: Maybe Text
environmentId = forall a. Maybe a
Prelude.Nothing,
      $sel:environmentUrl:Environment' :: Maybe Text
environmentUrl = forall a. Maybe a
Prelude.Nothing,
      $sel:federationMode:Environment' :: Maybe FederationMode
federationMode = forall a. Maybe a
Prelude.Nothing,
      $sel:federationParameters:Environment' :: Maybe FederationParameters
federationParameters = forall a. Maybe a
Prelude.Nothing,
      $sel:kmsKeyId:Environment' :: Maybe Text
kmsKeyId = forall a. Maybe a
Prelude.Nothing,
      $sel:name:Environment' :: Maybe Text
name = forall a. Maybe a
Prelude.Nothing,
      $sel:sageMakerStudioDomainUrl:Environment' :: Maybe Text
sageMakerStudioDomainUrl = forall a. Maybe a
Prelude.Nothing,
      $sel:status:Environment' :: Maybe EnvironmentStatus
status = forall a. Maybe a
Prelude.Nothing
    }

-- | The ID of the AWS account in which the FinSpace environment is created.
environment_awsAccountId :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)
environment_awsAccountId :: Lens' Environment (Maybe Text)
environment_awsAccountId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Environment' {Maybe Text
awsAccountId :: Maybe Text
$sel:awsAccountId:Environment' :: Environment -> Maybe Text
awsAccountId} -> Maybe Text
awsAccountId) (\s :: Environment
s@Environment' {} Maybe Text
a -> Environment
s {$sel:awsAccountId:Environment' :: Maybe Text
awsAccountId = Maybe Text
a} :: Environment)

-- | The AWS account ID of the dedicated service account associated with your
-- FinSpace environment.
environment_dedicatedServiceAccountId :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)
environment_dedicatedServiceAccountId :: Lens' Environment (Maybe Text)
environment_dedicatedServiceAccountId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Environment' {Maybe Text
dedicatedServiceAccountId :: Maybe Text
$sel:dedicatedServiceAccountId:Environment' :: Environment -> Maybe Text
dedicatedServiceAccountId} -> Maybe Text
dedicatedServiceAccountId) (\s :: Environment
s@Environment' {} Maybe Text
a -> Environment
s {$sel:dedicatedServiceAccountId:Environment' :: Maybe Text
dedicatedServiceAccountId = Maybe Text
a} :: Environment)

-- | The description of the FinSpace environment.
environment_description :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)
environment_description :: Lens' Environment (Maybe Text)
environment_description = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Environment' {Maybe Text
description :: Maybe Text
$sel:description:Environment' :: Environment -> Maybe Text
description} -> Maybe Text
description) (\s :: Environment
s@Environment' {} Maybe Text
a -> Environment
s {$sel:description:Environment' :: Maybe Text
description = Maybe Text
a} :: Environment)

-- | The Amazon Resource Name (ARN) of your FinSpace environment.
environment_environmentArn :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)
environment_environmentArn :: Lens' Environment (Maybe Text)
environment_environmentArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Environment' {Maybe Text
environmentArn :: Maybe Text
$sel:environmentArn:Environment' :: Environment -> Maybe Text
environmentArn} -> Maybe Text
environmentArn) (\s :: Environment
s@Environment' {} Maybe Text
a -> Environment
s {$sel:environmentArn:Environment' :: Maybe Text
environmentArn = Maybe Text
a} :: Environment)

-- | The identifier of the FinSpace environment.
environment_environmentId :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)
environment_environmentId :: Lens' Environment (Maybe Text)
environment_environmentId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Environment' {Maybe Text
environmentId :: Maybe Text
$sel:environmentId:Environment' :: Environment -> Maybe Text
environmentId} -> Maybe Text
environmentId) (\s :: Environment
s@Environment' {} Maybe Text
a -> Environment
s {$sel:environmentId:Environment' :: Maybe Text
environmentId = Maybe Text
a} :: Environment)

-- | The sign-in url for the web application of your FinSpace environment.
environment_environmentUrl :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)
environment_environmentUrl :: Lens' Environment (Maybe Text)
environment_environmentUrl = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Environment' {Maybe Text
environmentUrl :: Maybe Text
$sel:environmentUrl:Environment' :: Environment -> Maybe Text
environmentUrl} -> Maybe Text
environmentUrl) (\s :: Environment
s@Environment' {} Maybe Text
a -> Environment
s {$sel:environmentUrl:Environment' :: Maybe Text
environmentUrl = Maybe Text
a} :: Environment)

-- | The authentication mode for the environment.
environment_federationMode :: Lens.Lens' Environment (Prelude.Maybe FederationMode)
environment_federationMode :: Lens' Environment (Maybe FederationMode)
environment_federationMode = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Environment' {Maybe FederationMode
federationMode :: Maybe FederationMode
$sel:federationMode:Environment' :: Environment -> Maybe FederationMode
federationMode} -> Maybe FederationMode
federationMode) (\s :: Environment
s@Environment' {} Maybe FederationMode
a -> Environment
s {$sel:federationMode:Environment' :: Maybe FederationMode
federationMode = Maybe FederationMode
a} :: Environment)

-- | Configuration information when authentication mode is FEDERATED.
environment_federationParameters :: Lens.Lens' Environment (Prelude.Maybe FederationParameters)
environment_federationParameters :: Lens' Environment (Maybe FederationParameters)
environment_federationParameters = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Environment' {Maybe FederationParameters
federationParameters :: Maybe FederationParameters
$sel:federationParameters:Environment' :: Environment -> Maybe FederationParameters
federationParameters} -> Maybe FederationParameters
federationParameters) (\s :: Environment
s@Environment' {} Maybe FederationParameters
a -> Environment
s {$sel:federationParameters:Environment' :: Maybe FederationParameters
federationParameters = Maybe FederationParameters
a} :: Environment)

-- | The KMS key id used to encrypt in the FinSpace environment.
environment_kmsKeyId :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)
environment_kmsKeyId :: Lens' Environment (Maybe Text)
environment_kmsKeyId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Environment' {Maybe Text
kmsKeyId :: Maybe Text
$sel:kmsKeyId:Environment' :: Environment -> Maybe Text
kmsKeyId} -> Maybe Text
kmsKeyId) (\s :: Environment
s@Environment' {} Maybe Text
a -> Environment
s {$sel:kmsKeyId:Environment' :: Maybe Text
kmsKeyId = Maybe Text
a} :: Environment)

-- | The name of the FinSpace environment.
environment_name :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)
environment_name :: Lens' Environment (Maybe Text)
environment_name = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Environment' {Maybe Text
name :: Maybe Text
$sel:name:Environment' :: Environment -> Maybe Text
name} -> Maybe Text
name) (\s :: Environment
s@Environment' {} Maybe Text
a -> Environment
s {$sel:name:Environment' :: Maybe Text
name = Maybe Text
a} :: Environment)

-- | The url of the integrated FinSpace notebook environment in your web
-- application.
environment_sageMakerStudioDomainUrl :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)
environment_sageMakerStudioDomainUrl :: Lens' Environment (Maybe Text)
environment_sageMakerStudioDomainUrl = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Environment' {Maybe Text
sageMakerStudioDomainUrl :: Maybe Text
$sel:sageMakerStudioDomainUrl:Environment' :: Environment -> Maybe Text
sageMakerStudioDomainUrl} -> Maybe Text
sageMakerStudioDomainUrl) (\s :: Environment
s@Environment' {} Maybe Text
a -> Environment
s {$sel:sageMakerStudioDomainUrl:Environment' :: Maybe Text
sageMakerStudioDomainUrl = Maybe Text
a} :: Environment)

-- | The current status of creation of the FinSpace environment.
environment_status :: Lens.Lens' Environment (Prelude.Maybe EnvironmentStatus)
environment_status :: Lens' Environment (Maybe EnvironmentStatus)
environment_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Environment' {Maybe EnvironmentStatus
status :: Maybe EnvironmentStatus
$sel:status:Environment' :: Environment -> Maybe EnvironmentStatus
status} -> Maybe EnvironmentStatus
status) (\s :: Environment
s@Environment' {} Maybe EnvironmentStatus
a -> Environment
s {$sel:status:Environment' :: Maybe EnvironmentStatus
status = Maybe EnvironmentStatus
a} :: Environment)

instance Data.FromJSON Environment where
  parseJSON :: Value -> Parser Environment
parseJSON =
    forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
      String
"Environment"
      ( \Object
x ->
          Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe FederationMode
-> Maybe FederationParameters
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe EnvironmentStatus
-> Environment
Environment'
            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
"awsAccountId")
            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
"dedicatedServiceAccountId")
            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
"description")
            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
"environmentArn")
            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
"environmentId")
            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
"environmentUrl")
            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
"federationMode")
            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
"federationParameters")
            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
"kmsKeyId")
            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
"name")
            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
"sageMakerStudioDomainUrl")
            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
"status")
      )

instance Prelude.Hashable Environment where
  hashWithSalt :: Int -> Environment -> Int
hashWithSalt Int
_salt Environment' {Maybe Text
Maybe EnvironmentStatus
Maybe FederationMode
Maybe FederationParameters
status :: Maybe EnvironmentStatus
sageMakerStudioDomainUrl :: Maybe Text
name :: Maybe Text
kmsKeyId :: Maybe Text
federationParameters :: Maybe FederationParameters
federationMode :: Maybe FederationMode
environmentUrl :: Maybe Text
environmentId :: Maybe Text
environmentArn :: Maybe Text
description :: Maybe Text
dedicatedServiceAccountId :: Maybe Text
awsAccountId :: Maybe Text
$sel:status:Environment' :: Environment -> Maybe EnvironmentStatus
$sel:sageMakerStudioDomainUrl:Environment' :: Environment -> Maybe Text
$sel:name:Environment' :: Environment -> Maybe Text
$sel:kmsKeyId:Environment' :: Environment -> Maybe Text
$sel:federationParameters:Environment' :: Environment -> Maybe FederationParameters
$sel:federationMode:Environment' :: Environment -> Maybe FederationMode
$sel:environmentUrl:Environment' :: Environment -> Maybe Text
$sel:environmentId:Environment' :: Environment -> Maybe Text
$sel:environmentArn:Environment' :: Environment -> Maybe Text
$sel:description:Environment' :: Environment -> Maybe Text
$sel:dedicatedServiceAccountId:Environment' :: Environment -> Maybe Text
$sel:awsAccountId:Environment' :: Environment -> Maybe Text
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
awsAccountId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
dedicatedServiceAccountId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
description
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
environmentArn
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
environmentId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
environmentUrl
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe FederationMode
federationMode
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe FederationParameters
federationParameters
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
kmsKeyId
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
name
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
sageMakerStudioDomainUrl
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe EnvironmentStatus
status

instance Prelude.NFData Environment where
  rnf :: Environment -> ()
rnf Environment' {Maybe Text
Maybe EnvironmentStatus
Maybe FederationMode
Maybe FederationParameters
status :: Maybe EnvironmentStatus
sageMakerStudioDomainUrl :: Maybe Text
name :: Maybe Text
kmsKeyId :: Maybe Text
federationParameters :: Maybe FederationParameters
federationMode :: Maybe FederationMode
environmentUrl :: Maybe Text
environmentId :: Maybe Text
environmentArn :: Maybe Text
description :: Maybe Text
dedicatedServiceAccountId :: Maybe Text
awsAccountId :: Maybe Text
$sel:status:Environment' :: Environment -> Maybe EnvironmentStatus
$sel:sageMakerStudioDomainUrl:Environment' :: Environment -> Maybe Text
$sel:name:Environment' :: Environment -> Maybe Text
$sel:kmsKeyId:Environment' :: Environment -> Maybe Text
$sel:federationParameters:Environment' :: Environment -> Maybe FederationParameters
$sel:federationMode:Environment' :: Environment -> Maybe FederationMode
$sel:environmentUrl:Environment' :: Environment -> Maybe Text
$sel:environmentId:Environment' :: Environment -> Maybe Text
$sel:environmentArn:Environment' :: Environment -> Maybe Text
$sel:description:Environment' :: Environment -> Maybe Text
$sel:dedicatedServiceAccountId:Environment' :: Environment -> Maybe Text
$sel:awsAccountId:Environment' :: Environment -> Maybe Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
awsAccountId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
dedicatedServiceAccountId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
description
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
environmentArn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
environmentId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
environmentUrl
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe FederationMode
federationMode
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe FederationParameters
federationParameters
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
kmsKeyId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
name
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
sageMakerStudioDomainUrl
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe EnvironmentStatus
status