{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.DataPipeline.GetPipelineDefinition
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Gets the definition of the specified pipeline. You can call
-- @GetPipelineDefinition@ to retrieve the pipeline definition that you
-- provided using PutPipelineDefinition.
module Amazonka.DataPipeline.GetPipelineDefinition
  ( -- * Creating a Request
    GetPipelineDefinition (..),
    newGetPipelineDefinition,

    -- * Request Lenses
    getPipelineDefinition_version,
    getPipelineDefinition_pipelineId,

    -- * Destructuring the Response
    GetPipelineDefinitionResponse (..),
    newGetPipelineDefinitionResponse,

    -- * Response Lenses
    getPipelineDefinitionResponse_parameterObjects,
    getPipelineDefinitionResponse_parameterValues,
    getPipelineDefinitionResponse_pipelineObjects,
    getPipelineDefinitionResponse_httpStatus,
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.DataPipeline.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response

-- | Contains the parameters for GetPipelineDefinition.
--
-- /See:/ 'newGetPipelineDefinition' smart constructor.
data GetPipelineDefinition = GetPipelineDefinition'
  { -- | The version of the pipeline definition to retrieve. Set this parameter
    -- to @latest@ (default) to use the last definition saved to the pipeline
    -- or @active@ to use the last definition that was activated.
    GetPipelineDefinition -> Maybe Text
version :: Prelude.Maybe Prelude.Text,
    -- | The ID of the pipeline.
    GetPipelineDefinition -> Text
pipelineId :: Prelude.Text
  }
  deriving (GetPipelineDefinition -> GetPipelineDefinition -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetPipelineDefinition -> GetPipelineDefinition -> Bool
$c/= :: GetPipelineDefinition -> GetPipelineDefinition -> Bool
== :: GetPipelineDefinition -> GetPipelineDefinition -> Bool
$c== :: GetPipelineDefinition -> GetPipelineDefinition -> Bool
Prelude.Eq, ReadPrec [GetPipelineDefinition]
ReadPrec GetPipelineDefinition
Int -> ReadS GetPipelineDefinition
ReadS [GetPipelineDefinition]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetPipelineDefinition]
$creadListPrec :: ReadPrec [GetPipelineDefinition]
readPrec :: ReadPrec GetPipelineDefinition
$creadPrec :: ReadPrec GetPipelineDefinition
readList :: ReadS [GetPipelineDefinition]
$creadList :: ReadS [GetPipelineDefinition]
readsPrec :: Int -> ReadS GetPipelineDefinition
$creadsPrec :: Int -> ReadS GetPipelineDefinition
Prelude.Read, Int -> GetPipelineDefinition -> ShowS
[GetPipelineDefinition] -> ShowS
GetPipelineDefinition -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetPipelineDefinition] -> ShowS
$cshowList :: [GetPipelineDefinition] -> ShowS
show :: GetPipelineDefinition -> String
$cshow :: GetPipelineDefinition -> String
showsPrec :: Int -> GetPipelineDefinition -> ShowS
$cshowsPrec :: Int -> GetPipelineDefinition -> ShowS
Prelude.Show, forall x. Rep GetPipelineDefinition x -> GetPipelineDefinition
forall x. GetPipelineDefinition -> Rep GetPipelineDefinition x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetPipelineDefinition x -> GetPipelineDefinition
$cfrom :: forall x. GetPipelineDefinition -> Rep GetPipelineDefinition x
Prelude.Generic)

-- |
-- Create a value of 'GetPipelineDefinition' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'version', 'getPipelineDefinition_version' - The version of the pipeline definition to retrieve. Set this parameter
-- to @latest@ (default) to use the last definition saved to the pipeline
-- or @active@ to use the last definition that was activated.
--
-- 'pipelineId', 'getPipelineDefinition_pipelineId' - The ID of the pipeline.
newGetPipelineDefinition ::
  -- | 'pipelineId'
  Prelude.Text ->
  GetPipelineDefinition
newGetPipelineDefinition :: Text -> GetPipelineDefinition
newGetPipelineDefinition Text
pPipelineId_ =
  GetPipelineDefinition'
    { $sel:version:GetPipelineDefinition' :: Maybe Text
version = forall a. Maybe a
Prelude.Nothing,
      $sel:pipelineId:GetPipelineDefinition' :: Text
pipelineId = Text
pPipelineId_
    }

