{-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} {-# OPTIONS_GHC -fno-warn-unused-binds #-} {-# OPTIONS_GHC -fno-warn-unused-matches #-} -- Derived from AWS service descriptions, licensed under Apache 2.0. -- | -- Module : Network.AWS.SSM.DeleteActivation -- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Deletes an activation. You are not required to delete an activation. If you delete an activation, you can no longer use it to register additional managed instances. Deleting an activation does not de-register managed instances. You must manually de-register managed instances. -- -- module Network.AWS.SSM.DeleteActivation ( -- * Creating a Request deleteActivation , DeleteActivation -- * Request Lenses , daActivationId -- * Destructuring the Response , deleteActivationResponse , DeleteActivationResponse -- * Response Lenses , delersResponseStatus ) where import Network.AWS.Lens import Network.AWS.Prelude import Network.AWS.Request import Network.AWS.Response import Network.AWS.SSM.Types import Network.AWS.SSM.Types.Product -- | /See:/ 'deleteActivation' smart constructor. newtype DeleteActivation = DeleteActivation' { _daActivationId :: Text } deriving (Eq, Read, Show, Data, Typeable, Generic) -- | Creates a value of 'DeleteActivation' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'daActivationId' - The ID of the activation that you want to delete. deleteActivation :: Text -- ^ 'daActivationId' -> DeleteActivation deleteActivation pActivationId_ = DeleteActivation' {_daActivationId = pActivationId_} -- | The ID of the activation that you want to delete. daActivationId :: Lens' DeleteActivation Text daActivationId = lens _daActivationId (\ s a -> s{_daActivationId = a}) instance AWSRequest DeleteActivation where type Rs DeleteActivation = DeleteActivationResponse request = postJSON ssm response = receiveEmpty (\ s h x -> DeleteActivationResponse' <$> (pure (fromEnum s))) instance Hashable DeleteActivation where instance NFData DeleteActivation where instance ToHeaders DeleteActivation where toHeaders = const (mconcat ["X-Amz-Target" =# ("AmazonSSM.DeleteActivation" :: ByteString), "Content-Type" =# ("application/x-amz-json-1.1" :: ByteString)]) instance ToJSON DeleteActivation where toJSON DeleteActivation'{..} = object (catMaybes [Just ("ActivationId" .= _daActivationId)]) instance ToPath DeleteActivation where toPath = const "/" instance ToQuery DeleteActivation where toQuery = const mempty -- | /See:/ 'deleteActivationResponse' smart constructor. newtype DeleteActivationResponse = DeleteActivationResponse' { _delersResponseStatus :: Int } deriving (Eq, Read, Show, Data, Typeable, Generic) -- | Creates a value of 'DeleteActivationResponse' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'delersResponseStatus' - -- | The response status code. deleteActivationResponse :: Int -- ^ 'delersResponseStatus' -> DeleteActivationResponse deleteActivationResponse pResponseStatus_ = DeleteActivationResponse' {_delersResponseStatus = pResponseStatus_} -- | -- | The response status code. delersResponseStatus :: Lens' DeleteActivationResponse Int delersResponseStatus = lens _delersResponseStatus (\ s a -> s{_delersResponseStatus = a}) instance NFData DeleteActivationResponse where