{-# 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.WorkSpaces.Types.DefaultWorkspaceCreationProperties where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
data DefaultWorkspaceCreationProperties = DefaultWorkspaceCreationProperties'
{
DefaultWorkspaceCreationProperties -> Maybe Text
customSecurityGroupId :: Prelude.Maybe Prelude.Text,
DefaultWorkspaceCreationProperties -> Maybe Text
defaultOu :: Prelude.Maybe Prelude.Text,
DefaultWorkspaceCreationProperties -> Maybe Bool
enableInternetAccess :: Prelude.Maybe Prelude.Bool,
DefaultWorkspaceCreationProperties -> Maybe Bool
enableMaintenanceMode :: Prelude.Maybe Prelude.Bool,
DefaultWorkspaceCreationProperties -> Maybe Bool
enableWorkDocs :: Prelude.Maybe Prelude.Bool,
DefaultWorkspaceCreationProperties -> Maybe Bool
userEnabledAsLocalAdministrator :: Prelude.Maybe Prelude.Bool
}
deriving (DefaultWorkspaceCreationProperties
-> DefaultWorkspaceCreationProperties -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DefaultWorkspaceCreationProperties
-> DefaultWorkspaceCreationProperties -> Bool
$c/= :: DefaultWorkspaceCreationProperties
-> DefaultWorkspaceCreationProperties -> Bool
== :: DefaultWorkspaceCreationProperties
-> DefaultWorkspaceCreationProperties -> Bool
$c== :: DefaultWorkspaceCreationProperties
-> DefaultWorkspaceCreationProperties -> Bool
Prelude.Eq, ReadPrec [DefaultWorkspaceCreationProperties]
ReadPrec DefaultWorkspaceCreationProperties
Int -> ReadS DefaultWorkspaceCreationProperties
ReadS [DefaultWorkspaceCreationProperties]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DefaultWorkspaceCreationProperties]
$creadListPrec :: ReadPrec [DefaultWorkspaceCreationProperties]
readPrec :: ReadPrec DefaultWorkspaceCreationProperties
$creadPrec :: ReadPrec DefaultWorkspaceCreationProperties
readList :: ReadS [DefaultWorkspaceCreationProperties]
$creadList :: ReadS [DefaultWorkspaceCreationProperties]
readsPrec :: Int -> ReadS DefaultWorkspaceCreationProperties
$creadsPrec :: Int -> ReadS DefaultWorkspaceCreationProperties
Prelude.Read, Int -> DefaultWorkspaceCreationProperties -> ShowS
[DefaultWorkspaceCreationProperties] -> ShowS
DefaultWorkspaceCreationProperties -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DefaultWorkspaceCreationProperties] -> ShowS
$cshowList :: [DefaultWorkspaceCreationProperties] -> ShowS
show :: DefaultWorkspaceCreationProperties -> String
$cshow :: DefaultWorkspaceCreationProperties -> String
showsPrec :: Int -> DefaultWorkspaceCreationProperties -> ShowS
$cshowsPrec :: Int -> DefaultWorkspaceCreationProperties -> ShowS
Prelude.Show, forall x.
Rep DefaultWorkspaceCreationProperties x
-> DefaultWorkspaceCreationProperties
forall x.
DefaultWorkspaceCreationProperties
-> Rep DefaultWorkspaceCreationProperties x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DefaultWorkspaceCreationProperties x
-> DefaultWorkspaceCreationProperties
$cfrom :: forall x.
DefaultWorkspaceCreationProperties
-> Rep DefaultWorkspaceCreationProperties x
Prelude.Generic)
newDefaultWorkspaceCreationProperties ::
DefaultWorkspaceCreationProperties
newDefaultWorkspaceCreationProperties :: DefaultWorkspaceCreationProperties
newDefaultWorkspaceCreationProperties =
DefaultWorkspaceCreationProperties'
{ $sel:customSecurityGroupId:DefaultWorkspaceCreationProperties' :: Maybe Text
customSecurityGroupId =
forall a. Maybe a
Prelude.Nothing,
$sel:defaultOu:DefaultWorkspaceCreationProperties' :: Maybe Text
defaultOu = forall a. Maybe a
Prelude.Nothing,
$sel:enableInternetAccess:DefaultWorkspaceCreationProperties' :: Maybe Bool
enableInternetAccess = forall a. Maybe a
Prelude.Nothing,
$sel:enableMaintenanceMode:DefaultWorkspaceCreationProperties' :: Maybe Bool
enableMaintenanceMode = forall a. Maybe a
Prelude.Nothing,
$sel:enableWorkDocs:DefaultWorkspaceCreationProperties' :: Maybe Bool
enableWorkDocs = forall a. Maybe a
Prelude.Nothing,
$sel:userEnabledAsLocalAdministrator:DefaultWorkspaceCreationProperties' :: Maybe Bool
userEnabledAsLocalAdministrator =
forall a. Maybe a
Prelude.Nothing
}
defaultWorkspaceCreationProperties_customSecurityGroupId :: Lens.Lens' DefaultWorkspaceCreationProperties (Prelude.Maybe Prelude.Text)
defaultWorkspaceCreationProperties_customSecurityGroupId :: Lens' DefaultWorkspaceCreationProperties (Maybe Text)
defaultWorkspaceCreationProperties_customSecurityGroupId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DefaultWorkspaceCreationProperties' {Maybe Text
customSecurityGroupId :: Maybe Text
$sel:customSecurityGroupId:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Text
customSecurityGroupId} -> Maybe Text
customSecurityGroupId) (\s :: DefaultWorkspaceCreationProperties
s@DefaultWorkspaceCreationProperties' {} Maybe Text
a -> DefaultWorkspaceCreationProperties
s {$sel:customSecurityGroupId:DefaultWorkspaceCreationProperties' :: Maybe Text
customSecurityGroupId = Maybe Text
a} :: DefaultWorkspaceCreationProperties)
defaultWorkspaceCreationProperties_defaultOu :: Lens.Lens' DefaultWorkspaceCreationProperties (Prelude.Maybe Prelude.Text)
defaultWorkspaceCreationProperties_defaultOu :: Lens' DefaultWorkspaceCreationProperties (Maybe Text)
defaultWorkspaceCreationProperties_defaultOu = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DefaultWorkspaceCreationProperties' {Maybe Text
defaultOu :: Maybe Text
$sel:defaultOu:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Text
defaultOu} -> Maybe Text
defaultOu) (\s :: DefaultWorkspaceCreationProperties
s@DefaultWorkspaceCreationProperties' {} Maybe Text
a -> DefaultWorkspaceCreationProperties
s {$sel:defaultOu:DefaultWorkspaceCreationProperties' :: Maybe Text
defaultOu = Maybe Text
a} :: DefaultWorkspaceCreationProperties)
defaultWorkspaceCreationProperties_enableInternetAccess :: Lens.Lens' DefaultWorkspaceCreationProperties (Prelude.Maybe Prelude.Bool)
defaultWorkspaceCreationProperties_enableInternetAccess :: Lens' DefaultWorkspaceCreationProperties (Maybe Bool)
defaultWorkspaceCreationProperties_enableInternetAccess = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DefaultWorkspaceCreationProperties' {Maybe Bool
enableInternetAccess :: Maybe Bool
$sel:enableInternetAccess:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Bool
enableInternetAccess} -> Maybe Bool
enableInternetAccess) (\s :: DefaultWorkspaceCreationProperties
s@DefaultWorkspaceCreationProperties' {} Maybe Bool
a -> DefaultWorkspaceCreationProperties
s {$sel:enableInternetAccess:DefaultWorkspaceCreationProperties' :: Maybe Bool
enableInternetAccess = Maybe Bool
a} :: DefaultWorkspaceCreationProperties)
defaultWorkspaceCreationProperties_enableMaintenanceMode :: Lens.Lens' DefaultWorkspaceCreationProperties (Prelude.Maybe Prelude.Bool)
defaultWorkspaceCreationProperties_enableMaintenanceMode :: Lens' DefaultWorkspaceCreationProperties (Maybe Bool)
defaultWorkspaceCreationProperties_enableMaintenanceMode = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DefaultWorkspaceCreationProperties' {Maybe Bool
enableMaintenanceMode :: Maybe Bool
$sel:enableMaintenanceMode:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Bool
enableMaintenanceMode} -> Maybe Bool
enableMaintenanceMode) (\s :: DefaultWorkspaceCreationProperties
s@DefaultWorkspaceCreationProperties' {} Maybe Bool
a -> DefaultWorkspaceCreationProperties
s {$sel:enableMaintenanceMode:DefaultWorkspaceCreationProperties' :: Maybe Bool
enableMaintenanceMode = Maybe Bool
a} :: DefaultWorkspaceCreationProperties)
defaultWorkspaceCreationProperties_enableWorkDocs :: Lens.Lens' DefaultWorkspaceCreationProperties (Prelude.Maybe Prelude.Bool)
defaultWorkspaceCreationProperties_enableWorkDocs :: Lens' DefaultWorkspaceCreationProperties (Maybe Bool)
defaultWorkspaceCreationProperties_enableWorkDocs = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DefaultWorkspaceCreationProperties' {Maybe Bool
enableWorkDocs :: Maybe Bool
$sel:enableWorkDocs:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Bool
enableWorkDocs} -> Maybe Bool
enableWorkDocs) (\s :: DefaultWorkspaceCreationProperties
s@DefaultWorkspaceCreationProperties' {} Maybe Bool
a -> DefaultWorkspaceCreationProperties
s {$sel:enableWorkDocs:DefaultWorkspaceCreationProperties' :: Maybe Bool
enableWorkDocs = Maybe Bool
a} :: DefaultWorkspaceCreationProperties)
defaultWorkspaceCreationProperties_userEnabledAsLocalAdministrator :: Lens.Lens' DefaultWorkspaceCreationProperties (Prelude.Maybe Prelude.Bool)
defaultWorkspaceCreationProperties_userEnabledAsLocalAdministrator :: Lens' DefaultWorkspaceCreationProperties (Maybe Bool)
defaultWorkspaceCreationProperties_userEnabledAsLocalAdministrator = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DefaultWorkspaceCreationProperties' {Maybe Bool
userEnabledAsLocalAdministrator :: Maybe Bool
$sel:userEnabledAsLocalAdministrator:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Bool
userEnabledAsLocalAdministrator} -> Maybe Bool
userEnabledAsLocalAdministrator) (\s :: DefaultWorkspaceCreationProperties
s@DefaultWorkspaceCreationProperties' {} Maybe Bool
a -> DefaultWorkspaceCreationProperties
s {$sel:userEnabledAsLocalAdministrator:DefaultWorkspaceCreationProperties' :: Maybe Bool
userEnabledAsLocalAdministrator = Maybe Bool
a} :: DefaultWorkspaceCreationProperties)
instance
Data.FromJSON
DefaultWorkspaceCreationProperties
where
parseJSON :: Value -> Parser DefaultWorkspaceCreationProperties
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"DefaultWorkspaceCreationProperties"
( \Object
x ->
Maybe Text
-> Maybe Text
-> Maybe Bool
-> Maybe Bool
-> Maybe Bool
-> Maybe Bool
-> DefaultWorkspaceCreationProperties
DefaultWorkspaceCreationProperties'
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
"CustomSecurityGroupId")
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
"DefaultOu")
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
"EnableInternetAccess")
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
"EnableMaintenanceMode")
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
"EnableWorkDocs")
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
"UserEnabledAsLocalAdministrator")
)
instance
Prelude.Hashable
DefaultWorkspaceCreationProperties
where
hashWithSalt :: Int -> DefaultWorkspaceCreationProperties -> Int
hashWithSalt
Int
_salt
DefaultWorkspaceCreationProperties' {Maybe Bool
Maybe Text
userEnabledAsLocalAdministrator :: Maybe Bool
enableWorkDocs :: Maybe Bool
enableMaintenanceMode :: Maybe Bool
enableInternetAccess :: Maybe Bool
defaultOu :: Maybe Text
customSecurityGroupId :: Maybe Text
$sel:userEnabledAsLocalAdministrator:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Bool
$sel:enableWorkDocs:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Bool
$sel:enableMaintenanceMode:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Bool
$sel:enableInternetAccess:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Bool
$sel:defaultOu:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Text
$sel:customSecurityGroupId:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
customSecurityGroupId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
defaultOu
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
enableInternetAccess
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
enableMaintenanceMode
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
enableWorkDocs
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
userEnabledAsLocalAdministrator
instance
Prelude.NFData
DefaultWorkspaceCreationProperties
where
rnf :: DefaultWorkspaceCreationProperties -> ()
rnf DefaultWorkspaceCreationProperties' {Maybe Bool
Maybe Text
userEnabledAsLocalAdministrator :: Maybe Bool
enableWorkDocs :: Maybe Bool
enableMaintenanceMode :: Maybe Bool
enableInternetAccess :: Maybe Bool
defaultOu :: Maybe Text
customSecurityGroupId :: Maybe Text
$sel:userEnabledAsLocalAdministrator:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Bool
$sel:enableWorkDocs:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Bool
$sel:enableMaintenanceMode:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Bool
$sel:enableInternetAccess:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Bool
$sel:defaultOu:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Text
$sel:customSecurityGroupId:DefaultWorkspaceCreationProperties' :: DefaultWorkspaceCreationProperties -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
customSecurityGroupId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
defaultOu
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
enableInternetAccess
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
enableMaintenanceMode
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
enableWorkDocs
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
userEnabledAsLocalAdministrator