{-# 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 #-}
module Amazonka.CodeCommit.UpdateApprovalRuleTemplateContent
(
UpdateApprovalRuleTemplateContent (..),
newUpdateApprovalRuleTemplateContent,
updateApprovalRuleTemplateContent_existingRuleContentSha256,
updateApprovalRuleTemplateContent_approvalRuleTemplateName,
updateApprovalRuleTemplateContent_newRuleContent,
UpdateApprovalRuleTemplateContentResponse (..),
newUpdateApprovalRuleTemplateContentResponse,
updateApprovalRuleTemplateContentResponse_httpStatus,
updateApprovalRuleTemplateContentResponse_approvalRuleTemplate,
)
where
import Amazonka.CodeCommit.Types
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 qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data UpdateApprovalRuleTemplateContent = UpdateApprovalRuleTemplateContent'
{
UpdateApprovalRuleTemplateContent -> Maybe Text
existingRuleContentSha256 :: Prelude.Maybe Prelude.Text,
UpdateApprovalRuleTemplateContent -> Text
approvalRuleTemplateName :: Prelude.Text,
UpdateApprovalRuleTemplateContent -> Text
newRuleContent' :: Prelude.Text
}
deriving (UpdateApprovalRuleTemplateContent
-> UpdateApprovalRuleTemplateContent -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateApprovalRuleTemplateContent
-> UpdateApprovalRuleTemplateContent -> Bool
$c/= :: UpdateApprovalRuleTemplateContent
-> UpdateApprovalRuleTemplateContent -> Bool
== :: UpdateApprovalRuleTemplateContent
-> UpdateApprovalRuleTemplateContent -> Bool
$c== :: UpdateApprovalRuleTemplateContent
-> UpdateApprovalRuleTemplateContent -> Bool
Prelude.Eq, ReadPrec [UpdateApprovalRuleTemplateContent]
ReadPrec UpdateApprovalRuleTemplateContent
Int -> ReadS UpdateApprovalRuleTemplateContent
ReadS [UpdateApprovalRuleTemplateContent]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateApprovalRuleTemplateContent]
$creadListPrec :: ReadPrec [UpdateApprovalRuleTemplateContent]
readPrec :: ReadPrec UpdateApprovalRuleTemplateContent
$creadPrec :: ReadPrec UpdateApprovalRuleTemplateContent
readList :: ReadS [UpdateApprovalRuleTemplateContent]
$creadList :: ReadS [UpdateApprovalRuleTemplateContent]
readsPrec :: Int -> ReadS UpdateApprovalRuleTemplateContent
$creadsPrec :: Int -> ReadS UpdateApprovalRuleTemplateContent
Prelude.Read, Int -> UpdateApprovalRuleTemplateContent -> ShowS
[UpdateApprovalRuleTemplateContent] -> ShowS
UpdateApprovalRuleTemplateContent -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateApprovalRuleTemplateContent] -> ShowS
$cshowList :: [UpdateApprovalRuleTemplateContent] -> ShowS
show :: UpdateApprovalRuleTemplateContent -> String
$cshow :: UpdateApprovalRuleTemplateContent -> String
showsPrec :: Int -> UpdateApprovalRuleTemplateContent -> ShowS
$cshowsPrec :: Int -> UpdateApprovalRuleTemplateContent -> ShowS
Prelude.Show, forall x.
Rep UpdateApprovalRuleTemplateContent x
-> UpdateApprovalRuleTemplateContent
forall x.
UpdateApprovalRuleTemplateContent
-> Rep UpdateApprovalRuleTemplateContent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep UpdateApprovalRuleTemplateContent x
-> UpdateApprovalRuleTemplateContent
$cfrom :: forall x.
UpdateApprovalRuleTemplateContent
-> Rep UpdateApprovalRuleTemplateContent x
Prelude.Generic)
newUpdateApprovalRuleTemplateContent ::
Prelude.Text ->
Prelude.Text ->
UpdateApprovalRuleTemplateContent
newUpdateApprovalRuleTemplateContent :: Text -> Text -> UpdateApprovalRuleTemplateContent
newUpdateApprovalRuleTemplateContent
Text
pApprovalRuleTemplateName_
Text
pNewRuleContent_ =
UpdateApprovalRuleTemplateContent'
{ $sel:existingRuleContentSha256:UpdateApprovalRuleTemplateContent' :: Maybe Text
existingRuleContentSha256 =
forall a. Maybe a
Prelude.Nothing,
$sel:approvalRuleTemplateName:UpdateApprovalRuleTemplateContent' :: Text
approvalRuleTemplateName =
Text
pApprovalRuleTemplateName_,
$sel:newRuleContent':UpdateApprovalRuleTemplateContent' :: Text
newRuleContent' = Text
pNewRuleContent_
}
updateApprovalRuleTemplateContent_existingRuleContentSha256 :: Lens.Lens' UpdateApprovalRuleTemplateContent (Prelude.Maybe Prelude.Text)
updateApprovalRuleTemplateContent_existingRuleContentSha256 :: Lens' UpdateApprovalRuleTemplateContent (Maybe Text)
updateApprovalRuleTemplateContent_existingRuleContentSha256 = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateApprovalRuleTemplateContent' {Maybe Text
existingRuleContentSha256 :: Maybe Text
$sel:existingRuleContentSha256:UpdateApprovalRuleTemplateContent' :: UpdateApprovalRuleTemplateContent -> Maybe Text
existingRuleContentSha256} -> Maybe Text
existingRuleContentSha256) (\s :: UpdateApprovalRuleTemplateContent
s@UpdateApprovalRuleTemplateContent' {} Maybe Text
a -> UpdateApprovalRuleTemplateContent
s {$sel:existingRuleContentSha256:UpdateApprovalRuleTemplateContent' :: Maybe Text
existingRuleContentSha256 = Maybe Text
a} :: UpdateApprovalRuleTemplateContent)
updateApprovalRuleTemplateContent_approvalRuleTemplateName :: Lens.Lens' UpdateApprovalRuleTemplateContent Prelude.Text
updateApprovalRuleTemplateContent_approvalRuleTemplateName :: Lens' UpdateApprovalRuleTemplateContent Text
updateApprovalRuleTemplateContent_approvalRuleTemplateName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateApprovalRuleTemplateContent' {Text
approvalRuleTemplateName :: Text
$sel:approvalRuleTemplateName:UpdateApprovalRuleTemplateContent' :: UpdateApprovalRuleTemplateContent -> Text
approvalRuleTemplateName} -> Text
approvalRuleTemplateName) (\s :: UpdateApprovalRuleTemplateContent
s@UpdateApprovalRuleTemplateContent' {} Text
a -> UpdateApprovalRuleTemplateContent
s {$sel:approvalRuleTemplateName:UpdateApprovalRuleTemplateContent' :: Text
approvalRuleTemplateName = Text
a} :: UpdateApprovalRuleTemplateContent)
updateApprovalRuleTemplateContent_newRuleContent :: Lens.Lens' UpdateApprovalRuleTemplateContent Prelude.Text
updateApprovalRuleTemplateContent_newRuleContent :: Lens' UpdateApprovalRuleTemplateContent Text
updateApprovalRuleTemplateContent_newRuleContent = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateApprovalRuleTemplateContent' {Text
newRuleContent' :: Text
$sel:newRuleContent':UpdateApprovalRuleTemplateContent' :: UpdateApprovalRuleTemplateContent -> Text
newRuleContent'} -> Text
newRuleContent') (\s :: UpdateApprovalRuleTemplateContent
s@UpdateApprovalRuleTemplateContent' {} Text
a -> UpdateApprovalRuleTemplateContent
s {$sel:newRuleContent':UpdateApprovalRuleTemplateContent' :: Text
newRuleContent' = Text
a} :: UpdateApprovalRuleTemplateContent)
instance
Core.AWSRequest
UpdateApprovalRuleTemplateContent
where
type
AWSResponse UpdateApprovalRuleTemplateContent =
UpdateApprovalRuleTemplateContentResponse
request :: (Service -> Service)
-> UpdateApprovalRuleTemplateContent
-> Request UpdateApprovalRuleTemplateContent
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 UpdateApprovalRuleTemplateContent
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse (AWSResponse UpdateApprovalRuleTemplateContent)))
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
-> ApprovalRuleTemplate
-> UpdateApprovalRuleTemplateContentResponse
UpdateApprovalRuleTemplateContentResponse'
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.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"approvalRuleTemplate")
)
instance
Prelude.Hashable
UpdateApprovalRuleTemplateContent
where
hashWithSalt :: Int -> UpdateApprovalRuleTemplateContent -> Int
hashWithSalt
Int
_salt
UpdateApprovalRuleTemplateContent' {Maybe Text
Text
newRuleContent' :: Text
approvalRuleTemplateName :: Text
existingRuleContentSha256 :: Maybe Text
$sel:newRuleContent':UpdateApprovalRuleTemplateContent' :: UpdateApprovalRuleTemplateContent -> Text
$sel:approvalRuleTemplateName:UpdateApprovalRuleTemplateContent' :: UpdateApprovalRuleTemplateContent -> Text
$sel:existingRuleContentSha256:UpdateApprovalRuleTemplateContent' :: UpdateApprovalRuleTemplateContent -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
existingRuleContentSha256
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
approvalRuleTemplateName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
newRuleContent'
instance
Prelude.NFData
UpdateApprovalRuleTemplateContent
where
rnf :: UpdateApprovalRuleTemplateContent -> ()
rnf UpdateApprovalRuleTemplateContent' {Maybe Text
Text
newRuleContent' :: Text
approvalRuleTemplateName :: Text
existingRuleContentSha256 :: Maybe Text
$sel:newRuleContent':UpdateApprovalRuleTemplateContent' :: UpdateApprovalRuleTemplateContent -> Text
$sel:approvalRuleTemplateName:UpdateApprovalRuleTemplateContent' :: UpdateApprovalRuleTemplateContent -> Text
$sel:existingRuleContentSha256:UpdateApprovalRuleTemplateContent' :: UpdateApprovalRuleTemplateContent -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
existingRuleContentSha256
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
approvalRuleTemplateName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
newRuleContent'
instance
Data.ToHeaders
UpdateApprovalRuleTemplateContent
where
toHeaders :: UpdateApprovalRuleTemplateContent -> 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
"CodeCommit_20150413.UpdateApprovalRuleTemplateContent" ::
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
UpdateApprovalRuleTemplateContent
where
toJSON :: UpdateApprovalRuleTemplateContent -> Value
toJSON UpdateApprovalRuleTemplateContent' {Maybe Text
Text
newRuleContent' :: Text
approvalRuleTemplateName :: Text
existingRuleContentSha256 :: Maybe Text
$sel:newRuleContent':UpdateApprovalRuleTemplateContent' :: UpdateApprovalRuleTemplateContent -> Text
$sel:approvalRuleTemplateName:UpdateApprovalRuleTemplateContent' :: UpdateApprovalRuleTemplateContent -> Text
$sel:existingRuleContentSha256:UpdateApprovalRuleTemplateContent' :: UpdateApprovalRuleTemplateContent -> Maybe Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"existingRuleContentSha256" 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
existingRuleContentSha256,
forall a. a -> Maybe a
Prelude.Just
( Key
"approvalRuleTemplateName"
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
approvalRuleTemplateName
),
forall a. a -> Maybe a
Prelude.Just
(Key
"newRuleContent" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
newRuleContent')
]
)
instance
Data.ToPath
UpdateApprovalRuleTemplateContent
where
toPath :: UpdateApprovalRuleTemplateContent -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance
Data.ToQuery
UpdateApprovalRuleTemplateContent
where
toQuery :: UpdateApprovalRuleTemplateContent -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data UpdateApprovalRuleTemplateContentResponse = UpdateApprovalRuleTemplateContentResponse'
{
UpdateApprovalRuleTemplateContentResponse -> Int
httpStatus :: Prelude.Int,
UpdateApprovalRuleTemplateContentResponse -> ApprovalRuleTemplate
approvalRuleTemplate :: ApprovalRuleTemplate
}
deriving (UpdateApprovalRuleTemplateContentResponse
-> UpdateApprovalRuleTemplateContentResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: UpdateApprovalRuleTemplateContentResponse
-> UpdateApprovalRuleTemplateContentResponse -> Bool
$c/= :: UpdateApprovalRuleTemplateContentResponse
-> UpdateApprovalRuleTemplateContentResponse -> Bool
== :: UpdateApprovalRuleTemplateContentResponse
-> UpdateApprovalRuleTemplateContentResponse -> Bool
$c== :: UpdateApprovalRuleTemplateContentResponse
-> UpdateApprovalRuleTemplateContentResponse -> Bool
Prelude.Eq, ReadPrec [UpdateApprovalRuleTemplateContentResponse]
ReadPrec UpdateApprovalRuleTemplateContentResponse
Int -> ReadS UpdateApprovalRuleTemplateContentResponse
ReadS [UpdateApprovalRuleTemplateContentResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [UpdateApprovalRuleTemplateContentResponse]
$creadListPrec :: ReadPrec [UpdateApprovalRuleTemplateContentResponse]
readPrec :: ReadPrec UpdateApprovalRuleTemplateContentResponse
$creadPrec :: ReadPrec UpdateApprovalRuleTemplateContentResponse
readList :: ReadS [UpdateApprovalRuleTemplateContentResponse]
$creadList :: ReadS [UpdateApprovalRuleTemplateContentResponse]
readsPrec :: Int -> ReadS UpdateApprovalRuleTemplateContentResponse
$creadsPrec :: Int -> ReadS UpdateApprovalRuleTemplateContentResponse
Prelude.Read, Int -> UpdateApprovalRuleTemplateContentResponse -> ShowS
[UpdateApprovalRuleTemplateContentResponse] -> ShowS
UpdateApprovalRuleTemplateContentResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [UpdateApprovalRuleTemplateContentResponse] -> ShowS
$cshowList :: [UpdateApprovalRuleTemplateContentResponse] -> ShowS
show :: UpdateApprovalRuleTemplateContentResponse -> String
$cshow :: UpdateApprovalRuleTemplateContentResponse -> String
showsPrec :: Int -> UpdateApprovalRuleTemplateContentResponse -> ShowS
$cshowsPrec :: Int -> UpdateApprovalRuleTemplateContentResponse -> ShowS
Prelude.Show, forall x.
Rep UpdateApprovalRuleTemplateContentResponse x
-> UpdateApprovalRuleTemplateContentResponse
forall x.
UpdateApprovalRuleTemplateContentResponse
-> Rep UpdateApprovalRuleTemplateContentResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep UpdateApprovalRuleTemplateContentResponse x
-> UpdateApprovalRuleTemplateContentResponse
$cfrom :: forall x.
UpdateApprovalRuleTemplateContentResponse
-> Rep UpdateApprovalRuleTemplateContentResponse x
Prelude.Generic)
newUpdateApprovalRuleTemplateContentResponse ::
Prelude.Int ->
ApprovalRuleTemplate ->
UpdateApprovalRuleTemplateContentResponse
newUpdateApprovalRuleTemplateContentResponse :: Int
-> ApprovalRuleTemplate
-> UpdateApprovalRuleTemplateContentResponse
newUpdateApprovalRuleTemplateContentResponse
Int
pHttpStatus_
ApprovalRuleTemplate
pApprovalRuleTemplate_ =
UpdateApprovalRuleTemplateContentResponse'
{ $sel:httpStatus:UpdateApprovalRuleTemplateContentResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:approvalRuleTemplate:UpdateApprovalRuleTemplateContentResponse' :: ApprovalRuleTemplate
approvalRuleTemplate =
ApprovalRuleTemplate
pApprovalRuleTemplate_
}
updateApprovalRuleTemplateContentResponse_httpStatus :: Lens.Lens' UpdateApprovalRuleTemplateContentResponse Prelude.Int
updateApprovalRuleTemplateContentResponse_httpStatus :: Lens' UpdateApprovalRuleTemplateContentResponse Int
updateApprovalRuleTemplateContentResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateApprovalRuleTemplateContentResponse' {Int
httpStatus :: Int
$sel:httpStatus:UpdateApprovalRuleTemplateContentResponse' :: UpdateApprovalRuleTemplateContentResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: UpdateApprovalRuleTemplateContentResponse
s@UpdateApprovalRuleTemplateContentResponse' {} Int
a -> UpdateApprovalRuleTemplateContentResponse
s {$sel:httpStatus:UpdateApprovalRuleTemplateContentResponse' :: Int
httpStatus = Int
a} :: UpdateApprovalRuleTemplateContentResponse)
updateApprovalRuleTemplateContentResponse_approvalRuleTemplate :: Lens.Lens' UpdateApprovalRuleTemplateContentResponse ApprovalRuleTemplate
updateApprovalRuleTemplateContentResponse_approvalRuleTemplate :: Lens'
UpdateApprovalRuleTemplateContentResponse ApprovalRuleTemplate
updateApprovalRuleTemplateContentResponse_approvalRuleTemplate = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\UpdateApprovalRuleTemplateContentResponse' {ApprovalRuleTemplate
approvalRuleTemplate :: ApprovalRuleTemplate
$sel:approvalRuleTemplate:UpdateApprovalRuleTemplateContentResponse' :: UpdateApprovalRuleTemplateContentResponse -> ApprovalRuleTemplate
approvalRuleTemplate} -> ApprovalRuleTemplate
approvalRuleTemplate) (\s :: UpdateApprovalRuleTemplateContentResponse
s@UpdateApprovalRuleTemplateContentResponse' {} ApprovalRuleTemplate
a -> UpdateApprovalRuleTemplateContentResponse
s {$sel:approvalRuleTemplate:UpdateApprovalRuleTemplateContentResponse' :: ApprovalRuleTemplate
approvalRuleTemplate = ApprovalRuleTemplate
a} :: UpdateApprovalRuleTemplateContentResponse)
instance
Prelude.NFData
UpdateApprovalRuleTemplateContentResponse
where
rnf :: UpdateApprovalRuleTemplateContentResponse -> ()
rnf UpdateApprovalRuleTemplateContentResponse' {Int
ApprovalRuleTemplate
approvalRuleTemplate :: ApprovalRuleTemplate
httpStatus :: Int
$sel:approvalRuleTemplate:UpdateApprovalRuleTemplateContentResponse' :: UpdateApprovalRuleTemplateContentResponse -> ApprovalRuleTemplate
$sel:httpStatus:UpdateApprovalRuleTemplateContentResponse' :: UpdateApprovalRuleTemplateContentResponse -> 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 ApprovalRuleTemplate
approvalRuleTemplate