{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE StrictData #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE NoImplicitPrelude #-} {-# OPTIONS_GHC -fno-warn-unused-binds #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} {-# OPTIONS_GHC -fno-warn-unused-matches #-} -- Derived from AWS service descriptions, licensed under Apache 2.0. -- | -- Module : Amazonka.SMS.DisassociateConnector -- Copyright : (c) 2013-2023 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Disassociates the specified connector from Server Migration Service. -- -- After you disassociate a connector, it is no longer available to support -- replication jobs. module Amazonka.SMS.DisassociateConnector ( -- * Creating a Request DisassociateConnector (..), newDisassociateConnector, -- * Request Lenses disassociateConnector_connectorId, -- * Destructuring the Response DisassociateConnectorResponse (..), newDisassociateConnectorResponse, -- * Response Lenses disassociateConnectorResponse_httpStatus, ) where import qualified Amazonka.Core as Core import qualified Amazonka.Core.Lens.Internal as Lens import qualified Amazonka.Data as Data import qualified Amazonka.Prelude as Prelude import qualified Amazonka.Request as Request import qualified Amazonka.Response as Response import Amazonka.SMS.Types -- | /See:/ 'newDisassociateConnector' smart constructor. data DisassociateConnector = DisassociateConnector' { -- | The ID of the connector. connectorId :: Prelude.Text } deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic) -- | -- Create a value of 'DisassociateConnector' with all optional fields omitted. -- -- Use or to modify other optional fields. -- -- The following record fields are available, with the corresponding lenses provided -- for backwards compatibility: -- -- 'connectorId', 'disassociateConnector_connectorId' - The ID of the connector. newDisassociateConnector :: -- | 'connectorId' Prelude.Text -> DisassociateConnector newDisassociateConnector pConnectorId_ = DisassociateConnector' {connectorId = pConnectorId_} -- | The ID of the connector. disassociateConnector_connectorId :: Lens.Lens' DisassociateConnector Prelude.Text disassociateConnector_connectorId = Lens.lens (\DisassociateConnector' {connectorId} -> connectorId) (\s@DisassociateConnector' {} a -> s {connectorId = a} :: DisassociateConnector) instance Core.AWSRequest DisassociateConnector where type AWSResponse DisassociateConnector = DisassociateConnectorResponse request overrides = Request.postJSON (overrides defaultService) response = Response.receiveEmpty ( \s h x -> DisassociateConnectorResponse' Prelude.<$> (Prelude.pure (Prelude.fromEnum s)) ) instance Prelude.Hashable DisassociateConnector where hashWithSalt _salt DisassociateConnector' {..} = _salt `Prelude.hashWithSalt` connectorId instance Prelude.NFData DisassociateConnector where rnf DisassociateConnector' {..} = Prelude.rnf connectorId instance Data.ToHeaders DisassociateConnector where toHeaders = Prelude.const ( Prelude.mconcat [ "X-Amz-Target" Data.=# ( "AWSServerMigrationService_V2016_10_24.DisassociateConnector" :: Prelude.ByteString ), "Content-Type" Data.=# ( "application/x-amz-json-1.1" :: Prelude.ByteString ) ] ) instance Data.ToJSON DisassociateConnector where toJSON DisassociateConnector' {..} = Data.object ( Prelude.catMaybes [Prelude.Just ("connectorId" Data..= connectorId)] ) instance Data.ToPath DisassociateConnector where toPath = Prelude.const "/" instance Data.ToQuery DisassociateConnector where toQuery = Prelude.const Prelude.mempty -- | /See:/ 'newDisassociateConnectorResponse' smart constructor. data DisassociateConnectorResponse = DisassociateConnectorResponse' { -- | The response's http status code. httpStatus :: Prelude.Int } deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic) -- | -- Create a value of 'DisassociateConnectorResponse' with all optional fields omitted. -- -- Use or to modify other optional fields. -- -- The following record fields are available, with the corresponding lenses provided -- for backwards compatibility: -- -- 'httpStatus', 'disassociateConnectorResponse_httpStatus' - The response's http status code. newDisassociateConnectorResponse :: -- | 'httpStatus' Prelude.Int -> DisassociateConnectorResponse newDisassociateConnectorResponse pHttpStatus_ = DisassociateConnectorResponse' { httpStatus = pHttpStatus_ } -- | The response's http status code. disassociateConnectorResponse_httpStatus :: Lens.Lens' DisassociateConnectorResponse Prelude.Int disassociateConnectorResponse_httpStatus = Lens.lens (\DisassociateConnectorResponse' {httpStatus} -> httpStatus) (\s@DisassociateConnectorResponse' {} a -> s {httpStatus = a} :: DisassociateConnectorResponse) instance Prelude.NFData DisassociateConnectorResponse where rnf DisassociateConnectorResponse' {..} = Prelude.rnf httpStatus