-- | The version of the pipeline definition to retrieve. Set this parameter
-- to @latest@ (default) to use the last definition saved to the pipeline
-- or @active@ to use the last definition that was activated.
getPipelineDefinition_version :: Lens.Lens' GetPipelineDefinition (Prelude.Maybe Prelude.Text)
getPipelineDefinition_version :: Lens' GetPipelineDefinition (Maybe Text)
getPipelineDefinition_version = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetPipelineDefinition' {Maybe Text
version :: Maybe Text
$sel:version:GetPipelineDefinition' :: GetPipelineDefinition -> Maybe Text
version} -> Maybe Text
version) (\s :: GetPipelineDefinition
s@GetPipelineDefinition' {} Maybe Text
a -> GetPipelineDefinition
s {$sel:version:GetPipelineDefinition' :: Maybe Text
version = Maybe Text
a} :: GetPipelineDefinition)

-- | The ID of the pipeline.
getPipelineDefinition_pipelineId :: Lens.Lens' GetPipelineDefinition Prelude.Text
getPipelineDefinition_pipelineId :: Lens' GetPipelineDefinition Text
getPipelineDefinition_pipelineId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetPipelineDefinition' {Text
pipelineId :: Text
$sel:pipelineId:GetPipelineDefinition' :: GetPipelineDefinition -> Text
pipelineId} -> Text
pipelineId) (\s :: GetPipelineDefinition
s@GetPipelineDefinition' {} Text
a -> GetPipelineDefinition
s {$sel:pipelineId:GetPipelineDefinition' :: Text
pipelineId = Text
a} :: GetPipelineDefinition)

instance Core.AWSRequest GetPipelineDefinition where
  type
    AWSResponse GetPipelineDefinition =
      GetPipelineDefinitionResponse
  request :: (Service -> Service)
-> GetPipelineDefinition -> Request GetPipelineDefinition
request Service -> Service
overrides =
    forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
  response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetPipelineDefinition
-> ClientResponse ClientBody
-> m (Either
        Error (ClientResponse (AWSResponse GetPipelineDefinition)))
response =
    forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
      ( \Int
s ResponseHeaders
h Object
x ->
          Maybe [ParameterObject]
-> Maybe [ParameterValue]
-> Maybe [PipelineObject]
-> Int
-> GetPipelineDefinitionResponse
GetPipelineDefinitionResponse'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ( Object
x
                            forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"parameterObjects"
                            forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ 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 -> Either String (Maybe a)
Data..?> Key
"parameterValues"
                            forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ 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 -> Either String (Maybe a)
Data..?> Key
"pipelineObjects"
                            forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
                        )
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
      )

instance Prelude.Hashable GetPipelineDefinition where
  hashWithSalt :: Int -> GetPipelineDefinition -> Int
hashWithSalt Int
_salt GetPipelineDefinition' {Maybe Text
Text
pipelineId :: Text
version :: Maybe Text
$sel:pipelineId:GetPipelineDefinition' :: GetPipelineDefinition -> Text
$sel:version:GetPipelineDefinition' :: GetPipelineDefinition -> Maybe Text
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
version
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
pipelineId

instance Prelude.NFData GetPipelineDefinition where
  rnf :: GetPipelineDefinition -> ()
rnf GetPipelineDefinition' {Maybe Text
Text
pipelineId :: Text
version :: Maybe Text
$sel:pipelineId:GetPipelineDefinition' :: GetPipelineDefinition -> Text
$sel:version:GetPipelineDefinition' :: GetPipelineDefinition -> Maybe Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
version
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
pipelineId

instance Data.ToHeaders GetPipelineDefinition where
  toHeaders :: GetPipelineDefinition -> ResponseHeaders
toHeaders =
    forall a b. a -> b -> a
Prelude.const
      ( forall a. Monoid a => [a] -> a
Prelude.mconcat
          [ HeaderName
"X-Amz-Target"
              forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"DataPipeline.GetPipelineDefinition" ::
                          Prelude.ByteString
                      ),
            HeaderName
"Content-Type"
              forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
                          Prelude.ByteString
                      )
          ]
      )

instance Data.ToJSON GetPipelineDefinition where
  toJSON :: GetPipelineDefinition -> Value
toJSON GetPipelineDefinition' {Maybe Text
Text
pipelineId :: Text
version :: Maybe Text
$sel:pipelineId:GetPipelineDefinition' :: GetPipelineDefinition -> Text
$sel:version:GetPipelineDefinition' :: GetPipelineDefinition -> Maybe Text
..} =
    [Pair] -> Value
Data.object
      ( forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ (Key
"version" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
version,
            forall a. a -> Maybe a
Prelude.Just (Key
"pipelineId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
pipelineId)
          ]
      )

instance Data.ToPath GetPipelineDefinition where
  toPath :: GetPipelineDefinition -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"

instance Data.ToQuery GetPipelineDefinition where
  toQuery :: GetPipelineDefinition -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty

