{-# 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.DeviceFarm.ListVPCEConfigurations -- Copyright : (c) 2013-2023 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Returns information about all Amazon Virtual Private Cloud (VPC) -- endpoint configurations in the AWS account. -- -- This operation returns paginated results. module Amazonka.DeviceFarm.ListVPCEConfigurations ( -- * Creating a Request ListVPCEConfigurations (..), newListVPCEConfigurations, -- * Request Lenses listVPCEConfigurations_maxResults, listVPCEConfigurations_nextToken, -- * Destructuring the Response ListVPCEConfigurationsResponse (..), newListVPCEConfigurationsResponse, -- * Response Lenses listVPCEConfigurationsResponse_nextToken, listVPCEConfigurationsResponse_vpceConfigurations, listVPCEConfigurationsResponse_httpStatus, ) where import qualified Amazonka.Core as Core import qualified Amazonka.Core.Lens.Internal as Lens import qualified Amazonka.Data as Data import Amazonka.DeviceFarm.Types import qualified Amazonka.Prelude as Prelude import qualified Amazonka.Request as Request import qualified Amazonka.Response as Response -- | /See:/ 'newListVPCEConfigurations' smart constructor. data ListVPCEConfigurations = ListVPCEConfigurations' { -- | An integer that specifies the maximum number of items you want to return -- in the API response. maxResults :: Prelude.Maybe Prelude.Int, -- | An identifier that was returned from the previous call to this -- operation, which can be used to return the next set of items in the -- list. nextToken :: Prelude.Maybe Prelude.Text } deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic) -- | -- Create a value of 'ListVPCEConfigurations' 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: -- -- 'maxResults', 'listVPCEConfigurations_maxResults' - An integer that specifies the maximum number of items you want to return -- in the API response. -- -- 'nextToken', 'listVPCEConfigurations_nextToken' - An identifier that was returned from the previous call to this -- operation, which can be used to return the next set of items in the -- list. newListVPCEConfigurations :: ListVPCEConfigurations newListVPCEConfigurations = ListVPCEConfigurations' { maxResults = Prelude.Nothing, nextToken = Prelude.Nothing } -- | An integer that specifies the maximum number of items you want to return -- in the API response. listVPCEConfigurations_maxResults :: Lens.Lens' ListVPCEConfigurations (Prelude.Maybe Prelude.Int) listVPCEConfigurations_maxResults = Lens.lens (\ListVPCEConfigurations' {maxResults} -> maxResults) (\s@ListVPCEConfigurations' {} a -> s {maxResults = a} :: ListVPCEConfigurations) -- | An identifier that was returned from the previous call to this -- operation, which can be used to return the next set of items in the -- list. listVPCEConfigurations_nextToken :: Lens.Lens' ListVPCEConfigurations (Prelude.Maybe Prelude.Text) listVPCEConfigurations_nextToken = Lens.lens (\ListVPCEConfigurations' {nextToken} -> nextToken) (\s@ListVPCEConfigurations' {} a -> s {nextToken = a} :: ListVPCEConfigurations) instance Core.AWSPager ListVPCEConfigurations where page rq rs | Core.stop ( rs Lens.^? listVPCEConfigurationsResponse_nextToken Prelude.. Lens._Just ) = Prelude.Nothing | Core.stop ( rs Lens.^? listVPCEConfigurationsResponse_vpceConfigurations Prelude.. Lens._Just ) = Prelude.Nothing | Prelude.otherwise = Prelude.Just Prelude.$ rq Prelude.& listVPCEConfigurations_nextToken Lens..~ rs Lens.^? listVPCEConfigurationsResponse_nextToken Prelude.. Lens._Just instance Core.AWSRequest ListVPCEConfigurations where type AWSResponse ListVPCEConfigurations = ListVPCEConfigurationsResponse request overrides = Request.postJSON (overrides defaultService) response = Response.receiveJSON ( \s h x -> ListVPCEConfigurationsResponse' Prelude.<$> (x Data..?> "nextToken") Prelude.<*> ( x Data..?> "vpceConfigurations" Core..!@ Prelude.mempty ) Prelude.<*> (Prelude.pure (Prelude.fromEnum s)) ) instance Prelude.Hashable ListVPCEConfigurations where hashWithSalt _salt ListVPCEConfigurations' {..} = _salt `Prelude.hashWithSalt` maxResults `Prelude.hashWithSalt` nextToken instance Prelude.NFData ListVPCEConfigurations where rnf ListVPCEConfigurations' {..} = Prelude.rnf maxResults `Prelude.seq` Prelude.rnf nextToken instance Data.ToHeaders ListVPCEConfigurations where toHeaders = Prelude.const ( Prelude.mconcat [ "X-Amz-Target" Data.=# ( "DeviceFarm_20150623.ListVPCEConfigurations" :: Prelude.ByteString ), "Content-Type" Data.=# ( "application/x-amz-json-1.1" :: Prelude.ByteString ) ] ) instance Data.ToJSON ListVPCEConfigurations where toJSON ListVPCEConfigurations' {..} = Data.object ( Prelude.catMaybes [ ("maxResults" Data..=) Prelude.<$> maxResults, ("nextToken" Data..=) Prelude.<$> nextToken ] ) instance Data.ToPath ListVPCEConfigurations where toPath = Prelude.const "/" instance Data.ToQuery ListVPCEConfigurations where toQuery = Prelude.const Prelude.mempty -- | /See:/ 'newListVPCEConfigurationsResponse' smart constructor. data ListVPCEConfigurationsResponse = ListVPCEConfigurationsResponse' { -- | An identifier that was returned from the previous call to this -- operation, which can be used to return the next set of items in the -- list. nextToken :: Prelude.Maybe Prelude.Text, -- | An array of @VPCEConfiguration@ objects that contain information about -- your VPC endpoint configuration. vpceConfigurations :: Prelude.Maybe [VPCEConfiguration], -- | The response's http status code. httpStatus :: Prelude.Int } deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic) -- | -- Create a value of 'ListVPCEConfigurationsResponse' 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: -- -- 'nextToken', 'listVPCEConfigurationsResponse_nextToken' - An identifier that was returned from the previous call to this -- operation, which can be used to return the next set of items in the -- list. -- -- 'vpceConfigurations', 'listVPCEConfigurationsResponse_vpceConfigurations' - An array of @VPCEConfiguration@ objects that contain information about -- your VPC endpoint configuration. -- -- 'httpStatus', 'listVPCEConfigurationsResponse_httpStatus' - The response's http status code. newListVPCEConfigurationsResponse :: -- | 'httpStatus' Prelude.Int -> ListVPCEConfigurationsResponse newListVPCEConfigurationsResponse pHttpStatus_ = ListVPCEConfigurationsResponse' { nextToken = Prelude.Nothing, vpceConfigurations = Prelude.Nothing, httpStatus = pHttpStatus_ } -- | An identifier that was returned from the previous call to this -- operation, which can be used to return the next set of items in the -- list. listVPCEConfigurationsResponse_nextToken :: Lens.Lens' ListVPCEConfigurationsResponse (Prelude.Maybe Prelude.Text) listVPCEConfigurationsResponse_nextToken = Lens.lens (\ListVPCEConfigurationsResponse' {nextToken} -> nextToken) (\s@ListVPCEConfigurationsResponse' {} a -> s {nextToken = a} :: ListVPCEConfigurationsResponse) -- | An array of @VPCEConfiguration@ objects that contain information about -- your VPC endpoint configuration. listVPCEConfigurationsResponse_vpceConfigurations :: Lens.Lens' ListVPCEConfigurationsResponse (Prelude.Maybe [VPCEConfiguration]) listVPCEConfigurationsResponse_vpceConfigurations = Lens.lens (\ListVPCEConfigurationsResponse' {vpceConfigurations} -> vpceConfigurations) (\s@ListVPCEConfigurationsResponse' {} a -> s {vpceConfigurations = a} :: ListVPCEConfigurationsResponse) Prelude.. Lens.mapping Lens.coerced -- | The response's http status code. listVPCEConfigurationsResponse_httpStatus :: Lens.Lens' ListVPCEConfigurationsResponse Prelude.Int listVPCEConfigurationsResponse_httpStatus = Lens.lens (\ListVPCEConfigurationsResponse' {httpStatus} -> httpStatus) (\s@ListVPCEConfigurationsResponse' {} a -> s {httpStatus = a} :: ListVPCEConfigurationsResponse) instance Prelude.NFData ListVPCEConfigurationsResponse where rnf ListVPCEConfigurationsResponse' {..} = Prelude.rnf nextToken `Prelude.seq` Prelude.rnf vpceConfigurations `Prelude.seq` Prelude.rnf httpStatus