module Stratosphere.SageMaker.EndpointConfig.CaptureOptionProperty (
        CaptureOptionProperty(..), mkCaptureOptionProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data CaptureOptionProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-captureoption.html>
    CaptureOptionProperty {CaptureOptionProperty -> ()
haddock_workaround_ :: (),
                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-captureoption.html#cfn-sagemaker-endpointconfig-captureoption-capturemode>
                           CaptureOptionProperty -> Value Text
captureMode :: (Value Prelude.Text)}
  deriving stock (CaptureOptionProperty -> CaptureOptionProperty -> Bool
(CaptureOptionProperty -> CaptureOptionProperty -> Bool)
-> (CaptureOptionProperty -> CaptureOptionProperty -> Bool)
-> Eq CaptureOptionProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: CaptureOptionProperty -> CaptureOptionProperty -> Bool
== :: CaptureOptionProperty -> CaptureOptionProperty -> Bool
$c/= :: CaptureOptionProperty -> CaptureOptionProperty -> Bool
/= :: CaptureOptionProperty -> CaptureOptionProperty -> Bool
Prelude.Eq, Int -> CaptureOptionProperty -> ShowS
[CaptureOptionProperty] -> ShowS
CaptureOptionProperty -> String
(Int -> CaptureOptionProperty -> ShowS)
-> (CaptureOptionProperty -> String)
-> ([CaptureOptionProperty] -> ShowS)
-> Show CaptureOptionProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CaptureOptionProperty -> ShowS
showsPrec :: Int -> CaptureOptionProperty -> ShowS
$cshow :: CaptureOptionProperty -> String
show :: CaptureOptionProperty -> String
$cshowList :: [CaptureOptionProperty] -> ShowS
showList :: [CaptureOptionProperty] -> ShowS
Prelude.Show)
mkCaptureOptionProperty ::
  Value Prelude.Text -> CaptureOptionProperty
mkCaptureOptionProperty :: Value Text -> CaptureOptionProperty
mkCaptureOptionProperty Value Text
captureMode
  = CaptureOptionProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), captureMode :: Value Text
captureMode = Value Text
captureMode}
instance ToResourceProperties CaptureOptionProperty where
  toResourceProperties :: CaptureOptionProperty -> ResourceProperties
toResourceProperties CaptureOptionProperty {()
Value Text
haddock_workaround_ :: CaptureOptionProperty -> ()
captureMode :: CaptureOptionProperty -> Value Text
haddock_workaround_ :: ()
captureMode :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::SageMaker::EndpointConfig.CaptureOption",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"CaptureMode" 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
captureMode]}
instance JSON.ToJSON CaptureOptionProperty where
  toJSON :: CaptureOptionProperty -> Value
toJSON CaptureOptionProperty {()
Value Text
haddock_workaround_ :: CaptureOptionProperty -> ()
captureMode :: CaptureOptionProperty -> Value Text
haddock_workaround_ :: ()
captureMode :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"CaptureMode" 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
captureMode]
instance Property "CaptureMode" CaptureOptionProperty where
  type PropertyType "CaptureMode" CaptureOptionProperty = Value Prelude.Text
  set :: PropertyType "CaptureMode" CaptureOptionProperty
-> CaptureOptionProperty -> CaptureOptionProperty
set PropertyType "CaptureMode" CaptureOptionProperty
newValue CaptureOptionProperty {()
Value Text
haddock_workaround_ :: CaptureOptionProperty -> ()
captureMode :: CaptureOptionProperty -> Value Text
haddock_workaround_ :: ()
captureMode :: Value Text
..}
    = CaptureOptionProperty {captureMode :: Value Text
captureMode = PropertyType "CaptureMode" CaptureOptionProperty
Value Text
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}