-- | Contains the output of GetPipelineDefinition.
--
-- /See:/ 'newGetPipelineDefinitionResponse' smart constructor.
data GetPipelineDefinitionResponse = GetPipelineDefinitionResponse'
  { -- | The parameter objects used in the pipeline definition.
    GetPipelineDefinitionResponse -> Maybe [ParameterObject]
parameterObjects :: Prelude.Maybe [ParameterObject],
    -- | The parameter values used in the pipeline definition.
    GetPipelineDefinitionResponse -> Maybe [ParameterValue]
parameterValues :: Prelude.Maybe [ParameterValue],
    -- | The objects defined in the pipeline.
    GetPipelineDefinitionResponse -> Maybe [PipelineObject]
pipelineObjects :: Prelude.Maybe [PipelineObject],
    -- | The response's http status code.
    GetPipelineDefinitionResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (GetPipelineDefinitionResponse
-> GetPipelineDefinitionResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetPipelineDefinitionResponse
-> GetPipelineDefinitionResponse -> Bool
$c/= :: GetPipelineDefinitionResponse
-> GetPipelineDefinitionResponse -> Bool
== :: GetPipelineDefinitionResponse
-> GetPipelineDefinitionResponse -> Bool
$c== :: GetPipelineDefinitionResponse
-> GetPipelineDefinitionResponse -> Bool
Prelude.Eq, ReadPrec [GetPipelineDefinitionResponse]
ReadPrec GetPipelineDefinitionResponse
Int -> ReadS GetPipelineDefinitionResponse
ReadS [GetPipelineDefinitionResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetPipelineDefinitionResponse]
$creadListPrec :: ReadPrec [GetPipelineDefinitionResponse]
readPrec :: ReadPrec GetPipelineDefinitionResponse
$creadPrec :: ReadPrec GetPipelineDefinitionResponse
readList :: ReadS [GetPipelineDefinitionResponse]
$creadList :: ReadS [GetPipelineDefinitionResponse]
readsPrec :: Int -> ReadS GetPipelineDefinitionResponse
$creadsPrec :: Int -> ReadS GetPipelineDefinitionResponse
Prelude.Read, Int -> GetPipelineDefinitionResponse -> ShowS
[GetPipelineDefinitionResponse] -> ShowS
GetPipelineDefinitionResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetPipelineDefinitionResponse] -> ShowS
$cshowList :: [GetPipelineDefinitionResponse] -> ShowS
show :: GetPipelineDefinitionResponse -> String
$cshow :: GetPipelineDefinitionResponse -> String
showsPrec :: Int -> GetPipelineDefinitionResponse -> ShowS
$cshowsPrec :: Int -> GetPipelineDefinitionResponse -> ShowS
Prelude.Show, forall x.
Rep GetPipelineDefinitionResponse x
-> GetPipelineDefinitionResponse
forall x.
GetPipelineDefinitionResponse
-> Rep GetPipelineDefinitionResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetPipelineDefinitionResponse x
-> GetPipelineDefinitionResponse
$cfrom :: forall x.
GetPipelineDefinitionResponse
-> Rep GetPipelineDefinitionResponse x
Prelude.Generic)

-- |
-- Create a value of 'GetPipelineDefinitionResponse' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'parameterObjects', 'getPipelineDefinitionResponse_parameterObjects' - The parameter objects used in the pipeline definition.
--
-- 'parameterValues', 'getPipelineDefinitionResponse_parameterValues' - The parameter values used in the pipeline definition.
--
-- 'pipelineObjects', 'getPipelineDefinitionResponse_pipelineObjects' - The objects defined in the pipeline.
--
-- 'httpStatus', 'getPipelineDefinitionResponse_httpStatus' - The response's http status code.
newGetPipelineDefinitionResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  GetPipelineDefinitionResponse
newGetPipelineDefinitionResponse :: Int -> GetPipelineDefinitionResponse
newGetPipelineDefinitionResponse Int
pHttpStatus_ =
  GetPipelineDefinitionResponse'
    { $sel:parameterObjects:GetPipelineDefinitionResponse' :: Maybe [ParameterObject]
parameterObjects =
        forall a. Maybe a
Prelude.Nothing,
      $sel:parameterValues:GetPipelineDefinitionResponse' :: Maybe [ParameterValue]
parameterValues = forall a. Maybe a
Prelude.Nothing,
      $sel:pipelineObjects:GetPipelineDefinitionResponse' :: Maybe [PipelineObject]
pipelineObjects = forall a. Maybe a
Prelude.Nothing,
      $sel:httpStatus:GetPipelineDefinitionResponse' :: Int
httpStatus = Int
pHttpStatus_
    }

-- | The parameter objects used in the pipeline definition.
getPipelineDefinitionResponse_parameterObjects :: Lens.Lens' GetPipelineDefinitionResponse (Prelude.Maybe [ParameterObject])
getPipelineDefinitionResponse_parameterObjects :: Lens' GetPipelineDefinitionResponse (Maybe [ParameterObject])
getPipelineDefinitionResponse_parameterObjects = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetPipelineDefinitionResponse' {Maybe [ParameterObject]
parameterObjects :: Maybe [ParameterObject]
$sel:parameterObjects:GetPipelineDefinitionResponse' :: GetPipelineDefinitionResponse -> Maybe [ParameterObject]
parameterObjects} -> Maybe [ParameterObject]
parameterObjects) (\s :: GetPipelineDefinitionResponse
s@GetPipelineDefinitionResponse' {} Maybe [ParameterObject]
a -> GetPipelineDefinitionResponse
s {$sel:parameterObjects:GetPipelineDefinitionResponse' :: Maybe [ParameterObject]
parameterObjects = Maybe [ParameterObject]
a} :: GetPipelineDefinitionResponse) 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

-- | The parameter values used in the pipeline definition.
getPipelineDefinitionResponse_parameterValues :: Lens.Lens' GetPipelineDefinitionResponse (Prelude.Maybe [ParameterValue])
getPipelineDefinitionResponse_parameterValues :: Lens' GetPipelineDefinitionResponse (Maybe [ParameterValue])
getPipelineDefinitionResponse_parameterValues = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetPipelineDefinitionResponse' {Maybe [ParameterValue]
parameterValues :: Maybe [ParameterValue]
$sel:parameterValues:GetPipelineDefinitionResponse' :: GetPipelineDefinitionResponse -> Maybe [ParameterValue]
parameterValues} -> Maybe [ParameterValue]
parameterValues) (\s :: GetPipelineDefinitionResponse
s@GetPipelineDefinitionResponse' {} Maybe [ParameterValue]
a -> GetPipelineDefinitionResponse
s {$sel:parameterValues:GetPipelineDefinitionResponse' :: Maybe [ParameterValue]
parameterValues = Maybe [ParameterValue]
a} :: GetPipelineDefinitionResponse) 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

-- | The objects defined in the pipeline.
getPipelineDefinitionResponse_pipelineObjects :: Lens.Lens' GetPipelineDefinitionResponse (Prelude.Maybe [PipelineObject])
getPipelineDefinitionResponse_pipelineObjects :: Lens' GetPipelineDefinitionResponse (Maybe [PipelineObject])
getPipelineDefinitionResponse_pipelineObjects = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetPipelineDefinitionResponse' {Maybe [PipelineObject]
pipelineObjects :: Maybe [PipelineObject]
$sel:pipelineObjects:GetPipelineDefinitionResponse' :: GetPipelineDefinitionResponse -> Maybe [PipelineObject]
pipelineObjects} -> Maybe [PipelineObject]
pipelineObjects) (\s :: GetPipelineDefinitionResponse
s@GetPipelineDefinitionResponse' {} Maybe [PipelineObject]
a -> GetPipelineDefinitionResponse
s {$sel:pipelineObjects:GetPipelineDefinitionResponse' :: Maybe [PipelineObject]
pipelineObjects = Maybe [PipelineObject]
a} :: GetPipelineDefinitionResponse) 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

-- | The response's http status code.
getPipelineDefinitionResponse_httpStatus :: Lens.Lens' GetPipelineDefinitionResponse Prelude.Int
getPipelineDefinitionResponse_httpStatus :: Lens' GetPipelineDefinitionResponse Int
getPipelineDefinitionResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetPipelineDefinitionResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetPipelineDefinitionResponse' :: GetPipelineDefinitionResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetPipelineDefinitionResponse
s@GetPipelineDefinitionResponse' {} Int
a -> GetPipelineDefinitionResponse
s {$sel:httpStatus:GetPipelineDefinitionResponse' :: Int
httpStatus = Int
a} :: GetPipelineDefinitionResponse)

instance Prelude.NFData GetPipelineDefinitionResponse where
  rnf :: GetPipelineDefinitionResponse -> ()
rnf GetPipelineDefinitionResponse' {Int
Maybe [ParameterObject]
Maybe [ParameterValue]
Maybe [PipelineObject]
httpStatus :: Int
pipelineObjects :: Maybe [PipelineObject]
parameterValues :: Maybe [ParameterValue]
parameterObjects :: Maybe [ParameterObject]
$sel:httpStatus:GetPipelineDefinitionResponse' :: GetPipelineDefinitionResponse -> Int
$sel:pipelineObjects:GetPipelineDefinitionResponse' :: GetPipelineDefinitionResponse -> Maybe [PipelineObject]
$sel:parameterValues:GetPipelineDefinitionResponse' :: GetPipelineDefinitionResponse -> Maybe [ParameterValue]
$sel:parameterObjects:GetPipelineDefinitionResponse' :: GetPipelineDefinitionResponse -> Maybe [ParameterObject]
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe [ParameterObject]
parameterObjects
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [ParameterValue]
parameterValues
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [PipelineObject]
pipelineObjects
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus