{-# 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.CodePipeline.Types.ThirdPartyJobData where
import Amazonka.CodePipeline.Types.AWSSessionCredentials
import Amazonka.CodePipeline.Types.ActionConfiguration
import Amazonka.CodePipeline.Types.ActionTypeId
import Amazonka.CodePipeline.Types.Artifact
import Amazonka.CodePipeline.Types.EncryptionKey
import Amazonka.CodePipeline.Types.PipelineContext
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
data ThirdPartyJobData = ThirdPartyJobData'
{
ThirdPartyJobData -> Maybe ActionConfiguration
actionConfiguration :: Prelude.Maybe ActionConfiguration,
ThirdPartyJobData -> Maybe ActionTypeId
actionTypeId :: Prelude.Maybe ActionTypeId,
ThirdPartyJobData -> Maybe (Sensitive AWSSessionCredentials)
artifactCredentials :: Prelude.Maybe (Data.Sensitive AWSSessionCredentials),
ThirdPartyJobData -> Maybe Text
continuationToken :: Prelude.Maybe Prelude.Text,
ThirdPartyJobData -> Maybe EncryptionKey
encryptionKey :: Prelude.Maybe EncryptionKey,
ThirdPartyJobData -> Maybe [Artifact]
inputArtifacts :: Prelude.Maybe [Artifact],
ThirdPartyJobData -> Maybe [Artifact]
outputArtifacts :: Prelude.Maybe [Artifact],
ThirdPartyJobData -> Maybe PipelineContext
pipelineContext :: Prelude.Maybe PipelineContext
}
deriving (ThirdPartyJobData -> ThirdPartyJobData -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ThirdPartyJobData -> ThirdPartyJobData -> Bool
$c/= :: ThirdPartyJobData -> ThirdPartyJobData -> Bool
== :: ThirdPartyJobData -> ThirdPartyJobData -> Bool
$c== :: ThirdPartyJobData -> ThirdPartyJobData -> Bool
Prelude.Eq, Int -> ThirdPartyJobData -> ShowS
[ThirdPartyJobData] -> ShowS
ThirdPartyJobData -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ThirdPartyJobData] -> ShowS
$cshowList :: [ThirdPartyJobData] -> ShowS
show :: ThirdPartyJobData -> String
$cshow :: ThirdPartyJobData -> String
showsPrec :: Int -> ThirdPartyJobData -> ShowS
$cshowsPrec :: Int -> ThirdPartyJobData -> ShowS
Prelude.Show, forall x. Rep ThirdPartyJobData x -> ThirdPartyJobData
forall x. ThirdPartyJobData -> Rep ThirdPartyJobData x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ThirdPartyJobData x -> ThirdPartyJobData
$cfrom :: forall x. ThirdPartyJobData -> Rep ThirdPartyJobData x
Prelude.Generic)
newThirdPartyJobData ::
ThirdPartyJobData
newThirdPartyJobData :: ThirdPartyJobData
newThirdPartyJobData =
ThirdPartyJobData'
{ $sel:actionConfiguration:ThirdPartyJobData' :: Maybe ActionConfiguration
actionConfiguration =
forall a. Maybe a
Prelude.Nothing,
$sel:actionTypeId:ThirdPartyJobData' :: Maybe ActionTypeId
actionTypeId = forall a. Maybe a
Prelude.Nothing,
$sel:artifactCredentials:ThirdPartyJobData' :: Maybe (Sensitive AWSSessionCredentials)
artifactCredentials = forall a. Maybe a
Prelude.Nothing,
$sel:continuationToken:ThirdPartyJobData' :: Maybe Text
continuationToken = forall a. Maybe a
Prelude.Nothing,
$sel:encryptionKey:ThirdPartyJobData' :: Maybe EncryptionKey
encryptionKey = forall a. Maybe a
Prelude.Nothing,
$sel:inputArtifacts:ThirdPartyJobData' :: Maybe [Artifact]
inputArtifacts = forall a. Maybe a
Prelude.Nothing,
$sel:outputArtifacts:ThirdPartyJobData' :: Maybe [Artifact]
outputArtifacts = forall a. Maybe a
Prelude.Nothing,
$sel:pipelineContext:ThirdPartyJobData' :: Maybe PipelineContext
pipelineContext = forall a. Maybe a
Prelude.Nothing
}
thirdPartyJobData_actionConfiguration :: Lens.Lens' ThirdPartyJobData (Prelude.Maybe ActionConfiguration)
thirdPartyJobData_actionConfiguration :: Lens' ThirdPartyJobData (Maybe ActionConfiguration)
thirdPartyJobData_actionConfiguration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ThirdPartyJobData' {Maybe ActionConfiguration
actionConfiguration :: Maybe ActionConfiguration
$sel:actionConfiguration:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe ActionConfiguration
actionConfiguration} -> Maybe ActionConfiguration
actionConfiguration) (\s :: ThirdPartyJobData
s@ThirdPartyJobData' {} Maybe ActionConfiguration
a -> ThirdPartyJobData
s {$sel:actionConfiguration:ThirdPartyJobData' :: Maybe ActionConfiguration
actionConfiguration = Maybe ActionConfiguration
a} :: ThirdPartyJobData)
thirdPartyJobData_actionTypeId :: Lens.Lens' ThirdPartyJobData (Prelude.Maybe ActionTypeId)
thirdPartyJobData_actionTypeId :: Lens' ThirdPartyJobData (Maybe ActionTypeId)
thirdPartyJobData_actionTypeId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ThirdPartyJobData' {Maybe ActionTypeId
actionTypeId :: Maybe ActionTypeId
$sel:actionTypeId:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe ActionTypeId
actionTypeId} -> Maybe ActionTypeId
actionTypeId) (\s :: ThirdPartyJobData
s@ThirdPartyJobData' {} Maybe ActionTypeId
a -> ThirdPartyJobData
s {$sel:actionTypeId:ThirdPartyJobData' :: Maybe ActionTypeId
actionTypeId = Maybe ActionTypeId
a} :: ThirdPartyJobData)
thirdPartyJobData_artifactCredentials :: Lens.Lens' ThirdPartyJobData (Prelude.Maybe AWSSessionCredentials)
thirdPartyJobData_artifactCredentials :: Lens' ThirdPartyJobData (Maybe AWSSessionCredentials)
thirdPartyJobData_artifactCredentials = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ThirdPartyJobData' {Maybe (Sensitive AWSSessionCredentials)
artifactCredentials :: Maybe (Sensitive AWSSessionCredentials)
$sel:artifactCredentials:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe (Sensitive AWSSessionCredentials)
artifactCredentials} -> Maybe (Sensitive AWSSessionCredentials)
artifactCredentials) (\s :: ThirdPartyJobData
s@ThirdPartyJobData' {} Maybe (Sensitive AWSSessionCredentials)
a -> ThirdPartyJobData
s {$sel:artifactCredentials:ThirdPartyJobData' :: Maybe (Sensitive AWSSessionCredentials)
artifactCredentials = Maybe (Sensitive AWSSessionCredentials)
a} :: ThirdPartyJobData) 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 a. Iso' (Sensitive a) a
Data._Sensitive
thirdPartyJobData_continuationToken :: Lens.Lens' ThirdPartyJobData (Prelude.Maybe Prelude.Text)
thirdPartyJobData_continuationToken :: Lens' ThirdPartyJobData (Maybe Text)
thirdPartyJobData_continuationToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ThirdPartyJobData' {Maybe Text
continuationToken :: Maybe Text
$sel:continuationToken:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe Text
continuationToken} -> Maybe Text
continuationToken) (\s :: ThirdPartyJobData
s@ThirdPartyJobData' {} Maybe Text
a -> ThirdPartyJobData
s {$sel:continuationToken:ThirdPartyJobData' :: Maybe Text
continuationToken = Maybe Text
a} :: ThirdPartyJobData)
thirdPartyJobData_encryptionKey :: Lens.Lens' ThirdPartyJobData (Prelude.Maybe EncryptionKey)
thirdPartyJobData_encryptionKey :: Lens' ThirdPartyJobData (Maybe EncryptionKey)
thirdPartyJobData_encryptionKey = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ThirdPartyJobData' {Maybe EncryptionKey
encryptionKey :: Maybe EncryptionKey
$sel:encryptionKey:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe EncryptionKey
encryptionKey} -> Maybe EncryptionKey
encryptionKey) (\s :: ThirdPartyJobData
s@ThirdPartyJobData' {} Maybe EncryptionKey
a -> ThirdPartyJobData
s {$sel:encryptionKey:ThirdPartyJobData' :: Maybe EncryptionKey
encryptionKey = Maybe EncryptionKey
a} :: ThirdPartyJobData)
thirdPartyJobData_inputArtifacts :: Lens.Lens' ThirdPartyJobData (Prelude.Maybe [Artifact])
thirdPartyJobData_inputArtifacts :: Lens' ThirdPartyJobData (Maybe [Artifact])
thirdPartyJobData_inputArtifacts = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ThirdPartyJobData' {Maybe [Artifact]
inputArtifacts :: Maybe [Artifact]
$sel:inputArtifacts:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe [Artifact]
inputArtifacts} -> Maybe [Artifact]
inputArtifacts) (\s :: ThirdPartyJobData
s@ThirdPartyJobData' {} Maybe [Artifact]
a -> ThirdPartyJobData
s {$sel:inputArtifacts:ThirdPartyJobData' :: Maybe [Artifact]
inputArtifacts = Maybe [Artifact]
a} :: ThirdPartyJobData) 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
thirdPartyJobData_outputArtifacts :: Lens.Lens' ThirdPartyJobData (Prelude.Maybe [Artifact])
thirdPartyJobData_outputArtifacts :: Lens' ThirdPartyJobData (Maybe [Artifact])
thirdPartyJobData_outputArtifacts = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ThirdPartyJobData' {Maybe [Artifact]
outputArtifacts :: Maybe [Artifact]
$sel:outputArtifacts:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe [Artifact]
outputArtifacts} -> Maybe [Artifact]
outputArtifacts) (\s :: ThirdPartyJobData
s@ThirdPartyJobData' {} Maybe [Artifact]
a -> ThirdPartyJobData
s {$sel:outputArtifacts:ThirdPartyJobData' :: Maybe [Artifact]
outputArtifacts = Maybe [Artifact]
a} :: ThirdPartyJobData) 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
thirdPartyJobData_pipelineContext :: Lens.Lens' ThirdPartyJobData (Prelude.Maybe PipelineContext)
thirdPartyJobData_pipelineContext :: Lens' ThirdPartyJobData (Maybe PipelineContext)
thirdPartyJobData_pipelineContext = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ThirdPartyJobData' {Maybe PipelineContext
pipelineContext :: Maybe PipelineContext
$sel:pipelineContext:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe PipelineContext
pipelineContext} -> Maybe PipelineContext
pipelineContext) (\s :: ThirdPartyJobData
s@ThirdPartyJobData' {} Maybe PipelineContext
a -> ThirdPartyJobData
s {$sel:pipelineContext:ThirdPartyJobData' :: Maybe PipelineContext
pipelineContext = Maybe PipelineContext
a} :: ThirdPartyJobData)
instance Data.FromJSON ThirdPartyJobData where
parseJSON :: Value -> Parser ThirdPartyJobData
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"ThirdPartyJobData"
( \Object
x ->
Maybe ActionConfiguration
-> Maybe ActionTypeId
-> Maybe (Sensitive AWSSessionCredentials)
-> Maybe Text
-> Maybe EncryptionKey
-> Maybe [Artifact]
-> Maybe [Artifact]
-> Maybe PipelineContext
-> ThirdPartyJobData
ThirdPartyJobData'
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
"actionConfiguration")
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
"actionTypeId")
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
"artifactCredentials")
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
"continuationToken")
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
"encryptionKey")
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
"inputArtifacts" forall a. Parser (Maybe a) -> a -> Parser a
Data..!= forall a. Monoid a => a
Prelude.mempty)
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
"outputArtifacts"
forall a. Parser (Maybe a) -> a -> Parser a
Data..!= forall a. Monoid a => a
Prelude.mempty
)
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
"pipelineContext")
)
instance Prelude.Hashable ThirdPartyJobData where
hashWithSalt :: Int -> ThirdPartyJobData -> Int
hashWithSalt Int
_salt ThirdPartyJobData' {Maybe [Artifact]
Maybe Text
Maybe (Sensitive AWSSessionCredentials)
Maybe ActionConfiguration
Maybe ActionTypeId
Maybe EncryptionKey
Maybe PipelineContext
pipelineContext :: Maybe PipelineContext
outputArtifacts :: Maybe [Artifact]
inputArtifacts :: Maybe [Artifact]
encryptionKey :: Maybe EncryptionKey
continuationToken :: Maybe Text
artifactCredentials :: Maybe (Sensitive AWSSessionCredentials)
actionTypeId :: Maybe ActionTypeId
actionConfiguration :: Maybe ActionConfiguration
$sel:pipelineContext:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe PipelineContext
$sel:outputArtifacts:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe [Artifact]
$sel:inputArtifacts:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe [Artifact]
$sel:encryptionKey:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe EncryptionKey
$sel:continuationToken:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe Text
$sel:artifactCredentials:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe (Sensitive AWSSessionCredentials)
$sel:actionTypeId:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe ActionTypeId
$sel:actionConfiguration:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe ActionConfiguration
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ActionConfiguration
actionConfiguration
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ActionTypeId
actionTypeId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (Sensitive AWSSessionCredentials)
artifactCredentials
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
continuationToken
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe EncryptionKey
encryptionKey
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Artifact]
inputArtifacts
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Artifact]
outputArtifacts
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe PipelineContext
pipelineContext
instance Prelude.NFData ThirdPartyJobData where
rnf :: ThirdPartyJobData -> ()
rnf ThirdPartyJobData' {Maybe [Artifact]
Maybe Text
Maybe (Sensitive AWSSessionCredentials)
Maybe ActionConfiguration
Maybe ActionTypeId
Maybe EncryptionKey
Maybe PipelineContext
pipelineContext :: Maybe PipelineContext
outputArtifacts :: Maybe [Artifact]
inputArtifacts :: Maybe [Artifact]
encryptionKey :: Maybe EncryptionKey
continuationToken :: Maybe Text
artifactCredentials :: Maybe (Sensitive AWSSessionCredentials)
actionTypeId :: Maybe ActionTypeId
actionConfiguration :: Maybe ActionConfiguration
$sel:pipelineContext:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe PipelineContext
$sel:outputArtifacts:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe [Artifact]
$sel:inputArtifacts:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe [Artifact]
$sel:encryptionKey:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe EncryptionKey
$sel:continuationToken:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe Text
$sel:artifactCredentials:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe (Sensitive AWSSessionCredentials)
$sel:actionTypeId:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe ActionTypeId
$sel:actionConfiguration:ThirdPartyJobData' :: ThirdPartyJobData -> Maybe ActionConfiguration
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe ActionConfiguration
actionConfiguration
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ActionTypeId
actionTypeId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (Sensitive AWSSessionCredentials)
artifactCredentials
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
continuationToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe EncryptionKey
encryptionKey
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Artifact]
inputArtifacts
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Artifact]
outputArtifacts
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe PipelineContext
pipelineContext