module Stratosphere.EC2.FlowLog.DestinationOptionsProperty (
DestinationOptionsProperty(..), mkDestinationOptionsProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data DestinationOptionsProperty
=
DestinationOptionsProperty {DestinationOptionsProperty -> ()
haddock_workaround_ :: (),
DestinationOptionsProperty -> Value Text
fileFormat :: (Value Prelude.Text),
DestinationOptionsProperty -> Value Bool
hiveCompatiblePartitions :: (Value Prelude.Bool),
DestinationOptionsProperty -> Value Bool
perHourPartition :: (Value Prelude.Bool)}
deriving stock (DestinationOptionsProperty -> DestinationOptionsProperty -> Bool
(DestinationOptionsProperty -> DestinationOptionsProperty -> Bool)
-> (DestinationOptionsProperty
-> DestinationOptionsProperty -> Bool)
-> Eq DestinationOptionsProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DestinationOptionsProperty -> DestinationOptionsProperty -> Bool
== :: DestinationOptionsProperty -> DestinationOptionsProperty -> Bool
$c/= :: DestinationOptionsProperty -> DestinationOptionsProperty -> Bool
/= :: DestinationOptionsProperty -> DestinationOptionsProperty -> Bool
Prelude.Eq, Int -> DestinationOptionsProperty -> ShowS
[DestinationOptionsProperty] -> ShowS
DestinationOptionsProperty -> String
(Int -> DestinationOptionsProperty -> ShowS)
-> (DestinationOptionsProperty -> String)
-> ([DestinationOptionsProperty] -> ShowS)
-> Show DestinationOptionsProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> DestinationOptionsProperty -> ShowS
showsPrec :: Int -> DestinationOptionsProperty -> ShowS
$cshow :: DestinationOptionsProperty -> String
show :: DestinationOptionsProperty -> String
$cshowList :: [DestinationOptionsProperty] -> ShowS
showList :: [DestinationOptionsProperty] -> ShowS
Prelude.Show)
mkDestinationOptionsProperty ::
Value Prelude.Text
-> Value Prelude.Bool
-> Value Prelude.Bool -> DestinationOptionsProperty
mkDestinationOptionsProperty :: Value Text
-> Value Bool -> Value Bool -> DestinationOptionsProperty
mkDestinationOptionsProperty
Value Text
fileFormat
Value Bool
hiveCompatiblePartitions
Value Bool
perHourPartition
= DestinationOptionsProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), fileFormat :: Value Text
fileFormat = Value Text
fileFormat,
hiveCompatiblePartitions :: Value Bool
hiveCompatiblePartitions = Value Bool
hiveCompatiblePartitions,
perHourPartition :: Value Bool
perHourPartition = Value Bool
perHourPartition}
instance ToResourceProperties DestinationOptionsProperty where
toResourceProperties :: DestinationOptionsProperty -> ResourceProperties
toResourceProperties DestinationOptionsProperty {()
Value Bool
Value Text
haddock_workaround_ :: DestinationOptionsProperty -> ()
fileFormat :: DestinationOptionsProperty -> Value Text
hiveCompatiblePartitions :: DestinationOptionsProperty -> Value Bool
perHourPartition :: DestinationOptionsProperty -> Value Bool
haddock_workaround_ :: ()
fileFormat :: Value Text
hiveCompatiblePartitions :: Value Bool
perHourPartition :: Value Bool
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::EC2::FlowLog.DestinationOptions",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Key
"FileFormat" 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
fileFormat,
Key
"HiveCompatiblePartitions" Key -> Value Bool -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Bool
hiveCompatiblePartitions,
Key
"PerHourPartition" Key -> Value Bool -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Bool
perHourPartition]}
instance JSON.ToJSON DestinationOptionsProperty where
toJSON :: DestinationOptionsProperty -> Value
toJSON DestinationOptionsProperty {()
Value Bool
Value Text
haddock_workaround_ :: DestinationOptionsProperty -> ()
fileFormat :: DestinationOptionsProperty -> Value Text
hiveCompatiblePartitions :: DestinationOptionsProperty -> Value Bool
perHourPartition :: DestinationOptionsProperty -> Value Bool
haddock_workaround_ :: ()
fileFormat :: Value Text
hiveCompatiblePartitions :: Value Bool
perHourPartition :: Value Bool
..}
= [(Key, Value)] -> Value
JSON.object
[Key
"FileFormat" 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
fileFormat,
Key
"HiveCompatiblePartitions" Key -> Value Bool -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Bool
hiveCompatiblePartitions,
Key
"PerHourPartition" Key -> Value Bool -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Bool
perHourPartition]
instance Property "FileFormat" DestinationOptionsProperty where
type PropertyType "FileFormat" DestinationOptionsProperty = Value Prelude.Text
set :: PropertyType "FileFormat" DestinationOptionsProperty
-> DestinationOptionsProperty -> DestinationOptionsProperty
set PropertyType "FileFormat" DestinationOptionsProperty
newValue DestinationOptionsProperty {()
Value Bool
Value Text
haddock_workaround_ :: DestinationOptionsProperty -> ()
fileFormat :: DestinationOptionsProperty -> Value Text
hiveCompatiblePartitions :: DestinationOptionsProperty -> Value Bool
perHourPartition :: DestinationOptionsProperty -> Value Bool
haddock_workaround_ :: ()
fileFormat :: Value Text
hiveCompatiblePartitions :: Value Bool
perHourPartition :: Value Bool
..}
= DestinationOptionsProperty {fileFormat :: Value Text
fileFormat = PropertyType "FileFormat" DestinationOptionsProperty
Value Text
newValue, ()
Value Bool
haddock_workaround_ :: ()
hiveCompatiblePartitions :: Value Bool
perHourPartition :: Value Bool
haddock_workaround_ :: ()
hiveCompatiblePartitions :: Value Bool
perHourPartition :: Value Bool
..}
instance Property "HiveCompatiblePartitions" DestinationOptionsProperty where
type PropertyType "HiveCompatiblePartitions" DestinationOptionsProperty = Value Prelude.Bool
set :: PropertyType "HiveCompatiblePartitions" DestinationOptionsProperty
-> DestinationOptionsProperty -> DestinationOptionsProperty
set PropertyType "HiveCompatiblePartitions" DestinationOptionsProperty
newValue DestinationOptionsProperty {()
Value Bool
Value Text
haddock_workaround_ :: DestinationOptionsProperty -> ()
fileFormat :: DestinationOptionsProperty -> Value Text
hiveCompatiblePartitions :: DestinationOptionsProperty -> Value Bool
perHourPartition :: DestinationOptionsProperty -> Value Bool
haddock_workaround_ :: ()
fileFormat :: Value Text
hiveCompatiblePartitions :: Value Bool
perHourPartition :: Value Bool
..}
= DestinationOptionsProperty
{hiveCompatiblePartitions :: Value Bool
hiveCompatiblePartitions = PropertyType "HiveCompatiblePartitions" DestinationOptionsProperty
Value Bool
newValue, ()
Value Bool
Value Text
haddock_workaround_ :: ()
fileFormat :: Value Text
perHourPartition :: Value Bool
haddock_workaround_ :: ()
fileFormat :: Value Text
perHourPartition :: Value Bool
..}
instance Property "PerHourPartition" DestinationOptionsProperty where
type PropertyType "PerHourPartition" DestinationOptionsProperty = Value Prelude.Bool
set :: PropertyType "PerHourPartition" DestinationOptionsProperty
-> DestinationOptionsProperty -> DestinationOptionsProperty
set PropertyType "PerHourPartition" DestinationOptionsProperty
newValue DestinationOptionsProperty {()
Value Bool
Value Text
haddock_workaround_ :: DestinationOptionsProperty -> ()
fileFormat :: DestinationOptionsProperty -> Value Text
hiveCompatiblePartitions :: DestinationOptionsProperty -> Value Bool
perHourPartition :: DestinationOptionsProperty -> Value Bool
haddock_workaround_ :: ()
fileFormat :: Value Text
hiveCompatiblePartitions :: Value Bool
perHourPartition :: Value Bool
..}
= DestinationOptionsProperty {perHourPartition :: Value Bool
perHourPartition = PropertyType "PerHourPartition" DestinationOptionsProperty
Value Bool
newValue, ()
Value Bool
Value Text
haddock_workaround_ :: ()
fileFormat :: Value Text
hiveCompatiblePartitions :: Value Bool
haddock_workaround_ :: ()
fileFormat :: Value Text
hiveCompatiblePartitions :: Value Bool
..}