{-# 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.Pinpoint.GetJourneyExecutionActivityMetrics
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Retrieves (queries) pre-aggregated data for a standard execution metric
-- that applies to a journey activity.
module Amazonka.Pinpoint.GetJourneyExecutionActivityMetrics
  ( -- * Creating a Request
    GetJourneyExecutionActivityMetrics (..),
    newGetJourneyExecutionActivityMetrics,

    -- * Request Lenses
    getJourneyExecutionActivityMetrics_nextToken,
    getJourneyExecutionActivityMetrics_pageSize,
    getJourneyExecutionActivityMetrics_journeyActivityId,
    getJourneyExecutionActivityMetrics_applicationId,
    getJourneyExecutionActivityMetrics_journeyId,

    -- * Destructuring the Response
    GetJourneyExecutionActivityMetricsResponse (..),
    newGetJourneyExecutionActivityMetricsResponse,

    -- * Response Lenses
    getJourneyExecutionActivityMetricsResponse_httpStatus,
    getJourneyExecutionActivityMetricsResponse_journeyExecutionActivityMetricsResponse,
  )
where

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

-- | /See:/ 'newGetJourneyExecutionActivityMetrics' smart constructor.
data GetJourneyExecutionActivityMetrics = GetJourneyExecutionActivityMetrics'
  { -- | The string that specifies which page of results to return in a paginated
    -- response. This parameter is not supported for application, campaign, and
    -- journey metrics.
    GetJourneyExecutionActivityMetrics -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
    -- | The maximum number of items to include in each page of a paginated
    -- response. This parameter is not supported for application, campaign, and
    -- journey metrics.
    GetJourneyExecutionActivityMetrics -> Maybe Text
pageSize :: Prelude.Maybe Prelude.Text,
    -- | The unique identifier for the journey activity.
    GetJourneyExecutionActivityMetrics -> Text
journeyActivityId :: Prelude.Text,
    -- | The unique identifier for the application. This identifier is displayed
    -- as the __Project ID__ on the Amazon Pinpoint console.
    GetJourneyExecutionActivityMetrics -> Text
applicationId :: Prelude.Text,
    -- | The unique identifier for the journey.
    GetJourneyExecutionActivityMetrics -> Text
journeyId :: Prelude.Text
  }
  deriving (GetJourneyExecutionActivityMetrics
-> GetJourneyExecutionActivityMetrics -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetJourneyExecutionActivityMetrics
-> GetJourneyExecutionActivityMetrics -> Bool
$c/= :: GetJourneyExecutionActivityMetrics
-> GetJourneyExecutionActivityMetrics -> Bool
== :: GetJourneyExecutionActivityMetrics
-> GetJourneyExecutionActivityMetrics -> Bool
$c== :: GetJourneyExecutionActivityMetrics
-> GetJourneyExecutionActivityMetrics -> Bool
Prelude.Eq, ReadPrec [GetJourneyExecutionActivityMetrics]
ReadPrec GetJourneyExecutionActivityMetrics
Int -> ReadS GetJourneyExecutionActivityMetrics
ReadS [GetJourneyExecutionActivityMetrics]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetJourneyExecutionActivityMetrics]
$creadListPrec :: ReadPrec [GetJourneyExecutionActivityMetrics]
readPrec :: ReadPrec GetJourneyExecutionActivityMetrics
$creadPrec :: ReadPrec GetJourneyExecutionActivityMetrics
readList :: ReadS [GetJourneyExecutionActivityMetrics]
$creadList :: ReadS [GetJourneyExecutionActivityMetrics]
readsPrec :: Int -> ReadS GetJourneyExecutionActivityMetrics
$creadsPrec :: Int -> ReadS GetJourneyExecutionActivityMetrics
Prelude.Read, Int -> GetJourneyExecutionActivityMetrics -> ShowS
[GetJourneyExecutionActivityMetrics] -> ShowS
GetJourneyExecutionActivityMetrics -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetJourneyExecutionActivityMetrics] -> ShowS
$cshowList :: [GetJourneyExecutionActivityMetrics] -> ShowS
show :: GetJourneyExecutionActivityMetrics -> String
$cshow :: GetJourneyExecutionActivityMetrics -> String
showsPrec :: Int -> GetJourneyExecutionActivityMetrics -> ShowS
$cshowsPrec :: Int -> GetJourneyExecutionActivityMetrics -> ShowS
Prelude.Show, forall x.
Rep GetJourneyExecutionActivityMetrics x
-> GetJourneyExecutionActivityMetrics
forall x.
GetJourneyExecutionActivityMetrics
-> Rep GetJourneyExecutionActivityMetrics x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetJourneyExecutionActivityMetrics x
-> GetJourneyExecutionActivityMetrics
$cfrom :: forall x.
GetJourneyExecutionActivityMetrics
-> Rep GetJourneyExecutionActivityMetrics x
Prelude.Generic)

