{-# 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.RAM.PromoteResourceShareCreatedFromPolicy
(
PromoteResourceShareCreatedFromPolicy (..),
newPromoteResourceShareCreatedFromPolicy,
promoteResourceShareCreatedFromPolicy_resourceShareArn,
PromoteResourceShareCreatedFromPolicyResponse (..),
newPromoteResourceShareCreatedFromPolicyResponse,
promoteResourceShareCreatedFromPolicyResponse_returnValue,
promoteResourceShareCreatedFromPolicyResponse_httpStatus,
)
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.RAM.Types
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data PromoteResourceShareCreatedFromPolicy = PromoteResourceShareCreatedFromPolicy'
{
PromoteResourceShareCreatedFromPolicy -> Text
resourceShareArn :: Prelude.Text
}
deriving (PromoteResourceShareCreatedFromPolicy
-> PromoteResourceShareCreatedFromPolicy -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PromoteResourceShareCreatedFromPolicy
-> PromoteResourceShareCreatedFromPolicy -> Bool
$c/= :: PromoteResourceShareCreatedFromPolicy
-> PromoteResourceShareCreatedFromPolicy -> Bool
== :: PromoteResourceShareCreatedFromPolicy
-> PromoteResourceShareCreatedFromPolicy -> Bool
$c== :: PromoteResourceShareCreatedFromPolicy
-> PromoteResourceShareCreatedFromPolicy -> Bool
Prelude.Eq, ReadPrec [PromoteResourceShareCreatedFromPolicy]
ReadPrec PromoteResourceShareCreatedFromPolicy
Int -> ReadS PromoteResourceShareCreatedFromPolicy
ReadS [PromoteResourceShareCreatedFromPolicy]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PromoteResourceShareCreatedFromPolicy]
$creadListPrec :: ReadPrec [PromoteResourceShareCreatedFromPolicy]
readPrec :: ReadPrec PromoteResourceShareCreatedFromPolicy
$creadPrec :: ReadPrec PromoteResourceShareCreatedFromPolicy
readList :: ReadS [PromoteResourceShareCreatedFromPolicy]
$creadList :: ReadS [PromoteResourceShareCreatedFromPolicy]
readsPrec :: Int -> ReadS PromoteResourceShareCreatedFromPolicy
$creadsPrec :: Int -> ReadS PromoteResourceShareCreatedFromPolicy
Prelude.Read, Int -> PromoteResourceShareCreatedFromPolicy -> ShowS
[PromoteResourceShareCreatedFromPolicy] -> ShowS
PromoteResourceShareCreatedFromPolicy -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PromoteResourceShareCreatedFromPolicy] -> ShowS
$cshowList :: [PromoteResourceShareCreatedFromPolicy] -> ShowS
show :: PromoteResourceShareCreatedFromPolicy -> String
$cshow :: PromoteResourceShareCreatedFromPolicy -> String
showsPrec :: Int -> PromoteResourceShareCreatedFromPolicy -> ShowS
$cshowsPrec :: Int -> PromoteResourceShareCreatedFromPolicy -> ShowS
Prelude.Show, forall x.
Rep PromoteResourceShareCreatedFromPolicy x
-> PromoteResourceShareCreatedFromPolicy
forall x.
PromoteResourceShareCreatedFromPolicy
-> Rep PromoteResourceShareCreatedFromPolicy x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PromoteResourceShareCreatedFromPolicy x
-> PromoteResourceShareCreatedFromPolicy
$cfrom :: forall x.
PromoteResourceShareCreatedFromPolicy
-> Rep PromoteResourceShareCreatedFromPolicy x
Prelude.Generic)
newPromoteResourceShareCreatedFromPolicy ::
Prelude.Text ->
PromoteResourceShareCreatedFromPolicy
newPromoteResourceShareCreatedFromPolicy :: Text -> PromoteResourceShareCreatedFromPolicy
newPromoteResourceShareCreatedFromPolicy
Text
pResourceShareArn_ =
PromoteResourceShareCreatedFromPolicy'
{ $sel:resourceShareArn:PromoteResourceShareCreatedFromPolicy' :: Text
resourceShareArn =
Text
pResourceShareArn_
}
promoteResourceShareCreatedFromPolicy_resourceShareArn :: Lens.Lens' PromoteResourceShareCreatedFromPolicy Prelude.Text
promoteResourceShareCreatedFromPolicy_resourceShareArn :: Lens' PromoteResourceShareCreatedFromPolicy Text
promoteResourceShareCreatedFromPolicy_resourceShareArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PromoteResourceShareCreatedFromPolicy' {Text
resourceShareArn :: Text
$sel:resourceShareArn:PromoteResourceShareCreatedFromPolicy' :: PromoteResourceShareCreatedFromPolicy -> Text
resourceShareArn} -> Text
resourceShareArn) (\s :: PromoteResourceShareCreatedFromPolicy
s@PromoteResourceShareCreatedFromPolicy' {} Text
a -> PromoteResourceShareCreatedFromPolicy
s {$sel:resourceShareArn:PromoteResourceShareCreatedFromPolicy' :: Text
resourceShareArn = Text
a} :: PromoteResourceShareCreatedFromPolicy)
instance
Core.AWSRequest
PromoteResourceShareCreatedFromPolicy
where
type
AWSResponse
PromoteResourceShareCreatedFromPolicy =
PromoteResourceShareCreatedFromPolicyResponse
request :: (Service -> Service)
-> PromoteResourceShareCreatedFromPolicy
-> Request PromoteResourceShareCreatedFromPolicy
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 PromoteResourceShareCreatedFromPolicy
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse
(AWSResponse PromoteResourceShareCreatedFromPolicy)))
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 Bool -> Int -> PromoteResourceShareCreatedFromPolicyResponse
PromoteResourceShareCreatedFromPolicyResponse'
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
"returnValue")
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
PromoteResourceShareCreatedFromPolicy
where
hashWithSalt :: Int -> PromoteResourceShareCreatedFromPolicy -> Int
hashWithSalt
Int
_salt
PromoteResourceShareCreatedFromPolicy' {Text
resourceShareArn :: Text
$sel:resourceShareArn:PromoteResourceShareCreatedFromPolicy' :: PromoteResourceShareCreatedFromPolicy -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
resourceShareArn
instance
Prelude.NFData
PromoteResourceShareCreatedFromPolicy
where
rnf :: PromoteResourceShareCreatedFromPolicy -> ()
rnf PromoteResourceShareCreatedFromPolicy' {Text
resourceShareArn :: Text
$sel:resourceShareArn:PromoteResourceShareCreatedFromPolicy' :: PromoteResourceShareCreatedFromPolicy -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
resourceShareArn
instance
Data.ToHeaders
PromoteResourceShareCreatedFromPolicy
where
toHeaders :: PromoteResourceShareCreatedFromPolicy -> 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.ToJSON
PromoteResourceShareCreatedFromPolicy
where
toJSON :: PromoteResourceShareCreatedFromPolicy -> Value
toJSON = forall a b. a -> b -> a
Prelude.const (Object -> Value
Data.Object forall a. Monoid a => a
Prelude.mempty)
instance
Data.ToPath
PromoteResourceShareCreatedFromPolicy
where
toPath :: PromoteResourceShareCreatedFromPolicy -> ByteString
toPath =
forall a b. a -> b -> a
Prelude.const
ByteString
"/promoteresourcesharecreatedfrompolicy"
instance
Data.ToQuery
PromoteResourceShareCreatedFromPolicy
where
toQuery :: PromoteResourceShareCreatedFromPolicy -> QueryString
toQuery PromoteResourceShareCreatedFromPolicy' {Text
resourceShareArn :: Text
$sel:resourceShareArn:PromoteResourceShareCreatedFromPolicy' :: PromoteResourceShareCreatedFromPolicy -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"resourceShareArn" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Text
resourceShareArn]
data PromoteResourceShareCreatedFromPolicyResponse = PromoteResourceShareCreatedFromPolicyResponse'
{
PromoteResourceShareCreatedFromPolicyResponse -> Maybe Bool
returnValue :: Prelude.Maybe Prelude.Bool,
PromoteResourceShareCreatedFromPolicyResponse -> Int
httpStatus :: Prelude.Int
}
deriving (PromoteResourceShareCreatedFromPolicyResponse
-> PromoteResourceShareCreatedFromPolicyResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PromoteResourceShareCreatedFromPolicyResponse
-> PromoteResourceShareCreatedFromPolicyResponse -> Bool
$c/= :: PromoteResourceShareCreatedFromPolicyResponse
-> PromoteResourceShareCreatedFromPolicyResponse -> Bool
== :: PromoteResourceShareCreatedFromPolicyResponse
-> PromoteResourceShareCreatedFromPolicyResponse -> Bool
$c== :: PromoteResourceShareCreatedFromPolicyResponse
-> PromoteResourceShareCreatedFromPolicyResponse -> Bool
Prelude.Eq, ReadPrec [PromoteResourceShareCreatedFromPolicyResponse]
ReadPrec PromoteResourceShareCreatedFromPolicyResponse
Int -> ReadS PromoteResourceShareCreatedFromPolicyResponse
ReadS [PromoteResourceShareCreatedFromPolicyResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [PromoteResourceShareCreatedFromPolicyResponse]
$creadListPrec :: ReadPrec [PromoteResourceShareCreatedFromPolicyResponse]
readPrec :: ReadPrec PromoteResourceShareCreatedFromPolicyResponse
$creadPrec :: ReadPrec PromoteResourceShareCreatedFromPolicyResponse
readList :: ReadS [PromoteResourceShareCreatedFromPolicyResponse]
$creadList :: ReadS [PromoteResourceShareCreatedFromPolicyResponse]
readsPrec :: Int -> ReadS PromoteResourceShareCreatedFromPolicyResponse
$creadsPrec :: Int -> ReadS PromoteResourceShareCreatedFromPolicyResponse
Prelude.Read, Int -> PromoteResourceShareCreatedFromPolicyResponse -> ShowS
[PromoteResourceShareCreatedFromPolicyResponse] -> ShowS
PromoteResourceShareCreatedFromPolicyResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [PromoteResourceShareCreatedFromPolicyResponse] -> ShowS
$cshowList :: [PromoteResourceShareCreatedFromPolicyResponse] -> ShowS
show :: PromoteResourceShareCreatedFromPolicyResponse -> String
$cshow :: PromoteResourceShareCreatedFromPolicyResponse -> String
showsPrec :: Int -> PromoteResourceShareCreatedFromPolicyResponse -> ShowS
$cshowsPrec :: Int -> PromoteResourceShareCreatedFromPolicyResponse -> ShowS
Prelude.Show, forall x.
Rep PromoteResourceShareCreatedFromPolicyResponse x
-> PromoteResourceShareCreatedFromPolicyResponse
forall x.
PromoteResourceShareCreatedFromPolicyResponse
-> Rep PromoteResourceShareCreatedFromPolicyResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep PromoteResourceShareCreatedFromPolicyResponse x
-> PromoteResourceShareCreatedFromPolicyResponse
$cfrom :: forall x.
PromoteResourceShareCreatedFromPolicyResponse
-> Rep PromoteResourceShareCreatedFromPolicyResponse x
Prelude.Generic)
newPromoteResourceShareCreatedFromPolicyResponse ::
Prelude.Int ->
PromoteResourceShareCreatedFromPolicyResponse
newPromoteResourceShareCreatedFromPolicyResponse :: Int -> PromoteResourceShareCreatedFromPolicyResponse
newPromoteResourceShareCreatedFromPolicyResponse
Int
pHttpStatus_ =
PromoteResourceShareCreatedFromPolicyResponse'
{ $sel:returnValue:PromoteResourceShareCreatedFromPolicyResponse' :: Maybe Bool
returnValue =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:PromoteResourceShareCreatedFromPolicyResponse' :: Int
httpStatus = Int
pHttpStatus_
}
promoteResourceShareCreatedFromPolicyResponse_returnValue :: Lens.Lens' PromoteResourceShareCreatedFromPolicyResponse (Prelude.Maybe Prelude.Bool)
promoteResourceShareCreatedFromPolicyResponse_returnValue :: Lens' PromoteResourceShareCreatedFromPolicyResponse (Maybe Bool)
promoteResourceShareCreatedFromPolicyResponse_returnValue = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PromoteResourceShareCreatedFromPolicyResponse' {Maybe Bool
returnValue :: Maybe Bool
$sel:returnValue:PromoteResourceShareCreatedFromPolicyResponse' :: PromoteResourceShareCreatedFromPolicyResponse -> Maybe Bool
returnValue} -> Maybe Bool
returnValue) (\s :: PromoteResourceShareCreatedFromPolicyResponse
s@PromoteResourceShareCreatedFromPolicyResponse' {} Maybe Bool
a -> PromoteResourceShareCreatedFromPolicyResponse
s {$sel:returnValue:PromoteResourceShareCreatedFromPolicyResponse' :: Maybe Bool
returnValue = Maybe Bool
a} :: PromoteResourceShareCreatedFromPolicyResponse)
promoteResourceShareCreatedFromPolicyResponse_httpStatus :: Lens.Lens' PromoteResourceShareCreatedFromPolicyResponse Prelude.Int
promoteResourceShareCreatedFromPolicyResponse_httpStatus :: Lens' PromoteResourceShareCreatedFromPolicyResponse Int
promoteResourceShareCreatedFromPolicyResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\PromoteResourceShareCreatedFromPolicyResponse' {Int
httpStatus :: Int
$sel:httpStatus:PromoteResourceShareCreatedFromPolicyResponse' :: PromoteResourceShareCreatedFromPolicyResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: PromoteResourceShareCreatedFromPolicyResponse
s@PromoteResourceShareCreatedFromPolicyResponse' {} Int
a -> PromoteResourceShareCreatedFromPolicyResponse
s {$sel:httpStatus:PromoteResourceShareCreatedFromPolicyResponse' :: Int
httpStatus = Int
a} :: PromoteResourceShareCreatedFromPolicyResponse)
instance
Prelude.NFData
PromoteResourceShareCreatedFromPolicyResponse
where
rnf :: PromoteResourceShareCreatedFromPolicyResponse -> ()
rnf
PromoteResourceShareCreatedFromPolicyResponse' {Int
Maybe Bool
httpStatus :: Int
returnValue :: Maybe Bool
$sel:httpStatus:PromoteResourceShareCreatedFromPolicyResponse' :: PromoteResourceShareCreatedFromPolicyResponse -> Int
$sel:returnValue:PromoteResourceShareCreatedFromPolicyResponse' :: PromoteResourceShareCreatedFromPolicyResponse -> Maybe Bool
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
returnValue
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus