{-# 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.QuickSight.UpdateDashboardPublishedVersion
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Updates the published version of a dashboard.
module Amazonka.QuickSight.UpdateDashboardPublishedVersion
  ( -- * Creating a Request
    UpdateDashboardPublishedVersion (..),
    newUpdateDashboardPublishedVersion,

    -- * Request Lenses
    updateDashboardPublishedVersion_awsAccountId,
    updateDashboardPublishedVersion_dashboardId,
    updateDashboardPublishedVersion_versionNumber,

    -- * Destructuring the Response
    UpdateDashboardPublishedVersionResponse (..),
    newUpdateDashboardPublishedVersionResponse,

    -- * Response Lenses
    updateDashboardPublishedVersionResponse_dashboardArn,
    updateDashboardPublishedVersionResponse_dashboardId,
    updateDashboardPublishedVersionResponse_requestId,
    updateDashboardPublishedVersionResponse_status,
  )
where

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
import Amazonka.QuickSight.Types
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response

-- | /See:/ 'newUpdateDashboardPublishedVersion' smart constructor.
data UpdateDashboardPublishedVersion = UpdateDashboardPublishedVersion'
  { -- | The ID of the Amazon Web Services account that contains the dashboard
    -- that you\'re updating.
    UpdateDashboardPublishedVersion -> Text
awsAccountId :: Prelude.Text,
    -- | The ID for the dashboard.
    UpdateDashboardPublishedVersion -> Text
dashboardId :: Prelude.Text,
    -- | The version number of the dashboard.
    UpdateDashboardPublishedVersion -> Natural
versionNumber :: Prelude.Natural
  }
  deriving (UpdateDashboardPublishedVersion
-> UpdateDashboardPublishedVersion -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateDashboardPublishedVersion
-> UpdateDashboardPublishedVersion -> Bool
$c/= :: UpdateDashboardPublishedVersion
-> UpdateDashboardPublishedVersion -> Bool
== :: UpdateDashboardPublishedVersion
-> UpdateDashboardPublishedVersion -> Bool
$c== :: UpdateDashboardPublishedVersion
-> UpdateDashboardPublishedVersion -> Bool
Prelude.Eq, ReadPrec [UpdateDashboardPublishedVersion]
ReadPrec UpdateDashboardPublishedVersion
Int -> ReadS UpdateDashboardPublishedVersion
ReadS [UpdateDashboardPublishedVersion]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateDashboardPublishedVersion]
$creadListPrec :: ReadPrec [UpdateDashboardPublishedVersion]
readPrec :: ReadPrec UpdateDashboardPublishedVersion
$creadPrec :: ReadPrec UpdateDashboardPublishedVersion
readList :: ReadS [UpdateDashboardPublishedVersion]
$creadList :: ReadS [UpdateDashboardPublishedVersion]
readsPrec :: Int -> ReadS UpdateDashboardPublishedVersion
$creadsPrec :: Int -> ReadS UpdateDashboardPublishedVersion
Prelude.Read, Int -> UpdateDashboardPublishedVersion -> ShowS
[UpdateDashboardPublishedVersion] -> ShowS
UpdateDashboardPublishedVersion -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateDashboardPublishedVersion] -> ShowS
$cshowList :: [UpdateDashboardPublishedVersion] -> ShowS
show :: UpdateDashboardPublishedVersion -> String
$cshow :: UpdateDashboardPublishedVersion -> String
showsPrec :: Int -> UpdateDashboardPublishedVersion -> ShowS
$cshowsPrec :: Int -> UpdateDashboardPublishedVersion -> ShowS
Prelude.Show, forall x.
Rep UpdateDashboardPublishedVersion x
-> UpdateDashboardPublishedVersion
forall x.
UpdateDashboardPublishedVersion
-> Rep UpdateDashboardPublishedVersion x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep UpdateDashboardPublishedVersion x
-> UpdateDashboardPublishedVersion
$cfrom :: forall x.
UpdateDashboardPublishedVersion
-> Rep UpdateDashboardPublishedVersion x
Prelude.Generic)

-- |
-- Create a value of 'UpdateDashboardPublishedVersion' 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:
--
-- 'awsAccountId', 'updateDashboardPublishedVersion_awsAccountId' - The ID of the Amazon Web Services account that contains the dashboard
-- that you\'re updating.
--
-- 'dashboardId', 'updateDashboardPublishedVersion_dashboardId' - The ID for the dashboard.
--
-- 'versionNumber', 'updateDashboardPublishedVersion_versionNumber' - The version number of the dashboard.
newUpdateDashboardPublishedVersion ::
  -- | 'awsAccountId'
  Prelude.Text ->
  -- | 'dashboardId'
  Prelude.Text ->
  -- | 'versionNumber'
  Prelude.Natural ->
  UpdateDashboardPublishedVersion
newUpdateDashboardPublishedVersion :: Text -> Text -> Natural -> UpdateDashboardPublishedVersion
newUpdateDashboardPublishedVersion
  Text
pAwsAccountId_
  Text
pDashboardId_
  Natural
pVersionNumber_ =
    UpdateDashboardPublishedVersion'
      { $sel:awsAccountId:UpdateDashboardPublishedVersion' :: Text
awsAccountId =
          Text
pAwsAccountId_,
        $sel:dashboardId:UpdateDashboardPublishedVersion' :: Text
dashboardId = Text
pDashboardId_,
        $sel:versionNumber:UpdateDashboardPublishedVersion' :: Natural
versionNumber = Natural
pVersionNumber_
      }

-- | The ID of the Amazon Web Services account that contains the dashboard
-- that you\'re updating.
updateDashboardPublishedVersion_awsAccountId :: Lens.Lens' UpdateDashboardPublishedVersion Prelude.Text
updateDashboardPublishedVersion_awsAccountId :: Lens' UpdateDashboardPublishedVersion Text
updateDashboardPublishedVersion_awsAccountId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateDashboardPublishedVersion' {Text
awsAccountId :: Text
$sel:awsAccountId:UpdateDashboardPublishedVersion' :: UpdateDashboardPublishedVersion -> Text
awsAccountId} -> Text
awsAccountId) (\s :: UpdateDashboardPublishedVersion
s@UpdateDashboardPublishedVersion' {} Text
a -> UpdateDashboardPublishedVersion
s {$sel:awsAccountId:UpdateDashboardPublishedVersion' :: Text
awsAccountId = Text
a} :: UpdateDashboardPublishedVersion)

-- | The ID for the dashboard.
updateDashboardPublishedVersion_dashboardId :: Lens.Lens' UpdateDashboardPublishedVersion Prelude.Text
updateDashboardPublishedVersion_dashboardId :: Lens' UpdateDashboardPublishedVersion Text
updateDashboardPublishedVersion_dashboardId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateDashboardPublishedVersion' {Text
dashboardId :: Text
$sel:dashboardId:UpdateDashboardPublishedVersion' :: UpdateDashboardPublishedVersion -> Text
dashboardId} -> Text
dashboardId) (\s :: UpdateDashboardPublishedVersion
s@UpdateDashboardPublishedVersion' {} Text
a -> UpdateDashboardPublishedVersion
s {$sel:dashboardId:UpdateDashboardPublishedVersion' :: Text
dashboardId = Text
a} :: UpdateDashboardPublishedVersion)

-- | The version number of the dashboard.
updateDashboardPublishedVersion_versionNumber :: Lens.Lens' UpdateDashboardPublishedVersion Prelude.Natural
updateDashboardPublishedVersion_versionNumber :: Lens' UpdateDashboardPublishedVersion Natural
updateDashboardPublishedVersion_versionNumber = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateDashboardPublishedVersion' {Natural
versionNumber :: Natural
$sel:versionNumber:UpdateDashboardPublishedVersion' :: UpdateDashboardPublishedVersion -> Natural
versionNumber} -> Natural
versionNumber) (\s :: UpdateDashboardPublishedVersion
s@UpdateDashboardPublishedVersion' {} Natural
a -> UpdateDashboardPublishedVersion
s {$sel:versionNumber:UpdateDashboardPublishedVersion' :: Natural
versionNumber = Natural
a} :: UpdateDashboardPublishedVersion)

instance
  Core.AWSRequest
    UpdateDashboardPublishedVersion
  where
  type
    AWSResponse UpdateDashboardPublishedVersion =
      UpdateDashboardPublishedVersionResponse
  request :: (Service -> Service)
-> UpdateDashboardPublishedVersion
-> Request UpdateDashboardPublishedVersion
request Service -> Service
overrides =
    forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.putJSON (Service -> Service
overrides Service
defaultService)
  response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy UpdateDashboardPublishedVersion
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse (AWSResponse UpdateDashboardPublishedVersion)))
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 Text
-> Maybe Text
-> Maybe Text
-> Int
-> UpdateDashboardPublishedVersionResponse
UpdateDashboardPublishedVersionResponse'
            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
"DashboardArn")
            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
"DashboardId")
            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
"RequestId")
            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
    UpdateDashboardPublishedVersion
  where
  hashWithSalt :: Int -> UpdateDashboardPublishedVersion -> Int
hashWithSalt
    Int
_salt
    UpdateDashboardPublishedVersion' {Natural
Text
versionNumber :: Natural
dashboardId :: Text
awsAccountId :: Text
$sel:versionNumber:UpdateDashboardPublishedVersion' :: UpdateDashboardPublishedVersion -> Natural
$sel:dashboardId:UpdateDashboardPublishedVersion' :: UpdateDashboardPublishedVersion -> Text
$sel:awsAccountId:UpdateDashboardPublishedVersion' :: UpdateDashboardPublishedVersion -> Text
..} =
      Int
_salt
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
awsAccountId
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
dashboardId
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Natural
versionNumber

instance
  Prelude.NFData
    UpdateDashboardPublishedVersion
  where
  rnf :: UpdateDashboardPublishedVersion -> ()
rnf UpdateDashboardPublishedVersion' {Natural
Text
versionNumber :: Natural
dashboardId :: Text
awsAccountId :: Text
$sel:versionNumber:UpdateDashboardPublishedVersion' :: UpdateDashboardPublishedVersion -> Natural
$sel:dashboardId:UpdateDashboardPublishedVersion' :: UpdateDashboardPublishedVersion -> Text
$sel:awsAccountId:UpdateDashboardPublishedVersion' :: UpdateDashboardPublishedVersion -> Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Text
awsAccountId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
dashboardId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Natural
versionNumber

instance
  Data.ToHeaders
    UpdateDashboardPublishedVersion
  where
  toHeaders :: UpdateDashboardPublishedVersion -> 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.0" ::
                          Prelude.ByteString
                      )
          ]
      )

instance Data.ToJSON UpdateDashboardPublishedVersion where
  toJSON :: UpdateDashboardPublishedVersion -> Value
toJSON = forall a b. a -> b -> a
Prelude.const (Object -> Value
Data.Object forall a. Monoid a => a
Prelude.mempty)

instance Data.ToPath UpdateDashboardPublishedVersion where
  toPath :: UpdateDashboardPublishedVersion -> ByteString
toPath UpdateDashboardPublishedVersion' {Natural
Text
versionNumber :: Natural
dashboardId :: Text
awsAccountId :: Text
$sel:versionNumber:UpdateDashboardPublishedVersion' :: UpdateDashboardPublishedVersion -> Natural
$sel:dashboardId:UpdateDashboardPublishedVersion' :: UpdateDashboardPublishedVersion -> Text
$sel:awsAccountId:UpdateDashboardPublishedVersion' :: UpdateDashboardPublishedVersion -> Text
..} =
    forall a. Monoid a => [a] -> a
Prelude.mconcat
      [ ByteString
"/accounts/",
        forall a. ToByteString a => a -> ByteString
Data.toBS Text
awsAccountId,
        ByteString
"/dashboards/",
        forall a. ToByteString a => a -> ByteString
Data.toBS Text
dashboardId,
        ByteString
"/versions/",
        forall a. ToByteString a => a -> ByteString
Data.toBS Natural
versionNumber
      ]

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

-- | /See:/ 'newUpdateDashboardPublishedVersionResponse' smart constructor.
data UpdateDashboardPublishedVersionResponse = UpdateDashboardPublishedVersionResponse'
  { -- | The Amazon Resource Name (ARN) of the dashboard.
    UpdateDashboardPublishedVersionResponse -> Maybe Text
dashboardArn :: Prelude.Maybe Prelude.Text,
    -- | The ID for the dashboard.
    UpdateDashboardPublishedVersionResponse -> Maybe Text
dashboardId :: Prelude.Maybe Prelude.Text,
    -- | The Amazon Web Services request ID for this operation.
    UpdateDashboardPublishedVersionResponse -> Maybe Text
requestId :: Prelude.Maybe Prelude.Text,
    -- | The HTTP status of the request.
    UpdateDashboardPublishedVersionResponse -> Int
status :: Prelude.Int
  }
  deriving (UpdateDashboardPublishedVersionResponse
-> UpdateDashboardPublishedVersionResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateDashboardPublishedVersionResponse
-> UpdateDashboardPublishedVersionResponse -> Bool
$c/= :: UpdateDashboardPublishedVersionResponse
-> UpdateDashboardPublishedVersionResponse -> Bool
== :: UpdateDashboardPublishedVersionResponse
-> UpdateDashboardPublishedVersionResponse -> Bool
$c== :: UpdateDashboardPublishedVersionResponse
-> UpdateDashboardPublishedVersionResponse -> Bool
Prelude.Eq, ReadPrec [UpdateDashboardPublishedVersionResponse]
ReadPrec UpdateDashboardPublishedVersionResponse
Int -> ReadS UpdateDashboardPublishedVersionResponse
ReadS [UpdateDashboardPublishedVersionResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateDashboardPublishedVersionResponse]
$creadListPrec :: ReadPrec [UpdateDashboardPublishedVersionResponse]
readPrec :: ReadPrec UpdateDashboardPublishedVersionResponse
$creadPrec :: ReadPrec UpdateDashboardPublishedVersionResponse
readList :: ReadS [UpdateDashboardPublishedVersionResponse]
$creadList :: ReadS [UpdateDashboardPublishedVersionResponse]
readsPrec :: Int -> ReadS UpdateDashboardPublishedVersionResponse
$creadsPrec :: Int -> ReadS UpdateDashboardPublishedVersionResponse
Prelude.Read, Int -> UpdateDashboardPublishedVersionResponse -> ShowS
[UpdateDashboardPublishedVersionResponse] -> ShowS
UpdateDashboardPublishedVersionResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateDashboardPublishedVersionResponse] -> ShowS
$cshowList :: [UpdateDashboardPublishedVersionResponse] -> ShowS
show :: UpdateDashboardPublishedVersionResponse -> String
$cshow :: UpdateDashboardPublishedVersionResponse -> String
showsPrec :: Int -> UpdateDashboardPublishedVersionResponse -> ShowS
$cshowsPrec :: Int -> UpdateDashboardPublishedVersionResponse -> ShowS
Prelude.Show, forall x.
Rep UpdateDashboardPublishedVersionResponse x
-> UpdateDashboardPublishedVersionResponse
forall x.
UpdateDashboardPublishedVersionResponse
-> Rep UpdateDashboardPublishedVersionResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep UpdateDashboardPublishedVersionResponse x
-> UpdateDashboardPublishedVersionResponse
$cfrom :: forall x.
UpdateDashboardPublishedVersionResponse
-> Rep UpdateDashboardPublishedVersionResponse x
Prelude.Generic)

-- |
-- Create a value of 'UpdateDashboardPublishedVersionResponse' 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:
--
-- 'dashboardArn', 'updateDashboardPublishedVersionResponse_dashboardArn' - The Amazon Resource Name (ARN) of the dashboard.
--
-- 'dashboardId', 'updateDashboardPublishedVersionResponse_dashboardId' - The ID for the dashboard.
--
-- 'requestId', 'updateDashboardPublishedVersionResponse_requestId' - The Amazon Web Services request ID for this operation.
--
-- 'status', 'updateDashboardPublishedVersionResponse_status' - The HTTP status of the request.
newUpdateDashboardPublishedVersionResponse ::
  -- | 'status'
  Prelude.Int ->
  UpdateDashboardPublishedVersionResponse
newUpdateDashboardPublishedVersionResponse :: Int -> UpdateDashboardPublishedVersionResponse
newUpdateDashboardPublishedVersionResponse Int
pStatus_ =
  UpdateDashboardPublishedVersionResponse'
    { $sel:dashboardArn:UpdateDashboardPublishedVersionResponse' :: Maybe Text
dashboardArn =
        forall a. Maybe a
Prelude.Nothing,
      $sel:dashboardId:UpdateDashboardPublishedVersionResponse' :: Maybe Text
dashboardId = forall a. Maybe a
Prelude.Nothing,
      $sel:requestId:UpdateDashboardPublishedVersionResponse' :: Maybe Text
requestId = forall a. Maybe a
Prelude.Nothing,
      $sel:status:UpdateDashboardPublishedVersionResponse' :: Int
status = Int
pStatus_
    }

-- | The Amazon Resource Name (ARN) of the dashboard.
updateDashboardPublishedVersionResponse_dashboardArn :: Lens.Lens' UpdateDashboardPublishedVersionResponse (Prelude.Maybe Prelude.Text)
updateDashboardPublishedVersionResponse_dashboardArn :: Lens' UpdateDashboardPublishedVersionResponse (Maybe Text)
updateDashboardPublishedVersionResponse_dashboardArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateDashboardPublishedVersionResponse' {Maybe Text
dashboardArn :: Maybe Text
$sel:dashboardArn:UpdateDashboardPublishedVersionResponse' :: UpdateDashboardPublishedVersionResponse -> Maybe Text
dashboardArn} -> Maybe Text
dashboardArn) (\s :: UpdateDashboardPublishedVersionResponse
s@UpdateDashboardPublishedVersionResponse' {} Maybe Text
a -> UpdateDashboardPublishedVersionResponse
s {$sel:dashboardArn:UpdateDashboardPublishedVersionResponse' :: Maybe Text
dashboardArn = Maybe Text
a} :: UpdateDashboardPublishedVersionResponse)

-- | The ID for the dashboard.
updateDashboardPublishedVersionResponse_dashboardId :: Lens.Lens' UpdateDashboardPublishedVersionResponse (Prelude.Maybe Prelude.Text)
updateDashboardPublishedVersionResponse_dashboardId :: Lens' UpdateDashboardPublishedVersionResponse (Maybe Text)
updateDashboardPublishedVersionResponse_dashboardId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateDashboardPublishedVersionResponse' {Maybe Text
dashboardId :: Maybe Text
$sel:dashboardId:UpdateDashboardPublishedVersionResponse' :: UpdateDashboardPublishedVersionResponse -> Maybe Text
dashboardId} -> Maybe Text
dashboardId) (\s :: UpdateDashboardPublishedVersionResponse
s@UpdateDashboardPublishedVersionResponse' {} Maybe Text
a -> UpdateDashboardPublishedVersionResponse
s {$sel:dashboardId:UpdateDashboardPublishedVersionResponse' :: Maybe Text
dashboardId = Maybe Text
a} :: UpdateDashboardPublishedVersionResponse)

-- | The Amazon Web Services request ID for this operation.
updateDashboardPublishedVersionResponse_requestId :: Lens.Lens' UpdateDashboardPublishedVersionResponse (Prelude.Maybe Prelude.Text)
updateDashboardPublishedVersionResponse_requestId :: Lens' UpdateDashboardPublishedVersionResponse (Maybe Text)
updateDashboardPublishedVersionResponse_requestId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateDashboardPublishedVersionResponse' {Maybe Text
requestId :: Maybe Text
$sel:requestId:UpdateDashboardPublishedVersionResponse' :: UpdateDashboardPublishedVersionResponse -> Maybe Text
requestId} -> Maybe Text
requestId) (\s :: UpdateDashboardPublishedVersionResponse
s@UpdateDashboardPublishedVersionResponse' {} Maybe Text
a -> UpdateDashboardPublishedVersionResponse
s {$sel:requestId:UpdateDashboardPublishedVersionResponse' :: Maybe Text
requestId = Maybe Text
a} :: UpdateDashboardPublishedVersionResponse)

-- | The HTTP status of the request.
updateDashboardPublishedVersionResponse_status :: Lens.Lens' UpdateDashboardPublishedVersionResponse Prelude.Int
updateDashboardPublishedVersionResponse_status :: Lens' UpdateDashboardPublishedVersionResponse Int
updateDashboardPublishedVersionResponse_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateDashboardPublishedVersionResponse' {Int
status :: Int
$sel:status:UpdateDashboardPublishedVersionResponse' :: UpdateDashboardPublishedVersionResponse -> Int
status} -> Int
status) (\s :: UpdateDashboardPublishedVersionResponse
s@UpdateDashboardPublishedVersionResponse' {} Int
a -> UpdateDashboardPublishedVersionResponse
s {$sel:status:UpdateDashboardPublishedVersionResponse' :: Int
status = Int
a} :: UpdateDashboardPublishedVersionResponse)

instance
  Prelude.NFData
    UpdateDashboardPublishedVersionResponse
  where
  rnf :: UpdateDashboardPublishedVersionResponse -> ()
rnf UpdateDashboardPublishedVersionResponse' {Int
Maybe Text
status :: Int
requestId :: Maybe Text
dashboardId :: Maybe Text
dashboardArn :: Maybe Text
$sel:status:UpdateDashboardPublishedVersionResponse' :: UpdateDashboardPublishedVersionResponse -> Int
$sel:requestId:UpdateDashboardPublishedVersionResponse' :: UpdateDashboardPublishedVersionResponse -> Maybe Text
$sel:dashboardId:UpdateDashboardPublishedVersionResponse' :: UpdateDashboardPublishedVersionResponse -> Maybe Text
$sel:dashboardArn:UpdateDashboardPublishedVersionResponse' :: UpdateDashboardPublishedVersionResponse -> Maybe Text
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
dashboardArn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
dashboardId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
requestId
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
status