module Network.AWS.WorkSpaces.DescribeWorkspacesConnectionStatus
(
describeWorkspacesConnectionStatus
, DescribeWorkspacesConnectionStatus
, dwcsWorkspaceIds
, dwcsNextToken
, describeWorkspacesConnectionStatusResponse
, DescribeWorkspacesConnectionStatusResponse
, dwcsrsNextToken
, dwcsrsWorkspacesConnectionStatus
, dwcsrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.WorkSpaces.Types
import Network.AWS.WorkSpaces.Types.Product
data DescribeWorkspacesConnectionStatus = DescribeWorkspacesConnectionStatus'
{ _dwcsWorkspaceIds :: !(Maybe (List1 Text))
, _dwcsNextToken :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeWorkspacesConnectionStatus
:: DescribeWorkspacesConnectionStatus
describeWorkspacesConnectionStatus =
DescribeWorkspacesConnectionStatus'
{_dwcsWorkspaceIds = Nothing, _dwcsNextToken = Nothing}
dwcsWorkspaceIds :: Lens' DescribeWorkspacesConnectionStatus (Maybe (NonEmpty Text))
dwcsWorkspaceIds = lens _dwcsWorkspaceIds (\ s a -> s{_dwcsWorkspaceIds = a}) . mapping _List1;
dwcsNextToken :: Lens' DescribeWorkspacesConnectionStatus (Maybe Text)
dwcsNextToken = lens _dwcsNextToken (\ s a -> s{_dwcsNextToken = a});
instance AWSRequest
DescribeWorkspacesConnectionStatus
where
type Rs DescribeWorkspacesConnectionStatus =
DescribeWorkspacesConnectionStatusResponse
request = postJSON workSpaces
response
= receiveJSON
(\ s h x ->
DescribeWorkspacesConnectionStatusResponse' <$>
(x .?> "NextToken") <*>
(x .?> "WorkspacesConnectionStatus" .!@ mempty)
<*> (pure (fromEnum s)))
instance Hashable DescribeWorkspacesConnectionStatus
where
instance NFData DescribeWorkspacesConnectionStatus
where
instance ToHeaders DescribeWorkspacesConnectionStatus
where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("WorkspacesService.DescribeWorkspacesConnectionStatus"
:: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON DescribeWorkspacesConnectionStatus
where
toJSON DescribeWorkspacesConnectionStatus'{..}
= object
(catMaybes
[("WorkspaceIds" .=) <$> _dwcsWorkspaceIds,
("NextToken" .=) <$> _dwcsNextToken])
instance ToPath DescribeWorkspacesConnectionStatus
where
toPath = const "/"
instance ToQuery DescribeWorkspacesConnectionStatus
where
toQuery = const mempty
data DescribeWorkspacesConnectionStatusResponse = DescribeWorkspacesConnectionStatusResponse'
{ _dwcsrsNextToken :: !(Maybe Text)
, _dwcsrsWorkspacesConnectionStatus :: !(Maybe [WorkspaceConnectionStatus])
, _dwcsrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeWorkspacesConnectionStatusResponse
:: Int
-> DescribeWorkspacesConnectionStatusResponse
describeWorkspacesConnectionStatusResponse pResponseStatus_ =
DescribeWorkspacesConnectionStatusResponse'
{ _dwcsrsNextToken = Nothing
, _dwcsrsWorkspacesConnectionStatus = Nothing
, _dwcsrsResponseStatus = pResponseStatus_
}
dwcsrsNextToken :: Lens' DescribeWorkspacesConnectionStatusResponse (Maybe Text)
dwcsrsNextToken = lens _dwcsrsNextToken (\ s a -> s{_dwcsrsNextToken = a});
dwcsrsWorkspacesConnectionStatus :: Lens' DescribeWorkspacesConnectionStatusResponse [WorkspaceConnectionStatus]
dwcsrsWorkspacesConnectionStatus = lens _dwcsrsWorkspacesConnectionStatus (\ s a -> s{_dwcsrsWorkspacesConnectionStatus = a}) . _Default . _Coerce;
dwcsrsResponseStatus :: Lens' DescribeWorkspacesConnectionStatusResponse Int
dwcsrsResponseStatus = lens _dwcsrsResponseStatus (\ s a -> s{_dwcsrsResponseStatus = a});
instance NFData
DescribeWorkspacesConnectionStatusResponse
where