{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Network.AWS.ServiceCatalog.AcceptPortfolioShare
(
acceptPortfolioShare
, AcceptPortfolioShare
, apsAcceptLanguage
, apsPortfolioId
, acceptPortfolioShareResponse
, AcceptPortfolioShareResponse
, apsrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.ServiceCatalog.Types
import Network.AWS.ServiceCatalog.Types.Product
data AcceptPortfolioShare = AcceptPortfolioShare'
{ _apsAcceptLanguage :: !(Maybe Text)
, _apsPortfolioId :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
acceptPortfolioShare
:: Text
-> AcceptPortfolioShare
acceptPortfolioShare pPortfolioId_ =
AcceptPortfolioShare'
{_apsAcceptLanguage = Nothing, _apsPortfolioId = pPortfolioId_}
apsAcceptLanguage :: Lens' AcceptPortfolioShare (Maybe Text)
apsAcceptLanguage = lens _apsAcceptLanguage (\ s a -> s{_apsAcceptLanguage = a})
apsPortfolioId :: Lens' AcceptPortfolioShare Text
apsPortfolioId = lens _apsPortfolioId (\ s a -> s{_apsPortfolioId = a})
instance AWSRequest AcceptPortfolioShare where
type Rs AcceptPortfolioShare =
AcceptPortfolioShareResponse
request = postJSON serviceCatalog
response
= receiveEmpty
(\ s h x ->
AcceptPortfolioShareResponse' <$>
(pure (fromEnum s)))
instance Hashable AcceptPortfolioShare where
instance NFData AcceptPortfolioShare where
instance ToHeaders AcceptPortfolioShare where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AWS242ServiceCatalogService.AcceptPortfolioShare"
:: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON AcceptPortfolioShare where
toJSON AcceptPortfolioShare'{..}
= object
(catMaybes
[("AcceptLanguage" .=) <$> _apsAcceptLanguage,
Just ("PortfolioId" .= _apsPortfolioId)])
instance ToPath AcceptPortfolioShare where
toPath = const "/"
instance ToQuery AcceptPortfolioShare where
toQuery = const mempty
newtype AcceptPortfolioShareResponse = AcceptPortfolioShareResponse'
{ _apsrsResponseStatus :: Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
acceptPortfolioShareResponse
:: Int
-> AcceptPortfolioShareResponse
acceptPortfolioShareResponse pResponseStatus_ =
AcceptPortfolioShareResponse' {_apsrsResponseStatus = pResponseStatus_}
apsrsResponseStatus :: Lens' AcceptPortfolioShareResponse Int
apsrsResponseStatus = lens _apsrsResponseStatus (\ s a -> s{_apsrsResponseStatus = a})
instance NFData AcceptPortfolioShareResponse where