{-# 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.SageMaker.ListEndpointConfigs
(
listEndpointConfigs
, ListEndpointConfigs
, lecNameContains
, lecCreationTimeAfter
, lecNextToken
, lecSortOrder
, lecCreationTimeBefore
, lecMaxResults
, lecSortBy
, listEndpointConfigsResponse
, ListEndpointConfigsResponse
, lecrsNextToken
, lecrsResponseStatus
, lecrsEndpointConfigs
) where
import Network.AWS.Lens
import Network.AWS.Pager
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.SageMaker.Types
import Network.AWS.SageMaker.Types.Product
data ListEndpointConfigs = ListEndpointConfigs'
{ _lecNameContains :: !(Maybe Text)
, _lecCreationTimeAfter :: !(Maybe POSIX)
, _lecNextToken :: !(Maybe Text)
, _lecSortOrder :: !(Maybe OrderKey)
, _lecCreationTimeBefore :: !(Maybe POSIX)
, _lecMaxResults :: !(Maybe Nat)
, _lecSortBy :: !(Maybe EndpointConfigSortKey)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listEndpointConfigs
:: ListEndpointConfigs
listEndpointConfigs =
ListEndpointConfigs'
{ _lecNameContains = Nothing
, _lecCreationTimeAfter = Nothing
, _lecNextToken = Nothing
, _lecSortOrder = Nothing
, _lecCreationTimeBefore = Nothing
, _lecMaxResults = Nothing
, _lecSortBy = Nothing
}
lecNameContains :: Lens' ListEndpointConfigs (Maybe Text)
lecNameContains = lens _lecNameContains (\ s a -> s{_lecNameContains = a})
lecCreationTimeAfter :: Lens' ListEndpointConfigs (Maybe UTCTime)
lecCreationTimeAfter = lens _lecCreationTimeAfter (\ s a -> s{_lecCreationTimeAfter = a}) . mapping _Time
lecNextToken :: Lens' ListEndpointConfigs (Maybe Text)
lecNextToken = lens _lecNextToken (\ s a -> s{_lecNextToken = a})
lecSortOrder :: Lens' ListEndpointConfigs (Maybe OrderKey)
lecSortOrder = lens _lecSortOrder (\ s a -> s{_lecSortOrder = a})
lecCreationTimeBefore :: Lens' ListEndpointConfigs (Maybe UTCTime)
lecCreationTimeBefore = lens _lecCreationTimeBefore (\ s a -> s{_lecCreationTimeBefore = a}) . mapping _Time
lecMaxResults :: Lens' ListEndpointConfigs (Maybe Natural)
lecMaxResults = lens _lecMaxResults (\ s a -> s{_lecMaxResults = a}) . mapping _Nat
lecSortBy :: Lens' ListEndpointConfigs (Maybe EndpointConfigSortKey)
lecSortBy = lens _lecSortBy (\ s a -> s{_lecSortBy = a})
instance AWSPager ListEndpointConfigs where
page rq rs
| stop (rs ^. lecrsNextToken) = Nothing
| stop (rs ^. lecrsEndpointConfigs) = Nothing
| otherwise =
Just $ rq & lecNextToken .~ rs ^. lecrsNextToken
instance AWSRequest ListEndpointConfigs where
type Rs ListEndpointConfigs =
ListEndpointConfigsResponse
request = postJSON sageMaker
response
= receiveJSON
(\ s h x ->
ListEndpointConfigsResponse' <$>
(x .?> "NextToken") <*> (pure (fromEnum s)) <*>
(x .?> "EndpointConfigs" .!@ mempty))
instance Hashable ListEndpointConfigs where
instance NFData ListEndpointConfigs where
instance ToHeaders ListEndpointConfigs where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("SageMaker.ListEndpointConfigs" :: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON ListEndpointConfigs where
toJSON ListEndpointConfigs'{..}
= object
(catMaybes
[("NameContains" .=) <$> _lecNameContains,
("CreationTimeAfter" .=) <$> _lecCreationTimeAfter,
("NextToken" .=) <$> _lecNextToken,
("SortOrder" .=) <$> _lecSortOrder,
("CreationTimeBefore" .=) <$> _lecCreationTimeBefore,
("MaxResults" .=) <$> _lecMaxResults,
("SortBy" .=) <$> _lecSortBy])
instance ToPath ListEndpointConfigs where
toPath = const "/"
instance ToQuery ListEndpointConfigs where
toQuery = const mempty
data ListEndpointConfigsResponse = ListEndpointConfigsResponse'
{ _lecrsNextToken :: !(Maybe Text)
, _lecrsResponseStatus :: !Int
, _lecrsEndpointConfigs :: ![EndpointConfigSummary]
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listEndpointConfigsResponse
:: Int
-> ListEndpointConfigsResponse
listEndpointConfigsResponse pResponseStatus_ =
ListEndpointConfigsResponse'
{ _lecrsNextToken = Nothing
, _lecrsResponseStatus = pResponseStatus_
, _lecrsEndpointConfigs = mempty
}
lecrsNextToken :: Lens' ListEndpointConfigsResponse (Maybe Text)
lecrsNextToken = lens _lecrsNextToken (\ s a -> s{_lecrsNextToken = a})
lecrsResponseStatus :: Lens' ListEndpointConfigsResponse Int
lecrsResponseStatus = lens _lecrsResponseStatus (\ s a -> s{_lecrsResponseStatus = a})
lecrsEndpointConfigs :: Lens' ListEndpointConfigsResponse [EndpointConfigSummary]
lecrsEndpointConfigs = lens _lecrsEndpointConfigs (\ s a -> s{_lecrsEndpointConfigs = a}) . _Coerce
instance NFData ListEndpointConfigsResponse where