-- |
-- Create a value of 'GetJourneyExecutionActivityMetrics' 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:
--
-- 'nextToken', 'getJourneyExecutionActivityMetrics_nextToken' - The string that specifies which page of results to return in a paginated
-- response. This parameter is not supported for application, campaign, and
-- journey metrics.
--
-- 'pageSize', 'getJourneyExecutionActivityMetrics_pageSize' - The maximum number of items to include in each page of a paginated
-- response. This parameter is not supported for application, campaign, and
-- journey metrics.
--
-- 'journeyActivityId', 'getJourneyExecutionActivityMetrics_journeyActivityId' - The unique identifier for the journey activity.
--
-- 'applicationId', 'getJourneyExecutionActivityMetrics_applicationId' - The unique identifier for the application. This identifier is displayed
-- as the __Project ID__ on the Amazon Pinpoint console.
--
-- 'journeyId', 'getJourneyExecutionActivityMetrics_journeyId' - The unique identifier for the journey.
newGetJourneyExecutionActivityMetrics ::
  -- | 'journeyActivityId'
  Prelude.Text ->
  -- | 'applicationId'
  Prelude.Text ->
  -- | 'journeyId'
  Prelude.Text ->
  GetJourneyExecutionActivityMetrics
newGetJourneyExecutionActivityMetrics :: Text -> Text -> Text -> GetJourneyExecutionActivityMetrics
newGetJourneyExecutionActivityMetrics
  Text
pJourneyActivityId_
  Text
pApplicationId_
  Text
pJourneyId_ =
    GetJourneyExecutionActivityMetrics'
      { $sel:nextToken:GetJourneyExecutionActivityMetrics' :: Maybe Text
nextToken =
          forall a. Maybe a
Prelude.Nothing,
        $sel:pageSize:GetJourneyExecutionActivityMetrics' :: Maybe Text
pageSize = forall a. Maybe a
Prelude.Nothing,
        $sel:journeyActivityId:GetJourneyExecutionActivityMetrics' :: Text
journeyActivityId = Text
pJourneyActivityId_,
        $sel:applicationId:GetJourneyExecutionActivityMetrics' :: Text
applicationId = Text
pApplicationId_,
        $sel:journeyId:GetJourneyExecutionActivityMetrics' :: Text
journeyId = Text
pJourneyId_
      }

-- | The string that specifies which page of results to return in a paginated
-- response. This parameter is not supported for application, campaign, and
-- journey metrics.
getJourneyExecutionActivityMetrics_nextToken :: Lens.Lens' GetJourneyExecutionActivityMetrics (Prelude.Maybe Prelude.Text)
getJourneyExecutionActivityMetrics_nextToken :: Lens' GetJourneyExecutionActivityMetrics (Maybe Text)
getJourneyExecutionActivityMetrics_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetJourneyExecutionActivityMetrics' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: GetJourneyExecutionActivityMetrics
s@GetJourneyExecutionActivityMetrics' {} Maybe Text
a -> GetJourneyExecutionActivityMetrics
s {$sel:nextToken:GetJourneyExecutionActivityMetrics' :: Maybe Text
nextToken = Maybe Text
a} :: GetJourneyExecutionActivityMetrics)

