{-# 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.ServiceCatalog.AcceptPortfolioShare
(
AcceptPortfolioShare (..),
newAcceptPortfolioShare,
acceptPortfolioShare_acceptLanguage,
acceptPortfolioShare_portfolioShareType,
acceptPortfolioShare_portfolioId,
AcceptPortfolioShareResponse (..),
newAcceptPortfolioShareResponse,
acceptPortfolioShareResponse_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 qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
import Amazonka.ServiceCatalog.Types
data AcceptPortfolioShare = AcceptPortfolioShare'
{
AcceptPortfolioShare -> Maybe Text
acceptLanguage :: Prelude.Maybe Prelude.Text,
AcceptPortfolioShare -> Maybe PortfolioShareType
portfolioShareType :: Prelude.Maybe PortfolioShareType,
AcceptPortfolioShare -> Text
portfolioId :: Prelude.Text
}
deriving (AcceptPortfolioShare -> AcceptPortfolioShare -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AcceptPortfolioShare -> AcceptPortfolioShare -> Bool
$c/= :: AcceptPortfolioShare -> AcceptPortfolioShare -> Bool
== :: AcceptPortfolioShare -> AcceptPortfolioShare -> Bool
$c== :: AcceptPortfolioShare -> AcceptPortfolioShare -> Bool
Prelude.Eq, ReadPrec [AcceptPortfolioShare]
ReadPrec AcceptPortfolioShare
Int -> ReadS AcceptPortfolioShare
ReadS [AcceptPortfolioShare]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [AcceptPortfolioShare]
$creadListPrec :: ReadPrec [AcceptPortfolioShare]
readPrec :: ReadPrec AcceptPortfolioShare
$creadPrec :: ReadPrec AcceptPortfolioShare
readList :: ReadS [AcceptPortfolioShare]
$creadList :: ReadS [AcceptPortfolioShare]
readsPrec :: Int -> ReadS AcceptPortfolioShare
$creadsPrec :: Int -> ReadS AcceptPortfolioShare
Prelude.Read, Int -> AcceptPortfolioShare -> ShowS
[AcceptPortfolioShare] -> ShowS
AcceptPortfolioShare -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [AcceptPortfolioShare] -> ShowS
$cshowList :: [AcceptPortfolioShare] -> ShowS
show :: AcceptPortfolioShare -> String
$cshow :: AcceptPortfolioShare -> String
showsPrec :: Int -> AcceptPortfolioShare -> ShowS
$cshowsPrec :: Int -> AcceptPortfolioShare -> ShowS
Prelude.Show, forall x. Rep AcceptPortfolioShare x -> AcceptPortfolioShare
forall x. AcceptPortfolioShare -> Rep AcceptPortfolioShare x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep AcceptPortfolioShare x -> AcceptPortfolioShare
$cfrom :: forall x. AcceptPortfolioShare -> Rep AcceptPortfolioShare x
Prelude.Generic)
newAcceptPortfolioShare ::
Prelude.Text ->
AcceptPortfolioShare
newAcceptPortfolioShare :: Text -> AcceptPortfolioShare
newAcceptPortfolioShare Text
pPortfolioId_ =
AcceptPortfolioShare'
{ $sel:acceptLanguage:AcceptPortfolioShare' :: Maybe Text
acceptLanguage =
forall a. Maybe a
Prelude.Nothing,
$sel:portfolioShareType:AcceptPortfolioShare' :: Maybe PortfolioShareType
portfolioShareType = forall a. Maybe a
Prelude.Nothing,
$sel:portfolioId:AcceptPortfolioShare' :: Text
portfolioId = Text
pPortfolioId_
}
acceptPortfolioShare_acceptLanguage :: Lens.Lens' AcceptPortfolioShare (Prelude.Maybe Prelude.Text)
acceptPortfolioShare_acceptLanguage :: Lens' AcceptPortfolioShare (Maybe Text)
acceptPortfolioShare_acceptLanguage = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AcceptPortfolioShare' {Maybe Text
acceptLanguage :: Maybe Text
$sel:acceptLanguage:AcceptPortfolioShare' :: AcceptPortfolioShare -> Maybe Text
acceptLanguage} -> Maybe Text
acceptLanguage) (\s :: AcceptPortfolioShare
s@AcceptPortfolioShare' {} Maybe Text
a -> AcceptPortfolioShare
s {$sel:acceptLanguage:AcceptPortfolioShare' :: Maybe Text
acceptLanguage = Maybe Text
a} :: AcceptPortfolioShare)
acceptPortfolioShare_portfolioShareType :: Lens.Lens' AcceptPortfolioShare (Prelude.Maybe PortfolioShareType)
acceptPortfolioShare_portfolioShareType :: Lens' AcceptPortfolioShare (Maybe PortfolioShareType)
acceptPortfolioShare_portfolioShareType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AcceptPortfolioShare' {Maybe PortfolioShareType
portfolioShareType :: Maybe PortfolioShareType
$sel:portfolioShareType:AcceptPortfolioShare' :: AcceptPortfolioShare -> Maybe PortfolioShareType
portfolioShareType} -> Maybe PortfolioShareType
portfolioShareType) (\s :: AcceptPortfolioShare
s@AcceptPortfolioShare' {} Maybe PortfolioShareType
a -> AcceptPortfolioShare
s {$sel:portfolioShareType:AcceptPortfolioShare' :: Maybe PortfolioShareType
portfolioShareType = Maybe PortfolioShareType
a} :: AcceptPortfolioShare)
acceptPortfolioShare_portfolioId :: Lens.Lens' AcceptPortfolioShare Prelude.Text
acceptPortfolioShare_portfolioId :: Lens' AcceptPortfolioShare Text
acceptPortfolioShare_portfolioId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AcceptPortfolioShare' {Text
portfolioId :: Text
$sel:portfolioId:AcceptPortfolioShare' :: AcceptPortfolioShare -> Text
portfolioId} -> Text
portfolioId) (\s :: AcceptPortfolioShare
s@AcceptPortfolioShare' {} Text
a -> AcceptPortfolioShare
s {$sel:portfolioId:AcceptPortfolioShare' :: Text
portfolioId = Text
a} :: AcceptPortfolioShare)
instance Core.AWSRequest AcceptPortfolioShare where
type
AWSResponse AcceptPortfolioShare =
AcceptPortfolioShareResponse
request :: (Service -> Service)
-> AcceptPortfolioShare -> Request AcceptPortfolioShare
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 AcceptPortfolioShare
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse AcceptPortfolioShare)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> () -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveEmpty
( \Int
s ResponseHeaders
h ()
x ->
Int -> AcceptPortfolioShareResponse
AcceptPortfolioShareResponse'
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))
)
instance Prelude.Hashable AcceptPortfolioShare where
hashWithSalt :: Int -> AcceptPortfolioShare -> Int
hashWithSalt Int
_salt AcceptPortfolioShare' {Maybe Text
Maybe PortfolioShareType
Text
portfolioId :: Text
portfolioShareType :: Maybe PortfolioShareType
acceptLanguage :: Maybe Text
$sel:portfolioId:AcceptPortfolioShare' :: AcceptPortfolioShare -> Text
$sel:portfolioShareType:AcceptPortfolioShare' :: AcceptPortfolioShare -> Maybe PortfolioShareType
$sel:acceptLanguage:AcceptPortfolioShare' :: AcceptPortfolioShare -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
acceptLanguage
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe PortfolioShareType
portfolioShareType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
portfolioId
instance Prelude.NFData AcceptPortfolioShare where
rnf :: AcceptPortfolioShare -> ()
rnf AcceptPortfolioShare' {Maybe Text
Maybe PortfolioShareType
Text
portfolioId :: Text
portfolioShareType :: Maybe PortfolioShareType
acceptLanguage :: Maybe Text
$sel:portfolioId:AcceptPortfolioShare' :: AcceptPortfolioShare -> Text
$sel:portfolioShareType:AcceptPortfolioShare' :: AcceptPortfolioShare -> Maybe PortfolioShareType
$sel:acceptLanguage:AcceptPortfolioShare' :: AcceptPortfolioShare -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
acceptLanguage
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe PortfolioShareType
portfolioShareType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
portfolioId
instance Data.ToHeaders AcceptPortfolioShare where
toHeaders :: AcceptPortfolioShare -> 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
"AWS242ServiceCatalogService.AcceptPortfolioShare" ::
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 AcceptPortfolioShare where
toJSON :: AcceptPortfolioShare -> Value
toJSON AcceptPortfolioShare' {Maybe Text
Maybe PortfolioShareType
Text
portfolioId :: Text
portfolioShareType :: Maybe PortfolioShareType
acceptLanguage :: Maybe Text
$sel:portfolioId:AcceptPortfolioShare' :: AcceptPortfolioShare -> Text
$sel:portfolioShareType:AcceptPortfolioShare' :: AcceptPortfolioShare -> Maybe PortfolioShareType
$sel:acceptLanguage:AcceptPortfolioShare' :: AcceptPortfolioShare -> Maybe Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"AcceptLanguage" 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
acceptLanguage,
(Key
"PortfolioShareType" 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 PortfolioShareType
portfolioShareType,
forall a. a -> Maybe a
Prelude.Just (Key
"PortfolioId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
portfolioId)
]
)
instance Data.ToPath AcceptPortfolioShare where
toPath :: AcceptPortfolioShare -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery AcceptPortfolioShare where
toQuery :: AcceptPortfolioShare -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data AcceptPortfolioShareResponse = AcceptPortfolioShareResponse'
{
AcceptPortfolioShareResponse -> Int
httpStatus :: Prelude.Int
}
deriving (AcceptPortfolioShareResponse
-> AcceptPortfolioShareResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AcceptPortfolioShareResponse
-> AcceptPortfolioShareResponse -> Bool
$c/= :: AcceptPortfolioShareResponse
-> AcceptPortfolioShareResponse -> Bool
== :: AcceptPortfolioShareResponse
-> AcceptPortfolioShareResponse -> Bool
$c== :: AcceptPortfolioShareResponse
-> AcceptPortfolioShareResponse -> Bool
Prelude.Eq, ReadPrec [AcceptPortfolioShareResponse]
ReadPrec AcceptPortfolioShareResponse
Int -> ReadS AcceptPortfolioShareResponse
ReadS [AcceptPortfolioShareResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [AcceptPortfolioShareResponse]
$creadListPrec :: ReadPrec [AcceptPortfolioShareResponse]
readPrec :: ReadPrec AcceptPortfolioShareResponse
$creadPrec :: ReadPrec AcceptPortfolioShareResponse
readList :: ReadS [AcceptPortfolioShareResponse]
$creadList :: ReadS [AcceptPortfolioShareResponse]
readsPrec :: Int -> ReadS AcceptPortfolioShareResponse
$creadsPrec :: Int -> ReadS AcceptPortfolioShareResponse
Prelude.Read, Int -> AcceptPortfolioShareResponse -> ShowS
[AcceptPortfolioShareResponse] -> ShowS
AcceptPortfolioShareResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [AcceptPortfolioShareResponse] -> ShowS
$cshowList :: [AcceptPortfolioShareResponse] -> ShowS
show :: AcceptPortfolioShareResponse -> String
$cshow :: AcceptPortfolioShareResponse -> String
showsPrec :: Int -> AcceptPortfolioShareResponse -> ShowS
$cshowsPrec :: Int -> AcceptPortfolioShareResponse -> ShowS
Prelude.Show, forall x.
Rep AcceptPortfolioShareResponse x -> AcceptPortfolioShareResponse
forall x.
AcceptPortfolioShareResponse -> Rep AcceptPortfolioShareResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep AcceptPortfolioShareResponse x -> AcceptPortfolioShareResponse
$cfrom :: forall x.
AcceptPortfolioShareResponse -> Rep AcceptPortfolioShareResponse x
Prelude.Generic)
newAcceptPortfolioShareResponse ::
Prelude.Int ->
AcceptPortfolioShareResponse
newAcceptPortfolioShareResponse :: Int -> AcceptPortfolioShareResponse
newAcceptPortfolioShareResponse Int
pHttpStatus_ =
AcceptPortfolioShareResponse'
{ $sel:httpStatus:AcceptPortfolioShareResponse' :: Int
httpStatus =
Int
pHttpStatus_
}
acceptPortfolioShareResponse_httpStatus :: Lens.Lens' AcceptPortfolioShareResponse Prelude.Int
acceptPortfolioShareResponse_httpStatus :: Lens' AcceptPortfolioShareResponse Int
acceptPortfolioShareResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\AcceptPortfolioShareResponse' {Int
httpStatus :: Int
$sel:httpStatus:AcceptPortfolioShareResponse' :: AcceptPortfolioShareResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: AcceptPortfolioShareResponse
s@AcceptPortfolioShareResponse' {} Int
a -> AcceptPortfolioShareResponse
s {$sel:httpStatus:AcceptPortfolioShareResponse' :: Int
httpStatus = Int
a} :: AcceptPortfolioShareResponse)
instance Prelude.NFData AcceptPortfolioShareResponse where
rnf :: AcceptPortfolioShareResponse -> ()
rnf AcceptPortfolioShareResponse' {Int
httpStatus :: Int
$sel:httpStatus:AcceptPortfolioShareResponse' :: AcceptPortfolioShareResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus