{-# 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.GetEndpoint
(
getEndpoint
, GetEndpoint
, geApplicationId
, geEndpointId
, getEndpointResponse
, GetEndpointResponse
, gersResponseStatus
, gersEndpointResponse
) 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 GetEndpoint = GetEndpoint'
{ _geApplicationId :: !Text
, _geEndpointId :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
getEndpoint
:: Text
-> Text
-> GetEndpoint
getEndpoint pApplicationId_ pEndpointId_ =
GetEndpoint'
{_geApplicationId = pApplicationId_, _geEndpointId = pEndpointId_}
geApplicationId :: Lens' GetEndpoint Text
geApplicationId = lens _geApplicationId (\ s a -> s{_geApplicationId = a})
geEndpointId :: Lens' GetEndpoint Text
geEndpointId = lens _geEndpointId (\ s a -> s{_geEndpointId = a})
instance AWSRequest GetEndpoint where
type Rs GetEndpoint = GetEndpointResponse
request = get pinpoint
response
= receiveJSON
(\ s h x ->
GetEndpointResponse' <$>
(pure (fromEnum s)) <*> (eitherParseJSON x))
instance Hashable GetEndpoint where
instance NFData GetEndpoint where
instance ToHeaders GetEndpoint where
toHeaders
= const
(mconcat
["Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToPath GetEndpoint where
toPath GetEndpoint'{..}
= mconcat
["/v1/apps/", toBS _geApplicationId, "/endpoints/",
toBS _geEndpointId]
instance ToQuery GetEndpoint where
toQuery = const mempty
data GetEndpointResponse = GetEndpointResponse'
{ _gersResponseStatus :: !Int
, _gersEndpointResponse :: !EndpointResponse
} deriving (Eq, Read, Show, Data, Typeable, Generic)
getEndpointResponse
:: Int
-> EndpointResponse
-> GetEndpointResponse
getEndpointResponse pResponseStatus_ pEndpointResponse_ =
GetEndpointResponse'
{ _gersResponseStatus = pResponseStatus_
, _gersEndpointResponse = pEndpointResponse_
}
gersResponseStatus :: Lens' GetEndpointResponse Int
gersResponseStatus = lens _gersResponseStatus (\ s a -> s{_gersResponseStatus = a})
gersEndpointResponse :: Lens' GetEndpointResponse EndpointResponse
gersEndpointResponse = lens _gersEndpointResponse (\ s a -> s{_gersEndpointResponse = a})
instance NFData GetEndpointResponse where