module Stratosphere.SageMaker.Domain.RStudioServerProDomainSettingsProperty (
        module Exports, RStudioServerProDomainSettingsProperty(..),
        mkRStudioServerProDomainSettingsProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.SageMaker.Domain.ResourceSpecProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data RStudioServerProDomainSettingsProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-rstudioserverprodomainsettings.html>
    RStudioServerProDomainSettingsProperty {RStudioServerProDomainSettingsProperty -> ()
haddock_workaround_ :: (),
                                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-rstudioserverprodomainsettings.html#cfn-sagemaker-domain-rstudioserverprodomainsettings-defaultresourcespec>
                                            RStudioServerProDomainSettingsProperty
-> Maybe ResourceSpecProperty
defaultResourceSpec :: (Prelude.Maybe ResourceSpecProperty),
                                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-rstudioserverprodomainsettings.html#cfn-sagemaker-domain-rstudioserverprodomainsettings-domainexecutionrolearn>
                                            RStudioServerProDomainSettingsProperty -> Value Text
domainExecutionRoleArn :: (Value Prelude.Text),
                                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-rstudioserverprodomainsettings.html#cfn-sagemaker-domain-rstudioserverprodomainsettings-rstudioconnecturl>
                                            RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
rStudioConnectUrl :: (Prelude.Maybe (Value Prelude.Text)),
                                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-domain-rstudioserverprodomainsettings.html#cfn-sagemaker-domain-rstudioserverprodomainsettings-rstudiopackagemanagerurl>
                                            RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
rStudioPackageManagerUrl :: (Prelude.Maybe (Value Prelude.Text))}
  deriving stock (RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty -> Bool
(RStudioServerProDomainSettingsProperty
 -> RStudioServerProDomainSettingsProperty -> Bool)
-> (RStudioServerProDomainSettingsProperty
    -> RStudioServerProDomainSettingsProperty -> Bool)
-> Eq RStudioServerProDomainSettingsProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty -> Bool
== :: RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty -> Bool
$c/= :: RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty -> Bool
/= :: RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty -> Bool
Prelude.Eq, Int -> RStudioServerProDomainSettingsProperty -> ShowS
[RStudioServerProDomainSettingsProperty] -> ShowS
RStudioServerProDomainSettingsProperty -> String
(Int -> RStudioServerProDomainSettingsProperty -> ShowS)
-> (RStudioServerProDomainSettingsProperty -> String)
-> ([RStudioServerProDomainSettingsProperty] -> ShowS)
-> Show RStudioServerProDomainSettingsProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> RStudioServerProDomainSettingsProperty -> ShowS
showsPrec :: Int -> RStudioServerProDomainSettingsProperty -> ShowS
$cshow :: RStudioServerProDomainSettingsProperty -> String
show :: RStudioServerProDomainSettingsProperty -> String
$cshowList :: [RStudioServerProDomainSettingsProperty] -> ShowS
showList :: [RStudioServerProDomainSettingsProperty] -> ShowS
Prelude.Show)
mkRStudioServerProDomainSettingsProperty ::
  Value Prelude.Text -> RStudioServerProDomainSettingsProperty
mkRStudioServerProDomainSettingsProperty :: Value Text -> RStudioServerProDomainSettingsProperty
mkRStudioServerProDomainSettingsProperty Value Text
domainExecutionRoleArn
  = RStudioServerProDomainSettingsProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (),
       domainExecutionRoleArn :: Value Text
domainExecutionRoleArn = Value Text
domainExecutionRoleArn,
       defaultResourceSpec :: Maybe ResourceSpecProperty
defaultResourceSpec = Maybe ResourceSpecProperty
forall a. Maybe a
Prelude.Nothing,
       rStudioConnectUrl :: Maybe (Value Text)
rStudioConnectUrl = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing,
       rStudioPackageManagerUrl :: Maybe (Value Text)
rStudioPackageManagerUrl = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties RStudioServerProDomainSettingsProperty where
  toResourceProperties :: RStudioServerProDomainSettingsProperty -> ResourceProperties
toResourceProperties RStudioServerProDomainSettingsProperty {Maybe (Value Text)
Maybe ResourceSpecProperty
()
Value Text
haddock_workaround_ :: RStudioServerProDomainSettingsProperty -> ()
defaultResourceSpec :: RStudioServerProDomainSettingsProperty
-> Maybe ResourceSpecProperty
domainExecutionRoleArn :: RStudioServerProDomainSettingsProperty -> Value Text
rStudioConnectUrl :: RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
rStudioPackageManagerUrl :: RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
haddock_workaround_ :: ()
defaultResourceSpec :: Maybe ResourceSpecProperty
domainExecutionRoleArn :: Value Text
rStudioConnectUrl :: Maybe (Value Text)
rStudioPackageManagerUrl :: Maybe (Value Text)
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::SageMaker::Domain.RStudioServerProDomainSettings",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
                        ([(Key, Value)] -> [(Key, Value)] -> [(Key, Value)]
forall a. Semigroup a => a -> a -> a
(Prelude.<>)
                           [Key
"DomainExecutionRoleArn" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
domainExecutionRoleArn]
                           ([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
                              [Key -> ResourceSpecProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"DefaultResourceSpec" (ResourceSpecProperty -> (Key, Value))
-> Maybe ResourceSpecProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ResourceSpecProperty
defaultResourceSpec,
                               Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"RStudioConnectUrl" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
rStudioConnectUrl,
                               Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"RStudioPackageManagerUrl"
                                 (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
rStudioPackageManagerUrl]))}
instance JSON.ToJSON RStudioServerProDomainSettingsProperty where
  toJSON :: RStudioServerProDomainSettingsProperty -> Value
toJSON RStudioServerProDomainSettingsProperty {Maybe (Value Text)
Maybe ResourceSpecProperty
()
Value Text
haddock_workaround_ :: RStudioServerProDomainSettingsProperty -> ()
defaultResourceSpec :: RStudioServerProDomainSettingsProperty
-> Maybe ResourceSpecProperty
domainExecutionRoleArn :: RStudioServerProDomainSettingsProperty -> Value Text
rStudioConnectUrl :: RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
rStudioPackageManagerUrl :: RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
haddock_workaround_ :: ()
defaultResourceSpec :: Maybe ResourceSpecProperty
domainExecutionRoleArn :: Value Text
rStudioConnectUrl :: Maybe (Value Text)
rStudioPackageManagerUrl :: Maybe (Value Text)
..}
    = [(Key, Value)] -> Value
JSON.object
        ([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
           ([(Key, Value)] -> [(Key, Value)] -> [(Key, Value)]
forall a. Semigroup a => a -> a -> a
(Prelude.<>)
              [Key
"DomainExecutionRoleArn" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
domainExecutionRoleArn]
              ([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
                 [Key -> ResourceSpecProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"DefaultResourceSpec" (ResourceSpecProperty -> (Key, Value))
-> Maybe ResourceSpecProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ResourceSpecProperty
defaultResourceSpec,
                  Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"RStudioConnectUrl" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
rStudioConnectUrl,
                  Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"RStudioPackageManagerUrl"
                    (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
rStudioPackageManagerUrl])))
instance Property "DefaultResourceSpec" RStudioServerProDomainSettingsProperty where
  type PropertyType "DefaultResourceSpec" RStudioServerProDomainSettingsProperty = ResourceSpecProperty
  set :: PropertyType
  "DefaultResourceSpec" RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty
set PropertyType
  "DefaultResourceSpec" RStudioServerProDomainSettingsProperty
newValue RStudioServerProDomainSettingsProperty {Maybe (Value Text)
Maybe ResourceSpecProperty
()
Value Text
haddock_workaround_ :: RStudioServerProDomainSettingsProperty -> ()
defaultResourceSpec :: RStudioServerProDomainSettingsProperty
-> Maybe ResourceSpecProperty
domainExecutionRoleArn :: RStudioServerProDomainSettingsProperty -> Value Text
rStudioConnectUrl :: RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
rStudioPackageManagerUrl :: RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
haddock_workaround_ :: ()
defaultResourceSpec :: Maybe ResourceSpecProperty
domainExecutionRoleArn :: Value Text
rStudioConnectUrl :: Maybe (Value Text)
rStudioPackageManagerUrl :: Maybe (Value Text)
..}
    = RStudioServerProDomainSettingsProperty
        {defaultResourceSpec :: Maybe ResourceSpecProperty
defaultResourceSpec = ResourceSpecProperty -> Maybe ResourceSpecProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType
  "DefaultResourceSpec" RStudioServerProDomainSettingsProperty
ResourceSpecProperty
newValue, Maybe (Value Text)
()
Value Text
haddock_workaround_ :: ()
domainExecutionRoleArn :: Value Text
rStudioConnectUrl :: Maybe (Value Text)
rStudioPackageManagerUrl :: Maybe (Value Text)
haddock_workaround_ :: ()
domainExecutionRoleArn :: Value Text
rStudioConnectUrl :: Maybe (Value Text)
rStudioPackageManagerUrl :: Maybe (Value Text)
..}
instance Property "DomainExecutionRoleArn" RStudioServerProDomainSettingsProperty where
  type PropertyType "DomainExecutionRoleArn" RStudioServerProDomainSettingsProperty = Value Prelude.Text
  set :: PropertyType
  "DomainExecutionRoleArn" RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty
set PropertyType
  "DomainExecutionRoleArn" RStudioServerProDomainSettingsProperty
newValue RStudioServerProDomainSettingsProperty {Maybe (Value Text)
Maybe ResourceSpecProperty
()
Value Text
haddock_workaround_ :: RStudioServerProDomainSettingsProperty -> ()
defaultResourceSpec :: RStudioServerProDomainSettingsProperty
-> Maybe ResourceSpecProperty
domainExecutionRoleArn :: RStudioServerProDomainSettingsProperty -> Value Text
rStudioConnectUrl :: RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
rStudioPackageManagerUrl :: RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
haddock_workaround_ :: ()
defaultResourceSpec :: Maybe ResourceSpecProperty
domainExecutionRoleArn :: Value Text
rStudioConnectUrl :: Maybe (Value Text)
rStudioPackageManagerUrl :: Maybe (Value Text)
..}
    = RStudioServerProDomainSettingsProperty
        {domainExecutionRoleArn :: Value Text
domainExecutionRoleArn = PropertyType
  "DomainExecutionRoleArn" RStudioServerProDomainSettingsProperty
Value Text
newValue, Maybe (Value Text)
Maybe ResourceSpecProperty
()
haddock_workaround_ :: ()
defaultResourceSpec :: Maybe ResourceSpecProperty
rStudioConnectUrl :: Maybe (Value Text)
rStudioPackageManagerUrl :: Maybe (Value Text)
haddock_workaround_ :: ()
defaultResourceSpec :: Maybe ResourceSpecProperty
rStudioConnectUrl :: Maybe (Value Text)
rStudioPackageManagerUrl :: Maybe (Value Text)
..}
instance Property "RStudioConnectUrl" RStudioServerProDomainSettingsProperty where
  type PropertyType "RStudioConnectUrl" RStudioServerProDomainSettingsProperty = Value Prelude.Text
  set :: PropertyType
  "RStudioConnectUrl" RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty
set PropertyType
  "RStudioConnectUrl" RStudioServerProDomainSettingsProperty
newValue RStudioServerProDomainSettingsProperty {Maybe (Value Text)
Maybe ResourceSpecProperty
()
Value Text
haddock_workaround_ :: RStudioServerProDomainSettingsProperty -> ()
defaultResourceSpec :: RStudioServerProDomainSettingsProperty
-> Maybe ResourceSpecProperty
domainExecutionRoleArn :: RStudioServerProDomainSettingsProperty -> Value Text
rStudioConnectUrl :: RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
rStudioPackageManagerUrl :: RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
haddock_workaround_ :: ()
defaultResourceSpec :: Maybe ResourceSpecProperty
domainExecutionRoleArn :: Value Text
rStudioConnectUrl :: Maybe (Value Text)
rStudioPackageManagerUrl :: Maybe (Value Text)
..}
    = RStudioServerProDomainSettingsProperty
        {rStudioConnectUrl :: Maybe (Value Text)
rStudioConnectUrl = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType
  "RStudioConnectUrl" RStudioServerProDomainSettingsProperty
Value Text
newValue, Maybe (Value Text)
Maybe ResourceSpecProperty
()
Value Text
haddock_workaround_ :: ()
defaultResourceSpec :: Maybe ResourceSpecProperty
domainExecutionRoleArn :: Value Text
rStudioPackageManagerUrl :: Maybe (Value Text)
haddock_workaround_ :: ()
defaultResourceSpec :: Maybe ResourceSpecProperty
domainExecutionRoleArn :: Value Text
rStudioPackageManagerUrl :: Maybe (Value Text)
..}
instance Property "RStudioPackageManagerUrl" RStudioServerProDomainSettingsProperty where
  type PropertyType "RStudioPackageManagerUrl" RStudioServerProDomainSettingsProperty = Value Prelude.Text
  set :: PropertyType
  "RStudioPackageManagerUrl" RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty
-> RStudioServerProDomainSettingsProperty
set PropertyType
  "RStudioPackageManagerUrl" RStudioServerProDomainSettingsProperty
newValue RStudioServerProDomainSettingsProperty {Maybe (Value Text)
Maybe ResourceSpecProperty
()
Value Text
haddock_workaround_ :: RStudioServerProDomainSettingsProperty -> ()
defaultResourceSpec :: RStudioServerProDomainSettingsProperty
-> Maybe ResourceSpecProperty
domainExecutionRoleArn :: RStudioServerProDomainSettingsProperty -> Value Text
rStudioConnectUrl :: RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
rStudioPackageManagerUrl :: RStudioServerProDomainSettingsProperty -> Maybe (Value Text)
haddock_workaround_ :: ()
defaultResourceSpec :: Maybe ResourceSpecProperty
domainExecutionRoleArn :: Value Text
rStudioConnectUrl :: Maybe (Value Text)
rStudioPackageManagerUrl :: Maybe (Value Text)
..}
    = RStudioServerProDomainSettingsProperty
        {rStudioPackageManagerUrl :: Maybe (Value Text)
rStudioPackageManagerUrl = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType
  "RStudioPackageManagerUrl" RStudioServerProDomainSettingsProperty
Value Text
newValue, Maybe (Value Text)
Maybe ResourceSpecProperty
()
Value Text
haddock_workaround_ :: ()
defaultResourceSpec :: Maybe ResourceSpecProperty
domainExecutionRoleArn :: Value Text
rStudioConnectUrl :: Maybe (Value Text)
haddock_workaround_ :: ()
defaultResourceSpec :: Maybe ResourceSpecProperty
domainExecutionRoleArn :: Value Text
rStudioConnectUrl :: Maybe (Value Text)
..}