{-# 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.AppStream.DeleteFleet -- Copyright : (c) 2013-2023 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Deletes the specified fleet. module Amazonka.AppStream.DeleteFleet ( -- * Creating a Request DeleteFleet (..), newDeleteFleet, -- * Request Lenses deleteFleet_name, -- * Destructuring the Response DeleteFleetResponse (..), newDeleteFleetResponse, -- * Response Lenses deleteFleetResponse_httpStatus, ) where import Amazonka.AppStream.Types 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 -- | /See:/ 'newDeleteFleet' smart constructor. data DeleteFleet = DeleteFleet' { -- | The name of the fleet. name :: Prelude.Text } deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic) -- | -- Create a value of 'DeleteFleet' 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: -- -- 'name', 'deleteFleet_name' - The name of the fleet. newDeleteFleet :: -- | 'name' Prelude.Text -> DeleteFleet newDeleteFleet pName_ = DeleteFleet' {name = pName_} -- | The name of the fleet. deleteFleet_name :: Lens.Lens' DeleteFleet Prelude.Text deleteFleet_name = Lens.lens (\DeleteFleet' {name} -> name) (\s@DeleteFleet' {} a -> s {name = a} :: DeleteFleet) instance Core.AWSRequest DeleteFleet where type AWSResponse DeleteFleet = DeleteFleetResponse request overrides = Request.postJSON (overrides defaultService) response = Response.receiveEmpty ( \s h x -> DeleteFleetResponse' Prelude.<$> (Prelude.pure (Prelude.fromEnum s)) ) instance Prelude.Hashable DeleteFleet where hashWithSalt _salt DeleteFleet' {..} = _salt `Prelude.hashWithSalt` name instance Prelude.NFData DeleteFleet where rnf DeleteFleet' {..} = Prelude.rnf name instance Data.ToHeaders DeleteFleet where toHeaders = Prelude.const ( Prelude.mconcat [ "X-Amz-Target" Data.=# ( "PhotonAdminProxyService.DeleteFleet" :: Prelude.ByteString ), "Content-Type" Data.=# ( "application/x-amz-json-1.1" :: Prelude.ByteString ) ] ) instance Data.ToJSON DeleteFleet where toJSON DeleteFleet' {..} = Data.object ( Prelude.catMaybes [Prelude.Just ("Name" Data..= name)] ) instance Data.ToPath DeleteFleet where toPath = Prelude.const "/" instance Data.ToQuery DeleteFleet where toQuery = Prelude.const Prelude.mempty -- | /See:/ 'newDeleteFleetResponse' smart constructor. data DeleteFleetResponse = DeleteFleetResponse' { -- | The response's http status code. httpStatus :: Prelude.Int } deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic) -- | -- Create a value of 'DeleteFleetResponse' 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', 'deleteFleetResponse_httpStatus' - The response's http status code. newDeleteFleetResponse :: -- | 'httpStatus' Prelude.Int -> DeleteFleetResponse newDeleteFleetResponse pHttpStatus_ = DeleteFleetResponse' {httpStatus = pHttpStatus_} -- | The response's http status code. deleteFleetResponse_httpStatus :: Lens.Lens' DeleteFleetResponse Prelude.Int deleteFleetResponse_httpStatus = Lens.lens (\DeleteFleetResponse' {httpStatus} -> httpStatus) (\s@DeleteFleetResponse' {} a -> s {httpStatus = a} :: DeleteFleetResponse) instance Prelude.NFData DeleteFleetResponse where rnf DeleteFleetResponse' {..} = Prelude.rnf httpStatus