{-# 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.MediaPackageVOD.Types.PackagingConfiguration where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.MediaPackageVOD.Types.CmafPackage
import Amazonka.MediaPackageVOD.Types.DashPackage
import Amazonka.MediaPackageVOD.Types.HlsPackage
import Amazonka.MediaPackageVOD.Types.MssPackage
import qualified Amazonka.Prelude as Prelude
data PackagingConfiguration = PackagingConfiguration'
{
PackagingConfiguration -> Maybe Text
arn :: Prelude.Maybe Prelude.Text,
PackagingConfiguration -> Maybe CmafPackage
cmafPackage :: Prelude.Maybe CmafPackage,
PackagingConfiguration -> Maybe DashPackage
dashPackage :: Prelude.Maybe DashPackage,
PackagingConfiguration -> Maybe HlsPackage
hlsPackage :: Prelude.Maybe HlsPackage,
PackagingConfiguration -> Maybe Text
id :: Prelude.Maybe Prelude.Text,
PackagingConfiguration -> Maybe MssPackage
mssPackage :: Prelude.Maybe MssPackage,
PackagingConfiguration -> Maybe Text
packagingGroupId :: Prelude.Maybe Prelude.Text,
PackagingConfiguration -> Maybe (HashMap Text Text)
tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text)
}
deriving (PackagingConfiguration -> PackagingConfiguration -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PackagingConfiguration -> PackagingConfiguration -> Bool
$c/= :: PackagingConfiguration -> PackagingConfiguration -> Bool
== :: PackagingConfiguration -> PackagingConfiguration -> Bool
$c== :: PackagingConfiguration -> PackagingConfiguration -> Bool
Prelude.Eq, ReadPrec [PackagingConfiguration]
ReadPrec PackagingConfiguration
Int -> ReadS PackagingConfiguration
ReadS [PackagingConfiguration]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PackagingConfiguration]
$creadListPrec :: ReadPrec [PackagingConfiguration]
readPrec :: ReadPrec PackagingConfiguration
$creadPrec :: ReadPrec PackagingConfiguration
readList :: ReadS [PackagingConfiguration]
$creadList :: ReadS [PackagingConfiguration]
readsPrec :: Int -> ReadS PackagingConfiguration
$creadsPrec :: Int -> ReadS PackagingConfiguration
Prelude.Read, Int -> PackagingConfiguration -> ShowS
[PackagingConfiguration] -> ShowS
PackagingConfiguration -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PackagingConfiguration] -> ShowS
$cshowList :: [PackagingConfiguration] -> ShowS
show :: PackagingConfiguration -> String
$cshow :: PackagingConfiguration -> String
showsPrec :: Int -> PackagingConfiguration -> ShowS
$cshowsPrec :: Int -> PackagingConfiguration -> ShowS
Prelude.Show, forall x. Rep PackagingConfiguration x -> PackagingConfiguration
forall x. PackagingConfiguration -> Rep PackagingConfiguration x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep PackagingConfiguration x -> PackagingConfiguration
$cfrom :: forall x. PackagingConfiguration -> Rep PackagingConfiguration x
Prelude.Generic)
newPackagingConfiguration ::
PackagingConfiguration
newPackagingConfiguration :: PackagingConfiguration
newPackagingConfiguration =
PackagingConfiguration'
{ $sel:arn:PackagingConfiguration' :: Maybe Text
arn = forall a. Maybe a
Prelude.Nothing,
$sel:cmafPackage:PackagingConfiguration' :: Maybe CmafPackage
cmafPackage = forall a. Maybe a
Prelude.Nothing,
$sel:dashPackage:PackagingConfiguration' :: Maybe DashPackage
dashPackage = forall a. Maybe a
Prelude.Nothing,
$sel:hlsPackage:PackagingConfiguration' :: Maybe HlsPackage
hlsPackage = forall a. Maybe a
Prelude.Nothing,
$sel:id:PackagingConfiguration' :: Maybe Text
id = forall a. Maybe a
Prelude.Nothing,
$sel:mssPackage:PackagingConfiguration' :: Maybe MssPackage
mssPackage = forall a. Maybe a
Prelude.Nothing,
$sel:packagingGroupId:PackagingConfiguration' :: Maybe Text
packagingGroupId = forall a. Maybe a
Prelude.Nothing,
$sel:tags:PackagingConfiguration' :: Maybe (HashMap Text Text)
tags = forall a. Maybe a
Prelude.Nothing
}
packagingConfiguration_arn :: Lens.Lens' PackagingConfiguration (Prelude.Maybe Prelude.Text)
packagingConfiguration_arn :: Lens' PackagingConfiguration (Maybe Text)
packagingConfiguration_arn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PackagingConfiguration' {Maybe Text
arn :: Maybe Text
$sel:arn:PackagingConfiguration' :: PackagingConfiguration -> Maybe Text
arn} -> Maybe Text
arn) (\s :: PackagingConfiguration
s@PackagingConfiguration' {} Maybe Text
a -> PackagingConfiguration
s {$sel:arn:PackagingConfiguration' :: Maybe Text
arn = Maybe Text
a} :: PackagingConfiguration)
packagingConfiguration_cmafPackage :: Lens.Lens' PackagingConfiguration (Prelude.Maybe CmafPackage)
packagingConfiguration_cmafPackage :: Lens' PackagingConfiguration (Maybe CmafPackage)
packagingConfiguration_cmafPackage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PackagingConfiguration' {Maybe CmafPackage
cmafPackage :: Maybe CmafPackage
$sel:cmafPackage:PackagingConfiguration' :: PackagingConfiguration -> Maybe CmafPackage
cmafPackage} -> Maybe CmafPackage
cmafPackage) (\s :: PackagingConfiguration
s@PackagingConfiguration' {} Maybe CmafPackage
a -> PackagingConfiguration
s {$sel:cmafPackage:PackagingConfiguration' :: Maybe CmafPackage
cmafPackage = Maybe CmafPackage
a} :: PackagingConfiguration)
packagingConfiguration_dashPackage :: Lens.Lens' PackagingConfiguration (Prelude.Maybe DashPackage)
packagingConfiguration_dashPackage :: Lens' PackagingConfiguration (Maybe DashPackage)
packagingConfiguration_dashPackage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PackagingConfiguration' {Maybe DashPackage
dashPackage :: Maybe DashPackage
$sel:dashPackage:PackagingConfiguration' :: PackagingConfiguration -> Maybe DashPackage
dashPackage} -> Maybe DashPackage
dashPackage) (\s :: PackagingConfiguration
s@PackagingConfiguration' {} Maybe DashPackage
a -> PackagingConfiguration
s {$sel:dashPackage:PackagingConfiguration' :: Maybe DashPackage
dashPackage = Maybe DashPackage
a} :: PackagingConfiguration)
packagingConfiguration_hlsPackage :: Lens.Lens' PackagingConfiguration (Prelude.Maybe HlsPackage)
packagingConfiguration_hlsPackage :: Lens' PackagingConfiguration (Maybe HlsPackage)
packagingConfiguration_hlsPackage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PackagingConfiguration' {Maybe HlsPackage
hlsPackage :: Maybe HlsPackage
$sel:hlsPackage:PackagingConfiguration' :: PackagingConfiguration -> Maybe HlsPackage
hlsPackage} -> Maybe HlsPackage
hlsPackage) (\s :: PackagingConfiguration
s@PackagingConfiguration' {} Maybe HlsPackage
a -> PackagingConfiguration
s {$sel:hlsPackage:PackagingConfiguration' :: Maybe HlsPackage
hlsPackage = Maybe HlsPackage
a} :: PackagingConfiguration)
packagingConfiguration_id :: Lens.Lens' PackagingConfiguration (Prelude.Maybe Prelude.Text)
packagingConfiguration_id :: Lens' PackagingConfiguration (Maybe Text)
packagingConfiguration_id = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PackagingConfiguration' {Maybe Text
id :: Maybe Text
$sel:id:PackagingConfiguration' :: PackagingConfiguration -> Maybe Text
id} -> Maybe Text
id) (\s :: PackagingConfiguration
s@PackagingConfiguration' {} Maybe Text
a -> PackagingConfiguration
s {$sel:id:PackagingConfiguration' :: Maybe Text
id = Maybe Text
a} :: PackagingConfiguration)
packagingConfiguration_mssPackage :: Lens.Lens' PackagingConfiguration (Prelude.Maybe MssPackage)
packagingConfiguration_mssPackage :: Lens' PackagingConfiguration (Maybe MssPackage)
packagingConfiguration_mssPackage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PackagingConfiguration' {Maybe MssPackage
mssPackage :: Maybe MssPackage
$sel:mssPackage:PackagingConfiguration' :: PackagingConfiguration -> Maybe MssPackage
mssPackage} -> Maybe MssPackage
mssPackage) (\s :: PackagingConfiguration
s@PackagingConfiguration' {} Maybe MssPackage
a -> PackagingConfiguration
s {$sel:mssPackage:PackagingConfiguration' :: Maybe MssPackage
mssPackage = Maybe MssPackage
a} :: PackagingConfiguration)
packagingConfiguration_packagingGroupId :: Lens.Lens' PackagingConfiguration (Prelude.Maybe Prelude.Text)
packagingConfiguration_packagingGroupId :: Lens' PackagingConfiguration (Maybe Text)
packagingConfiguration_packagingGroupId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PackagingConfiguration' {Maybe Text
packagingGroupId :: Maybe Text
$sel:packagingGroupId:PackagingConfiguration' :: PackagingConfiguration -> Maybe Text
packagingGroupId} -> Maybe Text
packagingGroupId) (\s :: PackagingConfiguration
s@PackagingConfiguration' {} Maybe Text
a -> PackagingConfiguration
s {$sel:packagingGroupId:PackagingConfiguration' :: Maybe Text
packagingGroupId = Maybe Text
a} :: PackagingConfiguration)
packagingConfiguration_tags :: Lens.Lens' PackagingConfiguration (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))
packagingConfiguration_tags :: Lens' PackagingConfiguration (Maybe (HashMap Text Text))
packagingConfiguration_tags = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PackagingConfiguration' {Maybe (HashMap Text Text)
tags :: Maybe (HashMap Text Text)
$sel:tags:PackagingConfiguration' :: PackagingConfiguration -> Maybe (HashMap Text Text)
tags} -> Maybe (HashMap Text Text)
tags) (\s :: PackagingConfiguration
s@PackagingConfiguration' {} Maybe (HashMap Text Text)
a -> PackagingConfiguration
s {$sel:tags:PackagingConfiguration' :: Maybe (HashMap Text Text)
tags = Maybe (HashMap Text Text)
a} :: PackagingConfiguration) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instance Data.FromJSON PackagingConfiguration where
parseJSON :: Value -> Parser PackagingConfiguration
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"PackagingConfiguration"
( \Object
x ->
Maybe Text
-> Maybe CmafPackage
-> Maybe DashPackage
-> Maybe HlsPackage
-> Maybe Text
-> Maybe MssPackage
-> Maybe Text
-> Maybe (HashMap Text Text)
-> PackagingConfiguration
PackagingConfiguration'
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
"arn")
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
"cmafPackage")
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
"dashPackage")
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
"hlsPackage")
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
"id")
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
"mssPackage")
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
"packagingGroupId")
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
"tags" forall a. Parser (Maybe a) -> a -> Parser a
Data..!= forall a. Monoid a => a
Prelude.mempty)
)
instance Prelude.Hashable PackagingConfiguration where
hashWithSalt :: Int -> PackagingConfiguration -> Int
hashWithSalt Int
_salt PackagingConfiguration' {Maybe Text
Maybe (HashMap Text Text)
Maybe MssPackage
Maybe HlsPackage
Maybe CmafPackage
Maybe DashPackage
tags :: Maybe (HashMap Text Text)
packagingGroupId :: Maybe Text
mssPackage :: Maybe MssPackage
id :: Maybe Text
hlsPackage :: Maybe HlsPackage
dashPackage :: Maybe DashPackage
cmafPackage :: Maybe CmafPackage
arn :: Maybe Text
$sel:tags:PackagingConfiguration' :: PackagingConfiguration -> Maybe (HashMap Text Text)
$sel:packagingGroupId:PackagingConfiguration' :: PackagingConfiguration -> Maybe Text
$sel:mssPackage:PackagingConfiguration' :: PackagingConfiguration -> Maybe MssPackage
$sel:id:PackagingConfiguration' :: PackagingConfiguration -> Maybe Text
$sel:hlsPackage:PackagingConfiguration' :: PackagingConfiguration -> Maybe HlsPackage
$sel:dashPackage:PackagingConfiguration' :: PackagingConfiguration -> Maybe DashPackage
$sel:cmafPackage:PackagingConfiguration' :: PackagingConfiguration -> Maybe CmafPackage
$sel:arn:PackagingConfiguration' :: PackagingConfiguration -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
arn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe CmafPackage
cmafPackage
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DashPackage
dashPackage
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe HlsPackage
hlsPackage
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
id
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe MssPackage
mssPackage
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
packagingGroupId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (HashMap Text Text)
tags
instance Prelude.NFData PackagingConfiguration where
rnf :: PackagingConfiguration -> ()
rnf PackagingConfiguration' {Maybe Text
Maybe (HashMap Text Text)
Maybe MssPackage
Maybe HlsPackage
Maybe CmafPackage
Maybe DashPackage
tags :: Maybe (HashMap Text Text)
packagingGroupId :: Maybe Text
mssPackage :: Maybe MssPackage
id :: Maybe Text
hlsPackage :: Maybe HlsPackage
dashPackage :: Maybe DashPackage
cmafPackage :: Maybe CmafPackage
arn :: Maybe Text
$sel:tags:PackagingConfiguration' :: PackagingConfiguration -> Maybe (HashMap Text Text)
$sel:packagingGroupId:PackagingConfiguration' :: PackagingConfiguration -> Maybe Text
$sel:mssPackage:PackagingConfiguration' :: PackagingConfiguration -> Maybe MssPackage
$sel:id:PackagingConfiguration' :: PackagingConfiguration -> Maybe Text
$sel:hlsPackage:PackagingConfiguration' :: PackagingConfiguration -> Maybe HlsPackage
$sel:dashPackage:PackagingConfiguration' :: PackagingConfiguration -> Maybe DashPackage
$sel:cmafPackage:PackagingConfiguration' :: PackagingConfiguration -> Maybe CmafPackage
$sel:arn:PackagingConfiguration' :: PackagingConfiguration -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
arn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe CmafPackage
cmafPackage
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DashPackage
dashPackage
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe HlsPackage
hlsPackage
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
id
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe MssPackage
mssPackage
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
packagingGroupId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (HashMap Text Text)
tags