{-# 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.Pinpoint.DeleteCampaign
(
deleteCampaign
, DeleteCampaign
, dcCampaignId
, dcApplicationId
, deleteCampaignResponse
, DeleteCampaignResponse
, dcrsResponseStatus
, dcrsCampaignResponse
) where
import Network.AWS.Lens
import Network.AWS.Pinpoint.Types
import Network.AWS.Pinpoint.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DeleteCampaign = DeleteCampaign'
{ _dcCampaignId :: !Text
, _dcApplicationId :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deleteCampaign
:: Text
-> Text
-> DeleteCampaign
deleteCampaign pCampaignId_ pApplicationId_ =
DeleteCampaign'
{_dcCampaignId = pCampaignId_, _dcApplicationId = pApplicationId_}
dcCampaignId :: Lens' DeleteCampaign Text
dcCampaignId = lens _dcCampaignId (\ s a -> s{_dcCampaignId = a})
dcApplicationId :: Lens' DeleteCampaign Text
dcApplicationId = lens _dcApplicationId (\ s a -> s{_dcApplicationId = a})
instance AWSRequest DeleteCampaign where
type Rs DeleteCampaign = DeleteCampaignResponse
request = delete pinpoint
response
= receiveJSON
(\ s h x ->
DeleteCampaignResponse' <$>
(pure (fromEnum s)) <*> (eitherParseJSON x))
instance Hashable DeleteCampaign where
instance NFData DeleteCampaign where
instance ToHeaders DeleteCampaign where
toHeaders
= const
(mconcat
["Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToPath DeleteCampaign where
toPath DeleteCampaign'{..}
= mconcat
["/v1/apps/", toBS _dcApplicationId, "/campaigns/",
toBS _dcCampaignId]
instance ToQuery DeleteCampaign where
toQuery = const mempty
data DeleteCampaignResponse = DeleteCampaignResponse'
{ _dcrsResponseStatus :: !Int
, _dcrsCampaignResponse :: !CampaignResponse
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deleteCampaignResponse
:: Int
-> CampaignResponse
-> DeleteCampaignResponse
deleteCampaignResponse pResponseStatus_ pCampaignResponse_ =
DeleteCampaignResponse'
{ _dcrsResponseStatus = pResponseStatus_
, _dcrsCampaignResponse = pCampaignResponse_
}
dcrsResponseStatus :: Lens' DeleteCampaignResponse Int
dcrsResponseStatus = lens _dcrsResponseStatus (\ s a -> s{_dcrsResponseStatus = a})
dcrsCampaignResponse :: Lens' DeleteCampaignResponse CampaignResponse
dcrsCampaignResponse = lens _dcrsCampaignResponse (\ s a -> s{_dcrsCampaignResponse = a})
instance NFData DeleteCampaignResponse where