module Network.AWS.SSM.UpdateAssociationStatus
(
updateAssociationStatus
, UpdateAssociationStatus
, uasName
, uasInstanceId
, uasAssociationStatus
, updateAssociationStatusResponse
, UpdateAssociationStatusResponse
, uasrsAssociationDescription
, uasrsStatus
) where
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.SSM.Types
import Network.AWS.SSM.Types.Product
data UpdateAssociationStatus = UpdateAssociationStatus'
{ _uasName :: !Text
, _uasInstanceId :: !Text
, _uasAssociationStatus :: !AssociationStatus
} deriving (Eq,Read,Show,Data,Typeable,Generic)
updateAssociationStatus
:: Text
-> Text
-> AssociationStatus
-> UpdateAssociationStatus
updateAssociationStatus pName_ pInstanceId_ pAssociationStatus_ =
UpdateAssociationStatus'
{ _uasName = pName_
, _uasInstanceId = pInstanceId_
, _uasAssociationStatus = pAssociationStatus_
}
uasName :: Lens' UpdateAssociationStatus Text
uasName = lens _uasName (\ s a -> s{_uasName = a});
uasInstanceId :: Lens' UpdateAssociationStatus Text
uasInstanceId = lens _uasInstanceId (\ s a -> s{_uasInstanceId = a});
uasAssociationStatus :: Lens' UpdateAssociationStatus AssociationStatus
uasAssociationStatus = lens _uasAssociationStatus (\ s a -> s{_uasAssociationStatus = a});
instance AWSRequest UpdateAssociationStatus where
type Sv UpdateAssociationStatus = SSM
type Rs UpdateAssociationStatus =
UpdateAssociationStatusResponse
request = postJSON
response
= receiveJSON
(\ s h x ->
UpdateAssociationStatusResponse' <$>
(x .?> "AssociationDescription") <*>
(pure (fromEnum s)))
instance ToHeaders UpdateAssociationStatus where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AmazonSSM.UpdateAssociationStatus" :: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON UpdateAssociationStatus where
toJSON UpdateAssociationStatus'{..}
= object
["Name" .= _uasName, "InstanceId" .= _uasInstanceId,
"AssociationStatus" .= _uasAssociationStatus]
instance ToPath UpdateAssociationStatus where
toPath = const "/"
instance ToQuery UpdateAssociationStatus where
toQuery = const mempty
data UpdateAssociationStatusResponse = UpdateAssociationStatusResponse'
{ _uasrsAssociationDescription :: !(Maybe AssociationDescription)
, _uasrsStatus :: !Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
updateAssociationStatusResponse
:: Int
-> UpdateAssociationStatusResponse
updateAssociationStatusResponse pStatus_ =
UpdateAssociationStatusResponse'
{ _uasrsAssociationDescription = Nothing
, _uasrsStatus = pStatus_
}
uasrsAssociationDescription :: Lens' UpdateAssociationStatusResponse (Maybe AssociationDescription)
uasrsAssociationDescription = lens _uasrsAssociationDescription (\ s a -> s{_uasrsAssociationDescription = a});
uasrsStatus :: Lens' UpdateAssociationStatusResponse Int
uasrsStatus = lens _uasrsStatus (\ s a -> s{_uasrsStatus = a});