{-# 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.SSM.ListInventoryEntries
(
listInventoryEntries
, ListInventoryEntries
, lieFilters
, lieNextToken
, lieMaxResults
, lieInstanceId
, lieTypeName
, listInventoryEntriesResponse
, ListInventoryEntriesResponse
, liersInstanceId
, liersTypeName
, liersEntries
, liersSchemaVersion
, liersCaptureTime
, liersNextToken
, liersResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.SSM.Types
import Network.AWS.SSM.Types.Product
data ListInventoryEntries = ListInventoryEntries'
{ _lieFilters :: !(Maybe (List1 InventoryFilter))
, _lieNextToken :: !(Maybe Text)
, _lieMaxResults :: !(Maybe Nat)
, _lieInstanceId :: !Text
, _lieTypeName :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listInventoryEntries
:: Text
-> Text
-> ListInventoryEntries
listInventoryEntries pInstanceId_ pTypeName_ =
ListInventoryEntries'
{ _lieFilters = Nothing
, _lieNextToken = Nothing
, _lieMaxResults = Nothing
, _lieInstanceId = pInstanceId_
, _lieTypeName = pTypeName_
}
lieFilters :: Lens' ListInventoryEntries (Maybe (NonEmpty InventoryFilter))
lieFilters = lens _lieFilters (\ s a -> s{_lieFilters = a}) . mapping _List1
lieNextToken :: Lens' ListInventoryEntries (Maybe Text)
lieNextToken = lens _lieNextToken (\ s a -> s{_lieNextToken = a})
lieMaxResults :: Lens' ListInventoryEntries (Maybe Natural)
lieMaxResults = lens _lieMaxResults (\ s a -> s{_lieMaxResults = a}) . mapping _Nat
lieInstanceId :: Lens' ListInventoryEntries Text
lieInstanceId = lens _lieInstanceId (\ s a -> s{_lieInstanceId = a})
lieTypeName :: Lens' ListInventoryEntries Text
lieTypeName = lens _lieTypeName (\ s a -> s{_lieTypeName = a})
instance AWSRequest ListInventoryEntries where
type Rs ListInventoryEntries =
ListInventoryEntriesResponse
request = postJSON ssm
response
= receiveJSON
(\ s h x ->
ListInventoryEntriesResponse' <$>
(x .?> "InstanceId") <*> (x .?> "TypeName") <*>
(x .?> "Entries" .!@ mempty)
<*> (x .?> "SchemaVersion")
<*> (x .?> "CaptureTime")
<*> (x .?> "NextToken")
<*> (pure (fromEnum s)))
instance Hashable ListInventoryEntries where
instance NFData ListInventoryEntries where
instance ToHeaders ListInventoryEntries where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AmazonSSM.ListInventoryEntries" :: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON ListInventoryEntries where
toJSON ListInventoryEntries'{..}
= object
(catMaybes
[("Filters" .=) <$> _lieFilters,
("NextToken" .=) <$> _lieNextToken,
("MaxResults" .=) <$> _lieMaxResults,
Just ("InstanceId" .= _lieInstanceId),
Just ("TypeName" .= _lieTypeName)])
instance ToPath ListInventoryEntries where
toPath = const "/"
instance ToQuery ListInventoryEntries where
toQuery = const mempty
data ListInventoryEntriesResponse = ListInventoryEntriesResponse'
{ _liersInstanceId :: !(Maybe Text)
, _liersTypeName :: !(Maybe Text)
, _liersEntries :: !(Maybe [Map Text Text])
, _liersSchemaVersion :: !(Maybe Text)
, _liersCaptureTime :: !(Maybe Text)
, _liersNextToken :: !(Maybe Text)
, _liersResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
listInventoryEntriesResponse
:: Int
-> ListInventoryEntriesResponse
listInventoryEntriesResponse pResponseStatus_ =
ListInventoryEntriesResponse'
{ _liersInstanceId = Nothing
, _liersTypeName = Nothing
, _liersEntries = Nothing
, _liersSchemaVersion = Nothing
, _liersCaptureTime = Nothing
, _liersNextToken = Nothing
, _liersResponseStatus = pResponseStatus_
}
liersInstanceId :: Lens' ListInventoryEntriesResponse (Maybe Text)
liersInstanceId = lens _liersInstanceId (\ s a -> s{_liersInstanceId = a})
liersTypeName :: Lens' ListInventoryEntriesResponse (Maybe Text)
liersTypeName = lens _liersTypeName (\ s a -> s{_liersTypeName = a})
liersEntries :: Lens' ListInventoryEntriesResponse [HashMap Text Text]
liersEntries = lens _liersEntries (\ s a -> s{_liersEntries = a}) . _Default . _Coerce
liersSchemaVersion :: Lens' ListInventoryEntriesResponse (Maybe Text)
liersSchemaVersion = lens _liersSchemaVersion (\ s a -> s{_liersSchemaVersion = a})
liersCaptureTime :: Lens' ListInventoryEntriesResponse (Maybe Text)
liersCaptureTime = lens _liersCaptureTime (\ s a -> s{_liersCaptureTime = a})
liersNextToken :: Lens' ListInventoryEntriesResponse (Maybe Text)
liersNextToken = lens _liersNextToken (\ s a -> s{_liersNextToken = a})
liersResponseStatus :: Lens' ListInventoryEntriesResponse Int
liersResponseStatus = lens _liersResponseStatus (\ s a -> s{_liersResponseStatus = a})
instance NFData ListInventoryEntriesResponse where