module Network.AWS.Greengrass.UpdateFunctionDefinition
(
updateFunctionDefinition
, UpdateFunctionDefinition
, ufdName
, ufdFunctionDefinitionId
, updateFunctionDefinitionResponse
, UpdateFunctionDefinitionResponse
, ufdrsResponseStatus
) 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 UpdateFunctionDefinition = UpdateFunctionDefinition'
{ _ufdName :: !(Maybe Text)
, _ufdFunctionDefinitionId :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
updateFunctionDefinition
:: Text
-> UpdateFunctionDefinition
updateFunctionDefinition pFunctionDefinitionId_ =
UpdateFunctionDefinition'
{_ufdName = Nothing, _ufdFunctionDefinitionId = pFunctionDefinitionId_}
ufdName :: Lens' UpdateFunctionDefinition (Maybe Text)
ufdName = lens _ufdName (\ s a -> s{_ufdName = a});
ufdFunctionDefinitionId :: Lens' UpdateFunctionDefinition Text
ufdFunctionDefinitionId = lens _ufdFunctionDefinitionId (\ s a -> s{_ufdFunctionDefinitionId = a});
instance AWSRequest UpdateFunctionDefinition where
type Rs UpdateFunctionDefinition =
UpdateFunctionDefinitionResponse
request = putJSON greengrass
response
= receiveEmpty
(\ s h x ->
UpdateFunctionDefinitionResponse' <$>
(pure (fromEnum s)))
instance Hashable UpdateFunctionDefinition where
instance NFData UpdateFunctionDefinition where
instance ToHeaders UpdateFunctionDefinition where
toHeaders
= const
(mconcat
["Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON UpdateFunctionDefinition where
toJSON UpdateFunctionDefinition'{..}
= object (catMaybes [("Name" .=) <$> _ufdName])
instance ToPath UpdateFunctionDefinition where
toPath UpdateFunctionDefinition'{..}
= mconcat
["/greengrass/definition/functions/",
toBS _ufdFunctionDefinitionId]
instance ToQuery UpdateFunctionDefinition where
toQuery = const mempty
newtype UpdateFunctionDefinitionResponse = UpdateFunctionDefinitionResponse'
{ _ufdrsResponseStatus :: Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
updateFunctionDefinitionResponse
:: Int
-> UpdateFunctionDefinitionResponse
updateFunctionDefinitionResponse pResponseStatus_ =
UpdateFunctionDefinitionResponse' {_ufdrsResponseStatus = pResponseStatus_}
ufdrsResponseStatus :: Lens' UpdateFunctionDefinitionResponse Int
ufdrsResponseStatus = lens _ufdrsResponseStatus (\ s a -> s{_ufdrsResponseStatus = a});
instance NFData UpdateFunctionDefinitionResponse
where