module Network.AWS.Greengrass.UpdateConnectivityInfo
(
updateConnectivityInfo
, UpdateConnectivityInfo
, uciConnectivityInfo
, uciThingName
, updateConnectivityInfoResponse
, UpdateConnectivityInfoResponse
, ucirsVersion
, ucirsMessage
, ucirsResponseStatus
) where
import Network.AWS.Greengrass.Types
import Network.AWS.Greengrass.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data UpdateConnectivityInfo = UpdateConnectivityInfo'
{ _uciConnectivityInfo :: !(Maybe [ConnectivityInfo])
, _uciThingName :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
updateConnectivityInfo
:: Text
-> UpdateConnectivityInfo
updateConnectivityInfo pThingName_ =
UpdateConnectivityInfo'
{_uciConnectivityInfo = Nothing, _uciThingName = pThingName_}
uciConnectivityInfo :: Lens' UpdateConnectivityInfo [ConnectivityInfo]
uciConnectivityInfo = lens _uciConnectivityInfo (\ s a -> s{_uciConnectivityInfo = a}) . _Default . _Coerce;
uciThingName :: Lens' UpdateConnectivityInfo Text
uciThingName = lens _uciThingName (\ s a -> s{_uciThingName = a});
instance AWSRequest UpdateConnectivityInfo where
type Rs UpdateConnectivityInfo =
UpdateConnectivityInfoResponse
request = putJSON greengrass
response
= receiveJSON
(\ s h x ->
UpdateConnectivityInfoResponse' <$>
(x .?> "Version") <*> (x .?> "message") <*>
(pure (fromEnum s)))
instance Hashable UpdateConnectivityInfo where
instance NFData UpdateConnectivityInfo where
instance ToHeaders UpdateConnectivityInfo where
toHeaders
= const
(mconcat
["Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON UpdateConnectivityInfo where
toJSON UpdateConnectivityInfo'{..}
= object
(catMaybes
[("ConnectivityInfo" .=) <$> _uciConnectivityInfo])
instance ToPath UpdateConnectivityInfo where
toPath UpdateConnectivityInfo'{..}
= mconcat
["/greengrass/things/", toBS _uciThingName,
"/connectivityInfo"]
instance ToQuery UpdateConnectivityInfo where
toQuery = const mempty
data UpdateConnectivityInfoResponse = UpdateConnectivityInfoResponse'
{ _ucirsVersion :: !(Maybe Text)
, _ucirsMessage :: !(Maybe Text)
, _ucirsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
updateConnectivityInfoResponse
:: Int
-> UpdateConnectivityInfoResponse
updateConnectivityInfoResponse pResponseStatus_ =
UpdateConnectivityInfoResponse'
{ _ucirsVersion = Nothing
, _ucirsMessage = Nothing
, _ucirsResponseStatus = pResponseStatus_
}
ucirsVersion :: Lens' UpdateConnectivityInfoResponse (Maybe Text)
ucirsVersion = lens _ucirsVersion (\ s a -> s{_ucirsVersion = a});
ucirsMessage :: Lens' UpdateConnectivityInfoResponse (Maybe Text)
ucirsMessage = lens _ucirsMessage (\ s a -> s{_ucirsMessage = a});
ucirsResponseStatus :: Lens' UpdateConnectivityInfoResponse Int
ucirsResponseStatus = lens _ucirsResponseStatus (\ s a -> s{_ucirsResponseStatus = a});
instance NFData UpdateConnectivityInfoResponse where