-- | The maximum number of items to include in each page of a paginated
-- response. This parameter is not supported for application, campaign, and
-- journey metrics.
getJourneyExecutionActivityMetrics_pageSize :: Lens.Lens' GetJourneyExecutionActivityMetrics (Prelude.Maybe Prelude.Text)
getJourneyExecutionActivityMetrics_pageSize :: Lens' GetJourneyExecutionActivityMetrics (Maybe Text)
getJourneyExecutionActivityMetrics_pageSize = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetJourneyExecutionActivityMetrics' {Maybe Text
pageSize :: Maybe Text
$sel:pageSize:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Maybe Text
pageSize} -> Maybe Text
pageSize) (\s :: GetJourneyExecutionActivityMetrics
s@GetJourneyExecutionActivityMetrics' {} Maybe Text
a -> GetJourneyExecutionActivityMetrics
s {$sel:pageSize:GetJourneyExecutionActivityMetrics' :: Maybe Text
pageSize = Maybe Text
a} :: GetJourneyExecutionActivityMetrics)

-- | The unique identifier for the journey activity.
getJourneyExecutionActivityMetrics_journeyActivityId :: Lens.Lens' GetJourneyExecutionActivityMetrics Prelude.Text
getJourneyExecutionActivityMetrics_journeyActivityId :: Lens' GetJourneyExecutionActivityMetrics Text
getJourneyExecutionActivityMetrics_journeyActivityId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetJourneyExecutionActivityMetrics' {Text
journeyActivityId :: Text
$sel:journeyActivityId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
journeyActivityId} -> Text
journeyActivityId) (\s :: GetJourneyExecutionActivityMetrics
s@GetJourneyExecutionActivityMetrics' {} Text
a -> GetJourneyExecutionActivityMetrics
s {$sel:journeyActivityId:GetJourneyExecutionActivityMetrics' :: Text
journeyActivityId = Text
a} :: GetJourneyExecutionActivityMetrics)

-- | The unique identifier for the application. This identifier is displayed
-- as the __Project ID__ on the Amazon Pinpoint console.
getJourneyExecutionActivityMetrics_applicationId :: Lens.Lens' GetJourneyExecutionActivityMetrics Prelude.Text
getJourneyExecutionActivityMetrics_applicationId :: Lens' GetJourneyExecutionActivityMetrics Text
getJourneyExecutionActivityMetrics_applicationId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetJourneyExecutionActivityMetrics' {Text
applicationId :: Text
$sel:applicationId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
applicationId} -> Text
applicationId) (\s :: GetJourneyExecutionActivityMetrics
s@GetJourneyExecutionActivityMetrics' {} Text
a -> GetJourneyExecutionActivityMetrics
s {$sel:applicationId:GetJourneyExecutionActivityMetrics' :: Text
applicationId = Text
a} :: GetJourneyExecutionActivityMetrics)

-- | The unique identifier for the journey.
getJourneyExecutionActivityMetrics_journeyId :: Lens.Lens' GetJourneyExecutionActivityMetrics Prelude.Text
getJourneyExecutionActivityMetrics_journeyId :: Lens' GetJourneyExecutionActivityMetrics Text
getJourneyExecutionActivityMetrics_journeyId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetJourneyExecutionActivityMetrics' {Text
journeyId :: Text
$sel:journeyId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
journeyId} -> Text
journeyId) (\s :: GetJourneyExecutionActivityMetrics
s@GetJourneyExecutionActivityMetrics' {} Text
a -> GetJourneyExecutionActivityMetrics
s {$sel:journeyId:GetJourneyExecutionActivityMetrics' :: Text
journeyId = Text
a} :: GetJourneyExecutionActivityMetrics)

