module Stratosphere.KinesisFirehose.DeliveryStream.DeserializerProperty (
module Exports, DeserializerProperty(..), mkDeserializerProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.KinesisFirehose.DeliveryStream.HiveJsonSerDeProperty as Exports
import {-# SOURCE #-} Stratosphere.KinesisFirehose.DeliveryStream.OpenXJsonSerDeProperty as Exports
import Stratosphere.ResourceProperties
data DeserializerProperty
=
DeserializerProperty {DeserializerProperty -> ()
haddock_workaround_ :: (),
DeserializerProperty -> Maybe HiveJsonSerDeProperty
hiveJsonSerDe :: (Prelude.Maybe HiveJsonSerDeProperty),
DeserializerProperty -> Maybe OpenXJsonSerDeProperty
openXJsonSerDe :: (Prelude.Maybe OpenXJsonSerDeProperty)}
deriving stock (DeserializerProperty -> DeserializerProperty -> Bool
(DeserializerProperty -> DeserializerProperty -> Bool)
-> (DeserializerProperty -> DeserializerProperty -> Bool)
-> Eq DeserializerProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DeserializerProperty -> DeserializerProperty -> Bool
== :: DeserializerProperty -> DeserializerProperty -> Bool
$c/= :: DeserializerProperty -> DeserializerProperty -> Bool
/= :: DeserializerProperty -> DeserializerProperty -> Bool
Prelude.Eq, Int -> DeserializerProperty -> ShowS
[DeserializerProperty] -> ShowS
DeserializerProperty -> String
(Int -> DeserializerProperty -> ShowS)
-> (DeserializerProperty -> String)
-> ([DeserializerProperty] -> ShowS)
-> Show DeserializerProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> DeserializerProperty -> ShowS
showsPrec :: Int -> DeserializerProperty -> ShowS
$cshow :: DeserializerProperty -> String
show :: DeserializerProperty -> String
$cshowList :: [DeserializerProperty] -> ShowS
showList :: [DeserializerProperty] -> ShowS
Prelude.Show)
mkDeserializerProperty :: DeserializerProperty
mkDeserializerProperty :: DeserializerProperty
mkDeserializerProperty
= DeserializerProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), hiveJsonSerDe :: Maybe HiveJsonSerDeProperty
hiveJsonSerDe = Maybe HiveJsonSerDeProperty
forall a. Maybe a
Prelude.Nothing,
openXJsonSerDe :: Maybe OpenXJsonSerDeProperty
openXJsonSerDe = Maybe OpenXJsonSerDeProperty
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties DeserializerProperty where
toResourceProperties :: DeserializerProperty -> ResourceProperties
toResourceProperties DeserializerProperty {Maybe HiveJsonSerDeProperty
Maybe OpenXJsonSerDeProperty
()
haddock_workaround_ :: DeserializerProperty -> ()
hiveJsonSerDe :: DeserializerProperty -> Maybe HiveJsonSerDeProperty
openXJsonSerDe :: DeserializerProperty -> Maybe OpenXJsonSerDeProperty
haddock_workaround_ :: ()
hiveJsonSerDe :: Maybe HiveJsonSerDeProperty
openXJsonSerDe :: Maybe OpenXJsonSerDeProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::KinesisFirehose::DeliveryStream.Deserializer",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> HiveJsonSerDeProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"HiveJsonSerDe" (HiveJsonSerDeProperty -> (Key, Value))
-> Maybe HiveJsonSerDeProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe HiveJsonSerDeProperty
hiveJsonSerDe,
Key -> OpenXJsonSerDeProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"OpenXJsonSerDe" (OpenXJsonSerDeProperty -> (Key, Value))
-> Maybe OpenXJsonSerDeProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe OpenXJsonSerDeProperty
openXJsonSerDe])}
instance JSON.ToJSON DeserializerProperty where
toJSON :: DeserializerProperty -> Value
toJSON DeserializerProperty {Maybe HiveJsonSerDeProperty
Maybe OpenXJsonSerDeProperty
()
haddock_workaround_ :: DeserializerProperty -> ()
hiveJsonSerDe :: DeserializerProperty -> Maybe HiveJsonSerDeProperty
openXJsonSerDe :: DeserializerProperty -> Maybe OpenXJsonSerDeProperty
haddock_workaround_ :: ()
hiveJsonSerDe :: Maybe HiveJsonSerDeProperty
openXJsonSerDe :: Maybe OpenXJsonSerDeProperty
..}
= [(Key, Value)] -> Value
JSON.object
([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> HiveJsonSerDeProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"HiveJsonSerDe" (HiveJsonSerDeProperty -> (Key, Value))
-> Maybe HiveJsonSerDeProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe HiveJsonSerDeProperty
hiveJsonSerDe,
Key -> OpenXJsonSerDeProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"OpenXJsonSerDe" (OpenXJsonSerDeProperty -> (Key, Value))
-> Maybe OpenXJsonSerDeProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe OpenXJsonSerDeProperty
openXJsonSerDe]))
instance Property "HiveJsonSerDe" DeserializerProperty where
type PropertyType "HiveJsonSerDe" DeserializerProperty = HiveJsonSerDeProperty
set :: PropertyType "HiveJsonSerDe" DeserializerProperty
-> DeserializerProperty -> DeserializerProperty
set PropertyType "HiveJsonSerDe" DeserializerProperty
newValue DeserializerProperty {Maybe HiveJsonSerDeProperty
Maybe OpenXJsonSerDeProperty
()
haddock_workaround_ :: DeserializerProperty -> ()
hiveJsonSerDe :: DeserializerProperty -> Maybe HiveJsonSerDeProperty
openXJsonSerDe :: DeserializerProperty -> Maybe OpenXJsonSerDeProperty
haddock_workaround_ :: ()
hiveJsonSerDe :: Maybe HiveJsonSerDeProperty
openXJsonSerDe :: Maybe OpenXJsonSerDeProperty
..}
= DeserializerProperty {hiveJsonSerDe :: Maybe HiveJsonSerDeProperty
hiveJsonSerDe = HiveJsonSerDeProperty -> Maybe HiveJsonSerDeProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "HiveJsonSerDe" DeserializerProperty
HiveJsonSerDeProperty
newValue, Maybe OpenXJsonSerDeProperty
()
haddock_workaround_ :: ()
openXJsonSerDe :: Maybe OpenXJsonSerDeProperty
haddock_workaround_ :: ()
openXJsonSerDe :: Maybe OpenXJsonSerDeProperty
..}
instance Property "OpenXJsonSerDe" DeserializerProperty where
type PropertyType "OpenXJsonSerDe" DeserializerProperty = OpenXJsonSerDeProperty
set :: PropertyType "OpenXJsonSerDe" DeserializerProperty
-> DeserializerProperty -> DeserializerProperty
set PropertyType "OpenXJsonSerDe" DeserializerProperty
newValue DeserializerProperty {Maybe HiveJsonSerDeProperty
Maybe OpenXJsonSerDeProperty
()
haddock_workaround_ :: DeserializerProperty -> ()
hiveJsonSerDe :: DeserializerProperty -> Maybe HiveJsonSerDeProperty
openXJsonSerDe :: DeserializerProperty -> Maybe OpenXJsonSerDeProperty
haddock_workaround_ :: ()
hiveJsonSerDe :: Maybe HiveJsonSerDeProperty
openXJsonSerDe :: Maybe OpenXJsonSerDeProperty
..}
= DeserializerProperty {openXJsonSerDe :: Maybe OpenXJsonSerDeProperty
openXJsonSerDe = OpenXJsonSerDeProperty -> Maybe OpenXJsonSerDeProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "OpenXJsonSerDe" DeserializerProperty
OpenXJsonSerDeProperty
newValue, Maybe HiveJsonSerDeProperty
()
haddock_workaround_ :: ()
hiveJsonSerDe :: Maybe HiveJsonSerDeProperty
haddock_workaround_ :: ()
hiveJsonSerDe :: Maybe HiveJsonSerDeProperty
..}