{-# 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.ServiceQuotas.GetServiceQuotaIncreaseRequestFromTemplate
-- Copyright   : (c) 2013-2021 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Retrieves information about the specified quota increase request in your
-- quota request template.
module Amazonka.ServiceQuotas.GetServiceQuotaIncreaseRequestFromTemplate
  ( -- * Creating a Request
    GetServiceQuotaIncreaseRequestFromTemplate (..),
    newGetServiceQuotaIncreaseRequestFromTemplate,

    -- * Request Lenses
    getServiceQuotaIncreaseRequestFromTemplate_serviceCode,
    getServiceQuotaIncreaseRequestFromTemplate_quotaCode,
    getServiceQuotaIncreaseRequestFromTemplate_awsRegion,

    -- * Destructuring the Response
    GetServiceQuotaIncreaseRequestFromTemplateResponse (..),
    newGetServiceQuotaIncreaseRequestFromTemplateResponse,

    -- * Response Lenses
    getServiceQuotaIncreaseRequestFromTemplateResponse_serviceQuotaIncreaseRequestInTemplate,
    getServiceQuotaIncreaseRequestFromTemplateResponse_httpStatus,
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
import Amazonka.ServiceQuotas.Types

-- | /See:/ 'newGetServiceQuotaIncreaseRequestFromTemplate' smart constructor.
data GetServiceQuotaIncreaseRequestFromTemplate = GetServiceQuotaIncreaseRequestFromTemplate'
  { -- | The service identifier.
    GetServiceQuotaIncreaseRequestFromTemplate -> Text
serviceCode :: Prelude.Text,
    -- | The quota identifier.
    GetServiceQuotaIncreaseRequestFromTemplate -> Text
quotaCode :: Prelude.Text,
    -- | The AWS Region.
    GetServiceQuotaIncreaseRequestFromTemplate -> Text
awsRegion :: Prelude.Text
  }
  deriving (GetServiceQuotaIncreaseRequestFromTemplate
-> GetServiceQuotaIncreaseRequestFromTemplate -> Bool
(GetServiceQuotaIncreaseRequestFromTemplate
 -> GetServiceQuotaIncreaseRequestFromTemplate -> Bool)
-> (GetServiceQuotaIncreaseRequestFromTemplate
    -> GetServiceQuotaIncreaseRequestFromTemplate -> Bool)
-> Eq GetServiceQuotaIncreaseRequestFromTemplate
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetServiceQuotaIncreaseRequestFromTemplate
-> GetServiceQuotaIncreaseRequestFromTemplate -> Bool
$c/= :: GetServiceQuotaIncreaseRequestFromTemplate
-> GetServiceQuotaIncreaseRequestFromTemplate -> Bool
== :: GetServiceQuotaIncreaseRequestFromTemplate
-> GetServiceQuotaIncreaseRequestFromTemplate -> Bool
$c== :: GetServiceQuotaIncreaseRequestFromTemplate
-> GetServiceQuotaIncreaseRequestFromTemplate -> Bool
Prelude.Eq, ReadPrec [GetServiceQuotaIncreaseRequestFromTemplate]
ReadPrec GetServiceQuotaIncreaseRequestFromTemplate
Int -> ReadS GetServiceQuotaIncreaseRequestFromTemplate
ReadS [GetServiceQuotaIncreaseRequestFromTemplate]
(Int -> ReadS GetServiceQuotaIncreaseRequestFromTemplate)
-> ReadS [GetServiceQuotaIncreaseRequestFromTemplate]
-> ReadPrec GetServiceQuotaIncreaseRequestFromTemplate
-> ReadPrec [GetServiceQuotaIncreaseRequestFromTemplate]
-> Read GetServiceQuotaIncreaseRequestFromTemplate
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetServiceQuotaIncreaseRequestFromTemplate]
$creadListPrec :: ReadPrec [GetServiceQuotaIncreaseRequestFromTemplate]
readPrec :: ReadPrec GetServiceQuotaIncreaseRequestFromTemplate
$creadPrec :: ReadPrec GetServiceQuotaIncreaseRequestFromTemplate
readList :: ReadS [GetServiceQuotaIncreaseRequestFromTemplate]
$creadList :: ReadS [GetServiceQuotaIncreaseRequestFromTemplate]
readsPrec :: Int -> ReadS GetServiceQuotaIncreaseRequestFromTemplate
$creadsPrec :: Int -> ReadS GetServiceQuotaIncreaseRequestFromTemplate
Prelude.Read, Int -> GetServiceQuotaIncreaseRequestFromTemplate -> ShowS
[GetServiceQuotaIncreaseRequestFromTemplate] -> ShowS
GetServiceQuotaIncreaseRequestFromTemplate -> String
(Int -> GetServiceQuotaIncreaseRequestFromTemplate -> ShowS)
-> (GetServiceQuotaIncreaseRequestFromTemplate -> String)
-> ([GetServiceQuotaIncreaseRequestFromTemplate] -> ShowS)
-> Show GetServiceQuotaIncreaseRequestFromTemplate
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetServiceQuotaIncreaseRequestFromTemplate] -> ShowS
$cshowList :: [GetServiceQuotaIncreaseRequestFromTemplate] -> ShowS
show :: GetServiceQuotaIncreaseRequestFromTemplate -> String
$cshow :: GetServiceQuotaIncreaseRequestFromTemplate -> String
showsPrec :: Int -> GetServiceQuotaIncreaseRequestFromTemplate -> ShowS
$cshowsPrec :: Int -> GetServiceQuotaIncreaseRequestFromTemplate -> ShowS
Prelude.Show, (forall x.
 GetServiceQuotaIncreaseRequestFromTemplate
 -> Rep GetServiceQuotaIncreaseRequestFromTemplate x)
-> (forall x.
    Rep GetServiceQuotaIncreaseRequestFromTemplate x
    -> GetServiceQuotaIncreaseRequestFromTemplate)
-> Generic GetServiceQuotaIncreaseRequestFromTemplate
forall x.
Rep GetServiceQuotaIncreaseRequestFromTemplate x
-> GetServiceQuotaIncreaseRequestFromTemplate
forall x.
GetServiceQuotaIncreaseRequestFromTemplate
-> Rep GetServiceQuotaIncreaseRequestFromTemplate x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetServiceQuotaIncreaseRequestFromTemplate x
-> GetServiceQuotaIncreaseRequestFromTemplate
$cfrom :: forall x.
GetServiceQuotaIncreaseRequestFromTemplate
-> Rep GetServiceQuotaIncreaseRequestFromTemplate x
Prelude.Generic)

-- |
-- Create a value of 'GetServiceQuotaIncreaseRequestFromTemplate' 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:
--
-- 'serviceCode', 'getServiceQuotaIncreaseRequestFromTemplate_serviceCode' - The service identifier.
--
-- 'quotaCode', 'getServiceQuotaIncreaseRequestFromTemplate_quotaCode' - The quota identifier.
--
-- 'awsRegion', 'getServiceQuotaIncreaseRequestFromTemplate_awsRegion' - The AWS Region.
newGetServiceQuotaIncreaseRequestFromTemplate ::
  -- | 'serviceCode'
  Prelude.Text ->
  -- | 'quotaCode'
  Prelude.Text ->
  -- | 'awsRegion'
  Prelude.Text ->
  GetServiceQuotaIncreaseRequestFromTemplate
newGetServiceQuotaIncreaseRequestFromTemplate :: Text -> Text -> Text -> GetServiceQuotaIncreaseRequestFromTemplate
newGetServiceQuotaIncreaseRequestFromTemplate
  Text
pServiceCode_
  Text
pQuotaCode_
  Text
pAwsRegion_ =
    GetServiceQuotaIncreaseRequestFromTemplate' :: Text -> Text -> Text -> GetServiceQuotaIncreaseRequestFromTemplate
GetServiceQuotaIncreaseRequestFromTemplate'
      { $sel:serviceCode:GetServiceQuotaIncreaseRequestFromTemplate' :: Text
serviceCode =
          Text
pServiceCode_,
        $sel:quotaCode:GetServiceQuotaIncreaseRequestFromTemplate' :: Text
quotaCode = Text
pQuotaCode_,
        $sel:awsRegion:GetServiceQuotaIncreaseRequestFromTemplate' :: Text
awsRegion = Text
pAwsRegion_
      }

-- | The service identifier.
getServiceQuotaIncreaseRequestFromTemplate_serviceCode :: Lens.Lens' GetServiceQuotaIncreaseRequestFromTemplate Prelude.Text
getServiceQuotaIncreaseRequestFromTemplate_serviceCode :: (Text -> f Text)
-> GetServiceQuotaIncreaseRequestFromTemplate
-> f GetServiceQuotaIncreaseRequestFromTemplate
getServiceQuotaIncreaseRequestFromTemplate_serviceCode = (GetServiceQuotaIncreaseRequestFromTemplate -> Text)
-> (GetServiceQuotaIncreaseRequestFromTemplate
    -> Text -> GetServiceQuotaIncreaseRequestFromTemplate)
-> Lens
     GetServiceQuotaIncreaseRequestFromTemplate
     GetServiceQuotaIncreaseRequestFromTemplate
     Text
     Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetServiceQuotaIncreaseRequestFromTemplate' {Text
serviceCode :: Text
$sel:serviceCode:GetServiceQuotaIncreaseRequestFromTemplate' :: GetServiceQuotaIncreaseRequestFromTemplate -> Text
serviceCode} -> Text
serviceCode) (\s :: GetServiceQuotaIncreaseRequestFromTemplate
s@GetServiceQuotaIncreaseRequestFromTemplate' {} Text
a -> GetServiceQuotaIncreaseRequestFromTemplate
s {$sel:serviceCode:GetServiceQuotaIncreaseRequestFromTemplate' :: Text
serviceCode = Text
a} :: GetServiceQuotaIncreaseRequestFromTemplate)

-- | The quota identifier.
getServiceQuotaIncreaseRequestFromTemplate_quotaCode :: Lens.Lens' GetServiceQuotaIncreaseRequestFromTemplate Prelude.Text
getServiceQuotaIncreaseRequestFromTemplate_quotaCode :: (Text -> f Text)
-> GetServiceQuotaIncreaseRequestFromTemplate
-> f GetServiceQuotaIncreaseRequestFromTemplate
getServiceQuotaIncreaseRequestFromTemplate_quotaCode = (GetServiceQuotaIncreaseRequestFromTemplate -> Text)
-> (GetServiceQuotaIncreaseRequestFromTemplate
    -> Text -> GetServiceQuotaIncreaseRequestFromTemplate)
-> Lens
     GetServiceQuotaIncreaseRequestFromTemplate
     GetServiceQuotaIncreaseRequestFromTemplate
     Text
     Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetServiceQuotaIncreaseRequestFromTemplate' {Text
quotaCode :: Text
$sel:quotaCode:GetServiceQuotaIncreaseRequestFromTemplate' :: GetServiceQuotaIncreaseRequestFromTemplate -> Text
quotaCode} -> Text
quotaCode) (\s :: GetServiceQuotaIncreaseRequestFromTemplate
s@GetServiceQuotaIncreaseRequestFromTemplate' {} Text
a -> GetServiceQuotaIncreaseRequestFromTemplate
s {$sel:quotaCode:GetServiceQuotaIncreaseRequestFromTemplate' :: Text
quotaCode = Text
a} :: GetServiceQuotaIncreaseRequestFromTemplate)

-- | The AWS Region.
getServiceQuotaIncreaseRequestFromTemplate_awsRegion :: Lens.Lens' GetServiceQuotaIncreaseRequestFromTemplate Prelude.Text
getServiceQuotaIncreaseRequestFromTemplate_awsRegion :: (Text -> f Text)
-> GetServiceQuotaIncreaseRequestFromTemplate
-> f GetServiceQuotaIncreaseRequestFromTemplate
getServiceQuotaIncreaseRequestFromTemplate_awsRegion = (GetServiceQuotaIncreaseRequestFromTemplate -> Text)
-> (GetServiceQuotaIncreaseRequestFromTemplate
    -> Text -> GetServiceQuotaIncreaseRequestFromTemplate)
-> Lens
     GetServiceQuotaIncreaseRequestFromTemplate
     GetServiceQuotaIncreaseRequestFromTemplate
     Text
     Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetServiceQuotaIncreaseRequestFromTemplate' {Text
awsRegion :: Text
$sel:awsRegion:GetServiceQuotaIncreaseRequestFromTemplate' :: GetServiceQuotaIncreaseRequestFromTemplate -> Text
awsRegion} -> Text
awsRegion) (\s :: GetServiceQuotaIncreaseRequestFromTemplate
s@GetServiceQuotaIncreaseRequestFromTemplate' {} Text
a -> GetServiceQuotaIncreaseRequestFromTemplate
s {$sel:awsRegion:GetServiceQuotaIncreaseRequestFromTemplate' :: Text
awsRegion = Text
a} :: GetServiceQuotaIncreaseRequestFromTemplate)

instance
  Core.AWSRequest
    GetServiceQuotaIncreaseRequestFromTemplate
  where
  type
    AWSResponse
      GetServiceQuotaIncreaseRequestFromTemplate =
      GetServiceQuotaIncreaseRequestFromTemplateResponse
  request :: GetServiceQuotaIncreaseRequestFromTemplate
-> Request GetServiceQuotaIncreaseRequestFromTemplate
request = Service
-> GetServiceQuotaIncreaseRequestFromTemplate
-> Request GetServiceQuotaIncreaseRequestFromTemplate
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON Service
defaultService
  response :: Logger
-> Service
-> Proxy GetServiceQuotaIncreaseRequestFromTemplate
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse
           (AWSResponse GetServiceQuotaIncreaseRequestFromTemplate)))
response =
    (Int
 -> ResponseHeaders
 -> Object
 -> Either
      String (AWSResponse GetServiceQuotaIncreaseRequestFromTemplate))
-> Logger
-> Service
-> Proxy GetServiceQuotaIncreaseRequestFromTemplate
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse
           (AWSResponse GetServiceQuotaIncreaseRequestFromTemplate)))
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> Logger
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
      ( \Int
s ResponseHeaders
h Object
x ->
          Maybe ServiceQuotaIncreaseRequestInTemplate
-> Int -> GetServiceQuotaIncreaseRequestFromTemplateResponse
GetServiceQuotaIncreaseRequestFromTemplateResponse'
            (Maybe ServiceQuotaIncreaseRequestInTemplate
 -> Int -> GetServiceQuotaIncreaseRequestFromTemplateResponse)
-> Either String (Maybe ServiceQuotaIncreaseRequestInTemplate)
-> Either
     String (Int -> GetServiceQuotaIncreaseRequestFromTemplateResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object
-> Text
-> Either String (Maybe ServiceQuotaIncreaseRequestInTemplate)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"ServiceQuotaIncreaseRequestInTemplate")
              Either
  String (Int -> GetServiceQuotaIncreaseRequestFromTemplateResponse)
-> Either String Int
-> Either String GetServiceQuotaIncreaseRequestFromTemplateResponse
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Int -> Either String Int
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (Int -> Int
forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
      )

instance
  Prelude.Hashable
    GetServiceQuotaIncreaseRequestFromTemplate

instance
  Prelude.NFData
    GetServiceQuotaIncreaseRequestFromTemplate

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

instance
  Core.ToJSON
    GetServiceQuotaIncreaseRequestFromTemplate
  where
  toJSON :: GetServiceQuotaIncreaseRequestFromTemplate -> Value
toJSON
    GetServiceQuotaIncreaseRequestFromTemplate' {Text
awsRegion :: Text
quotaCode :: Text
serviceCode :: Text
$sel:awsRegion:GetServiceQuotaIncreaseRequestFromTemplate' :: GetServiceQuotaIncreaseRequestFromTemplate -> Text
$sel:quotaCode:GetServiceQuotaIncreaseRequestFromTemplate' :: GetServiceQuotaIncreaseRequestFromTemplate -> Text
$sel:serviceCode:GetServiceQuotaIncreaseRequestFromTemplate' :: GetServiceQuotaIncreaseRequestFromTemplate -> Text
..} =
      [Pair] -> Value
Core.object
        ( [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
            [ Pair -> Maybe Pair
forall a. a -> Maybe a
Prelude.Just (Text
"ServiceCode" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..= Text
serviceCode),
              Pair -> Maybe Pair
forall a. a -> Maybe a
Prelude.Just (Text
"QuotaCode" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..= Text
quotaCode),
              Pair -> Maybe Pair
forall a. a -> Maybe a
Prelude.Just (Text
"AwsRegion" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..= Text
awsRegion)
            ]
        )

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

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

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

-- |
-- Create a value of 'GetServiceQuotaIncreaseRequestFromTemplateResponse' 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:
--
-- 'serviceQuotaIncreaseRequestInTemplate', 'getServiceQuotaIncreaseRequestFromTemplateResponse_serviceQuotaIncreaseRequestInTemplate' - Information about the quota increase request.
--
-- 'httpStatus', 'getServiceQuotaIncreaseRequestFromTemplateResponse_httpStatus' - The response's http status code.
newGetServiceQuotaIncreaseRequestFromTemplateResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  GetServiceQuotaIncreaseRequestFromTemplateResponse
newGetServiceQuotaIncreaseRequestFromTemplateResponse :: Int -> GetServiceQuotaIncreaseRequestFromTemplateResponse
newGetServiceQuotaIncreaseRequestFromTemplateResponse
  Int
pHttpStatus_ =
    GetServiceQuotaIncreaseRequestFromTemplateResponse' :: Maybe ServiceQuotaIncreaseRequestInTemplate
-> Int -> GetServiceQuotaIncreaseRequestFromTemplateResponse
GetServiceQuotaIncreaseRequestFromTemplateResponse'
      { $sel:serviceQuotaIncreaseRequestInTemplate:GetServiceQuotaIncreaseRequestFromTemplateResponse' :: Maybe ServiceQuotaIncreaseRequestInTemplate
serviceQuotaIncreaseRequestInTemplate =
          Maybe ServiceQuotaIncreaseRequestInTemplate
forall a. Maybe a
Prelude.Nothing,
        $sel:httpStatus:GetServiceQuotaIncreaseRequestFromTemplateResponse' :: Int
httpStatus =
          Int
pHttpStatus_
      }

-- | Information about the quota increase request.
getServiceQuotaIncreaseRequestFromTemplateResponse_serviceQuotaIncreaseRequestInTemplate :: Lens.Lens' GetServiceQuotaIncreaseRequestFromTemplateResponse (Prelude.Maybe ServiceQuotaIncreaseRequestInTemplate)
getServiceQuotaIncreaseRequestFromTemplateResponse_serviceQuotaIncreaseRequestInTemplate :: (Maybe ServiceQuotaIncreaseRequestInTemplate
 -> f (Maybe ServiceQuotaIncreaseRequestInTemplate))
-> GetServiceQuotaIncreaseRequestFromTemplateResponse
-> f GetServiceQuotaIncreaseRequestFromTemplateResponse
getServiceQuotaIncreaseRequestFromTemplateResponse_serviceQuotaIncreaseRequestInTemplate = (GetServiceQuotaIncreaseRequestFromTemplateResponse
 -> Maybe ServiceQuotaIncreaseRequestInTemplate)
-> (GetServiceQuotaIncreaseRequestFromTemplateResponse
    -> Maybe ServiceQuotaIncreaseRequestInTemplate
    -> GetServiceQuotaIncreaseRequestFromTemplateResponse)
-> Lens
     GetServiceQuotaIncreaseRequestFromTemplateResponse
     GetServiceQuotaIncreaseRequestFromTemplateResponse
     (Maybe ServiceQuotaIncreaseRequestInTemplate)
     (Maybe ServiceQuotaIncreaseRequestInTemplate)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetServiceQuotaIncreaseRequestFromTemplateResponse' {Maybe ServiceQuotaIncreaseRequestInTemplate
serviceQuotaIncreaseRequestInTemplate :: Maybe ServiceQuotaIncreaseRequestInTemplate
$sel:serviceQuotaIncreaseRequestInTemplate:GetServiceQuotaIncreaseRequestFromTemplateResponse' :: GetServiceQuotaIncreaseRequestFromTemplateResponse
-> Maybe ServiceQuotaIncreaseRequestInTemplate
serviceQuotaIncreaseRequestInTemplate} -> Maybe ServiceQuotaIncreaseRequestInTemplate
serviceQuotaIncreaseRequestInTemplate) (\s :: GetServiceQuotaIncreaseRequestFromTemplateResponse
s@GetServiceQuotaIncreaseRequestFromTemplateResponse' {} Maybe ServiceQuotaIncreaseRequestInTemplate
a -> GetServiceQuotaIncreaseRequestFromTemplateResponse
s {$sel:serviceQuotaIncreaseRequestInTemplate:GetServiceQuotaIncreaseRequestFromTemplateResponse' :: Maybe ServiceQuotaIncreaseRequestInTemplate
serviceQuotaIncreaseRequestInTemplate = Maybe ServiceQuotaIncreaseRequestInTemplate
a} :: GetServiceQuotaIncreaseRequestFromTemplateResponse)

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

instance
  Prelude.NFData
    GetServiceQuotaIncreaseRequestFromTemplateResponse