instance
  Core.AWSRequest
    GetJourneyExecutionActivityMetrics
  where
  type
    AWSResponse GetJourneyExecutionActivityMetrics =
      GetJourneyExecutionActivityMetricsResponse
  request :: (Service -> Service)
-> GetJourneyExecutionActivityMetrics
-> Request GetJourneyExecutionActivityMetrics
request Service -> Service
overrides =
    forall a. ToRequest a => Service -> a -> Request a
Request.get (Service -> Service
overrides Service
defaultService)
  response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetJourneyExecutionActivityMetrics
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse (AWSResponse GetJourneyExecutionActivityMetrics)))
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 ->
          Int
-> JourneyExecutionActivityMetricsResponse
-> GetJourneyExecutionActivityMetricsResponse
GetJourneyExecutionActivityMetricsResponse'
            forall (f :: * -> *) a b. Functor 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))
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall a. FromJSON a => Object -> Either String a
Data.eitherParseJSON Object
x)
      )

instance
  Prelude.Hashable
    GetJourneyExecutionActivityMetrics
  where
  hashWithSalt :: Int -> GetJourneyExecutionActivityMetrics -> Int
hashWithSalt
    Int
_salt
    GetJourneyExecutionActivityMetrics' {Maybe Text
Text
journeyId :: Text
applicationId :: Text
journeyActivityId :: Text
pageSize :: Maybe Text
nextToken :: Maybe Text
$sel:journeyId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
$sel:applicationId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
$sel:journeyActivityId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
$sel:pageSize:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Maybe Text
$sel:nextToken:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Maybe Text
..} =
      Int
_salt
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
nextToken
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
pageSize
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
journeyActivityId
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
applicationId
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
journeyId

instance
  Prelude.NFData
    GetJourneyExecutionActivityMetrics
  where
  rnf :: GetJourneyExecutionActivityMetrics -> ()
rnf GetJourneyExecutionActivityMetrics' {Maybe Text
Text
journeyId :: Text
applicationId :: Text
journeyActivityId :: Text
pageSize :: Maybe Text
nextToken :: Maybe Text
$sel:journeyId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
$sel:applicationId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
$sel:journeyActivityId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
$sel:pageSize:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Maybe Text
$sel:nextToken:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Maybe Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
nextToken
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
pageSize
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
journeyActivityId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
applicationId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
journeyId

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

instance
  Data.ToPath
    GetJourneyExecutionActivityMetrics
  where
  toPath :: GetJourneyExecutionActivityMetrics -> ByteString
toPath GetJourneyExecutionActivityMetrics' {Maybe Text
Text
journeyId :: Text
applicationId :: Text
journeyActivityId :: Text
pageSize :: Maybe Text
nextToken :: Maybe Text
$sel:journeyId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
$sel:applicationId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
$sel:journeyActivityId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
$sel:pageSize:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Maybe Text
$sel:nextToken:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Maybe Text
..} =
    forall a. Monoid a => [a] -> a
Prelude.mconcat
      [ ByteString
"/v1/apps/",
        forall a. ToByteString a => a -> ByteString
Data.toBS Text
applicationId,
        ByteString
"/journeys/",
        forall a. ToByteString a => a -> ByteString
Data.toBS Text
journeyId,
        ByteString
"/activities/",
        forall a. ToByteString a => a -> ByteString
Data.toBS Text
journeyActivityId,
        ByteString
"/execution-metrics"
      ]

instance
  Data.ToQuery
    GetJourneyExecutionActivityMetrics
  where
  toQuery :: GetJourneyExecutionActivityMetrics -> QueryString
toQuery GetJourneyExecutionActivityMetrics' {Maybe Text
Text
journeyId :: Text
applicationId :: Text
journeyActivityId :: Text
pageSize :: Maybe Text
nextToken :: Maybe Text
$sel:journeyId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
$sel:applicationId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
$sel:journeyActivityId:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Text
$sel:pageSize:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Maybe Text
$sel:nextToken:GetJourneyExecutionActivityMetrics' :: GetJourneyExecutionActivityMetrics -> Maybe Text
..} =
    forall a. Monoid a => [a] -> a
Prelude.mconcat
      [ ByteString
"next-token" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
nextToken,
        ByteString
"page-size" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
pageSize
      ]

-- | /See:/ 'newGetJourneyExecutionActivityMetricsResponse' smart constructor.
data GetJourneyExecutionActivityMetricsResponse = GetJourneyExecutionActivityMetricsResponse'
  { -- | The response's http status code.
    GetJourneyExecutionActivityMetricsResponse -> Int
httpStatus :: Prelude.Int,
    GetJourneyExecutionActivityMetricsResponse
-> JourneyExecutionActivityMetricsResponse
journeyExecutionActivityMetricsResponse :: JourneyExecutionActivityMetricsResponse
  }
  deriving (GetJourneyExecutionActivityMetricsResponse
-> GetJourneyExecutionActivityMetricsResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetJourneyExecutionActivityMetricsResponse
-> GetJourneyExecutionActivityMetricsResponse -> Bool
$c/= :: GetJourneyExecutionActivityMetricsResponse
-> GetJourneyExecutionActivityMetricsResponse -> Bool
== :: GetJourneyExecutionActivityMetricsResponse
-> GetJourneyExecutionActivityMetricsResponse -> Bool
$c== :: GetJourneyExecutionActivityMetricsResponse
-> GetJourneyExecutionActivityMetricsResponse -> Bool
Prelude.Eq, ReadPrec [GetJourneyExecutionActivityMetricsResponse]
ReadPrec GetJourneyExecutionActivityMetricsResponse
Int -> ReadS GetJourneyExecutionActivityMetricsResponse
ReadS [GetJourneyExecutionActivityMetricsResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetJourneyExecutionActivityMetricsResponse]
$creadListPrec :: ReadPrec [GetJourneyExecutionActivityMetricsResponse]
readPrec :: ReadPrec GetJourneyExecutionActivityMetricsResponse
$creadPrec :: ReadPrec GetJourneyExecutionActivityMetricsResponse
readList :: ReadS [GetJourneyExecutionActivityMetricsResponse]
$creadList :: ReadS [GetJourneyExecutionActivityMetricsResponse]
readsPrec :: Int -> ReadS GetJourneyExecutionActivityMetricsResponse
$creadsPrec :: Int -> ReadS GetJourneyExecutionActivityMetricsResponse
Prelude.Read, Int -> GetJourneyExecutionActivityMetricsResponse -> ShowS
[GetJourneyExecutionActivityMetricsResponse] -> ShowS
GetJourneyExecutionActivityMetricsResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetJourneyExecutionActivityMetricsResponse] -> ShowS
$cshowList :: [GetJourneyExecutionActivityMetricsResponse] -> ShowS
show :: GetJourneyExecutionActivityMetricsResponse -> String
$cshow :: GetJourneyExecutionActivityMetricsResponse -> String
showsPrec :: Int -> GetJourneyExecutionActivityMetricsResponse -> ShowS
$cshowsPrec :: Int -> GetJourneyExecutionActivityMetricsResponse -> ShowS
Prelude.Show, forall x.
Rep GetJourneyExecutionActivityMetricsResponse x
-> GetJourneyExecutionActivityMetricsResponse
forall x.
GetJourneyExecutionActivityMetricsResponse
-> Rep GetJourneyExecutionActivityMetricsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetJourneyExecutionActivityMetricsResponse x
-> GetJourneyExecutionActivityMetricsResponse
$cfrom :: forall x.
GetJourneyExecutionActivityMetricsResponse
-> Rep GetJourneyExecutionActivityMetricsResponse x
Prelude.Generic)

-- |
-- Create a value of 'GetJourneyExecutionActivityMetricsResponse' 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:
--
-- 'httpStatus', 'getJourneyExecutionActivityMetricsResponse_httpStatus' - The response's http status code.
--
-- 'journeyExecutionActivityMetricsResponse', 'getJourneyExecutionActivityMetricsResponse_journeyExecutionActivityMetricsResponse' - Undocumented member.
newGetJourneyExecutionActivityMetricsResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  -- | 'journeyExecutionActivityMetricsResponse'
  JourneyExecutionActivityMetricsResponse ->
  GetJourneyExecutionActivityMetricsResponse
newGetJourneyExecutionActivityMetricsResponse :: Int
-> JourneyExecutionActivityMetricsResponse
-> GetJourneyExecutionActivityMetricsResponse
newGetJourneyExecutionActivityMetricsResponse
  Int
pHttpStatus_
  JourneyExecutionActivityMetricsResponse
pJourneyExecutionActivityMetricsResponse_ =
    GetJourneyExecutionActivityMetricsResponse'
      { $sel:httpStatus:GetJourneyExecutionActivityMetricsResponse' :: Int
httpStatus =
          Int
pHttpStatus_,
        $sel:journeyExecutionActivityMetricsResponse:GetJourneyExecutionActivityMetricsResponse' :: JourneyExecutionActivityMetricsResponse
journeyExecutionActivityMetricsResponse =
          JourneyExecutionActivityMetricsResponse
pJourneyExecutionActivityMetricsResponse_
      }

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

-- | Undocumented member.
getJourneyExecutionActivityMetricsResponse_journeyExecutionActivityMetricsResponse :: Lens.Lens' GetJourneyExecutionActivityMetricsResponse JourneyExecutionActivityMetricsResponse
getJourneyExecutionActivityMetricsResponse_journeyExecutionActivityMetricsResponse :: Lens'
  GetJourneyExecutionActivityMetricsResponse
  JourneyExecutionActivityMetricsResponse
getJourneyExecutionActivityMetricsResponse_journeyExecutionActivityMetricsResponse = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetJourneyExecutionActivityMetricsResponse' {JourneyExecutionActivityMetricsResponse
journeyExecutionActivityMetricsResponse :: JourneyExecutionActivityMetricsResponse
$sel:journeyExecutionActivityMetricsResponse:GetJourneyExecutionActivityMetricsResponse' :: GetJourneyExecutionActivityMetricsResponse
-> JourneyExecutionActivityMetricsResponse
journeyExecutionActivityMetricsResponse} -> JourneyExecutionActivityMetricsResponse
journeyExecutionActivityMetricsResponse) (\s :: GetJourneyExecutionActivityMetricsResponse
s@GetJourneyExecutionActivityMetricsResponse' {} JourneyExecutionActivityMetricsResponse
a -> GetJourneyExecutionActivityMetricsResponse
s {$sel:journeyExecutionActivityMetricsResponse:GetJourneyExecutionActivityMetricsResponse' :: JourneyExecutionActivityMetricsResponse
journeyExecutionActivityMetricsResponse = JourneyExecutionActivityMetricsResponse
a} :: GetJourneyExecutionActivityMetricsResponse)

instance
  Prelude.NFData
    GetJourneyExecutionActivityMetricsResponse
  where
  rnf :: GetJourneyExecutionActivityMetricsResponse -> ()
rnf GetJourneyExecutionActivityMetricsResponse' {Int
JourneyExecutionActivityMetricsResponse
journeyExecutionActivityMetricsResponse :: JourneyExecutionActivityMetricsResponse
httpStatus :: Int
$sel:journeyExecutionActivityMetricsResponse:GetJourneyExecutionActivityMetricsResponse' :: GetJourneyExecutionActivityMetricsResponse
-> JourneyExecutionActivityMetricsResponse
$sel:httpStatus:GetJourneyExecutionActivityMetricsResponse' :: GetJourneyExecutionActivityMetricsResponse -> Int
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf JourneyExecutionActivityMetricsResponse
journeyExecutionActivityMetricsResponse