module Network.AWS.SSM.UpdateAssociationStatus
(
UpdateAssociationStatus
, updateAssociationStatus
, uasAssociationStatus
, uasInstanceId
, uasName
, UpdateAssociationStatusResponse
, updateAssociationStatusResponse
, uasrAssociationDescription
) where
import Network.AWS.Prelude
import Network.AWS.Request.JSON
import Network.AWS.SSM.Types
import qualified GHC.Exts
data UpdateAssociationStatus = UpdateAssociationStatus
{ _uasAssociationStatus :: AssociationStatus
, _uasInstanceId :: Text
, _uasName :: Text
} deriving (Eq, Read, Show)
updateAssociationStatus :: Text
-> Text
-> AssociationStatus
-> UpdateAssociationStatus
updateAssociationStatus p1 p2 p3 = UpdateAssociationStatus
{ _uasName = p1
, _uasInstanceId = p2
, _uasAssociationStatus = p3
}
uasAssociationStatus :: Lens' UpdateAssociationStatus AssociationStatus
uasAssociationStatus =
lens _uasAssociationStatus (\s a -> s { _uasAssociationStatus = a })
uasInstanceId :: Lens' UpdateAssociationStatus Text
uasInstanceId = lens _uasInstanceId (\s a -> s { _uasInstanceId = a })
uasName :: Lens' UpdateAssociationStatus Text
uasName = lens _uasName (\s a -> s { _uasName = a })
newtype UpdateAssociationStatusResponse = UpdateAssociationStatusResponse
{ _uasrAssociationDescription :: Maybe AssociationDescription
} deriving (Eq, Read, Show)
updateAssociationStatusResponse :: UpdateAssociationStatusResponse
updateAssociationStatusResponse = UpdateAssociationStatusResponse
{ _uasrAssociationDescription = Nothing
}
uasrAssociationDescription :: Lens' UpdateAssociationStatusResponse (Maybe AssociationDescription)
uasrAssociationDescription =
lens _uasrAssociationDescription
(\s a -> s { _uasrAssociationDescription = a })
instance ToPath UpdateAssociationStatus where
toPath = const "/"
instance ToQuery UpdateAssociationStatus where
toQuery = const mempty
instance ToHeaders UpdateAssociationStatus
instance ToJSON UpdateAssociationStatus where
toJSON UpdateAssociationStatus{..} = object
[ "Name" .= _uasName
, "InstanceId" .= _uasInstanceId
, "AssociationStatus" .= _uasAssociationStatus
]
instance AWSRequest UpdateAssociationStatus where
type Sv UpdateAssociationStatus = SSM
type Rs UpdateAssociationStatus = UpdateAssociationStatusResponse
request = post "UpdateAssociationStatus"
response = jsonResponse
instance FromJSON UpdateAssociationStatusResponse where
parseJSON = withObject "UpdateAssociationStatusResponse" $ \o -> UpdateAssociationStatusResponse
<$> o .:? "AssociationDescription"