amazonka-migration-hub-refactor-spaces (empty) → 2.0
raw patch · 114 files changed
+13091/−0 lines, 114 filesdep +amazonka-coredep +amazonka-migration-hub-refactor-spacesdep +amazonka-test
Dependencies added: amazonka-core, amazonka-migration-hub-refactor-spaces, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-migration-hub-refactor-spaces.cabal +137/−0
- fixture/CreateApplication.yaml +10/−0
- fixture/CreateApplicationResponse.proto +0/−0
- fixture/CreateEnvironment.yaml +10/−0
- fixture/CreateEnvironmentResponse.proto +0/−0
- fixture/CreateRoute.yaml +10/−0
- fixture/CreateRouteResponse.proto +0/−0
- fixture/CreateService.yaml +10/−0
- fixture/CreateServiceResponse.proto +0/−0
- fixture/DeleteApplication.yaml +10/−0
- fixture/DeleteApplicationResponse.proto +0/−0
- fixture/DeleteEnvironment.yaml +10/−0
- fixture/DeleteEnvironmentResponse.proto +0/−0
- fixture/DeleteResourcePolicy.yaml +10/−0
- fixture/DeleteResourcePolicyResponse.proto +0/−0
- fixture/DeleteRoute.yaml +10/−0
- fixture/DeleteRouteResponse.proto +0/−0
- fixture/DeleteService.yaml +10/−0
- fixture/DeleteServiceResponse.proto +0/−0
- fixture/GetApplication.yaml +10/−0
- fixture/GetApplicationResponse.proto +0/−0
- fixture/GetEnvironment.yaml +10/−0
- fixture/GetEnvironmentResponse.proto +0/−0
- fixture/GetResourcePolicy.yaml +10/−0
- fixture/GetResourcePolicyResponse.proto +0/−0
- fixture/GetRoute.yaml +10/−0
- fixture/GetRouteResponse.proto +0/−0
- fixture/GetService.yaml +10/−0
- fixture/GetServiceResponse.proto +0/−0
- fixture/ListApplications.yaml +10/−0
- fixture/ListApplicationsResponse.proto +0/−0
- fixture/ListEnvironmentVpcs.yaml +10/−0
- fixture/ListEnvironmentVpcsResponse.proto +0/−0
- fixture/ListEnvironments.yaml +10/−0
- fixture/ListEnvironmentsResponse.proto +0/−0
- fixture/ListRoutes.yaml +10/−0
- fixture/ListRoutesResponse.proto +0/−0
- fixture/ListServices.yaml +10/−0
- fixture/ListServicesResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/PutResourcePolicy.yaml +10/−0
- fixture/PutResourcePolicyResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdateRoute.yaml +10/−0
- fixture/UpdateRouteResponse.proto +0/−0
- gen/Amazonka/MigrationHubReFactorSpaces.hs +375/−0
- gen/Amazonka/MigrationHubReFactorSpaces/CreateApplication.hs +451/−0
- gen/Amazonka/MigrationHubReFactorSpaces/CreateEnvironment.hs +353/−0
- gen/Amazonka/MigrationHubReFactorSpaces/CreateRoute.hs +516/−0
- gen/Amazonka/MigrationHubReFactorSpaces/CreateService.hs +519/−0
- gen/Amazonka/MigrationHubReFactorSpaces/DeleteApplication.hs +246/−0
- gen/Amazonka/MigrationHubReFactorSpaces/DeleteEnvironment.hs +212/−0
- gen/Amazonka/MigrationHubReFactorSpaces/DeleteResourcePolicy.hs +148/−0
- gen/Amazonka/MigrationHubReFactorSpaces/DeleteRoute.hs +259/−0
- gen/Amazonka/MigrationHubReFactorSpaces/DeleteService.hs +285/−0
- gen/Amazonka/MigrationHubReFactorSpaces/GetApplication.hs +349/−0
- gen/Amazonka/MigrationHubReFactorSpaces/GetEnvironment.hs +300/−0
- gen/Amazonka/MigrationHubReFactorSpaces/GetResourcePolicy.hs +166/−0
- gen/Amazonka/MigrationHubReFactorSpaces/GetRoute.hs +429/−0
- gen/Amazonka/MigrationHubReFactorSpaces/GetService.hs +415/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Lens.hs +500/−0
- gen/Amazonka/MigrationHubReFactorSpaces/ListApplications.hs +240/−0
- gen/Amazonka/MigrationHubReFactorSpaces/ListEnvironmentVpcs.hs +240/−0
- gen/Amazonka/MigrationHubReFactorSpaces/ListEnvironments.hs +221/−0
- gen/Amazonka/MigrationHubReFactorSpaces/ListRoutes.hs +255/−0
- gen/Amazonka/MigrationHubReFactorSpaces/ListServices.hs +255/−0
- gen/Amazonka/MigrationHubReFactorSpaces/ListTagsForResource.hs +161/−0
- gen/Amazonka/MigrationHubReFactorSpaces/PutResourcePolicy.hs +183/−0
- gen/Amazonka/MigrationHubReFactorSpaces/TagResource.hs +170/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types.hs +412/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ApiGatewayEndpointType.hs +71/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ApiGatewayProxyConfig.hs +152/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ApiGatewayProxyInput.hs +116/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ApiGatewayProxySummary.hs +152/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ApplicationState.hs +86/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ApplicationSummary.hs +236/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/DefaultRouteInput.hs +76/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/EnvironmentState.hs +81/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/EnvironmentSummary.hs +208/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/EnvironmentVpc.hs +154/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ErrorCode.hs +121/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ErrorResourceType.hs +156/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ErrorResponse.hs +138/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/HttpMethod.hs +96/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/LambdaEndpointConfig.hs +67/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/LambdaEndpointInput.hs +76/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/LambdaEndpointSummary.hs +68/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/NetworkFabricType.hs +66/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ProxyType.hs +66/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/RouteActivationState.hs +71/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/RouteState.hs +91/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/RouteSummary.hs +286/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/RouteType.hs +71/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ServiceEndpointType.hs +71/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ServiceState.hs +81/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/ServiceSummary.hs +269/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/UriPathRouteInput.hs +146/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/UrlEndpointConfig.hs +83/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/UrlEndpointInput.hs +121/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Types/UrlEndpointSummary.hs +110/−0
- gen/Amazonka/MigrationHubReFactorSpaces/UntagResource.hs +164/−0
- gen/Amazonka/MigrationHubReFactorSpaces/UpdateRoute.hs +300/−0
- gen/Amazonka/MigrationHubReFactorSpaces/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/MigrationHubReFactorSpaces.hs +518/−0
- test/Test/Amazonka/MigrationHubReFactorSpaces.hs +20/−0
- test/Test/Amazonka/MigrationHubReFactorSpaces/Internal.hs +8/−0
+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+ means each individual or legal entity that creates, contributes to+ the creation of, or owns Covered Software.++1.2. "Contributor Version"+ means the combination of the Contributions of others (if any) used+ by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+ means Covered Software of a particular Contributor.++1.4. "Covered Software"+ means Source Code Form to which the initial Contributor has attached+ the notice in Exhibit A, the Executable Form of such Source Code+ Form, and Modifications of such Source Code Form, in each case+ including portions thereof.++1.5. "Incompatible With Secondary Licenses"+ means++ (a) that the initial Contributor has attached the notice described+ in Exhibit B to the Covered Software; or++ (b) that the Covered Software was made available under the terms of+ version 1.1 or earlier of the License, but not also under the+ terms of a Secondary License.++1.6. "Executable Form"+ means any form of the work other than Source Code Form.++1.7. "Larger Work"+ means a work that combines Covered Software with other material, in+ a separate file or files, that is not Covered Software.++1.8. "License"+ means this document.++1.9. "Licensable"+ means having the right to grant, to the maximum extent possible,+ whether at the time of the initial grant or subsequently, any and+ all of the rights conveyed by this License.++1.10. "Modifications"+ means any of the following:++ (a) any file in Source Code Form that results from an addition to,+ deletion from, or modification of the contents of Covered+ Software; or++ (b) any new file in Source Code Form that contains any Covered+ Software.++1.11. "Patent Claims" of a Contributor+ means any patent claim(s), including without limitation, method,+ process, and apparatus claims, in any patent Licensable by such+ Contributor that would be infringed, but for the grant of the+ License, by the making, using, selling, offering for sale, having+ made, import, or transfer of either its Contributions or its+ Contributor Version.++1.12. "Secondary License"+ means either the GNU General Public License, Version 2.0, the GNU+ Lesser General Public License, Version 2.1, the GNU Affero General+ Public License, Version 3.0, or any later versions of those+ licenses.++1.13. "Source Code Form"+ means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+ means an individual or a legal entity exercising rights under this+ License. For legal entities, "You" includes any entity that+ controls, is controlled by, or is under common control with You. For+ purposes of this definition, "control" means (a) the power, direct+ or indirect, to cause the direction or management of such entity,+ whether by contract or otherwise, or (b) ownership of more than+ fifty percent (50%) of the outstanding shares or beneficial+ ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+ Licensable by such Contributor to use, reproduce, make available,+ modify, display, perform, distribute, and otherwise exploit its+ Contributions, either on an unmodified basis, with Modifications, or+ as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+ for sale, have made, import, and otherwise transfer either its+ Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+ or++(b) for infringements caused by: (i) Your and any other third party's+ modifications of Covered Software, or (ii) the combination of its+ Contributions with other software (except as part of its Contributor+ Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+ its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+ Form, as described in Section 3.1, and You must inform recipients of+ the Executable Form how they can obtain a copy of such Source Code+ Form by reasonable means in a timely manner, at a charge no more+ than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+ License, or sublicense it under different terms, provided that the+ license for the Executable Form does not attempt to limit or alter+ the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+* *+* 6. Disclaimer of Warranty *+* ------------------------- *+* *+* Covered Software is provided under this License on an "as is" *+* basis, without warranty of any kind, either expressed, implied, or *+* statutory, including, without limitation, warranties that the *+* Covered Software is free of defects, merchantable, fit for a *+* particular purpose or non-infringing. The entire risk as to the *+* quality and performance of the Covered Software is with You. *+* Should any Covered Software prove defective in any respect, You *+* (not any Contributor) assume the cost of any necessary servicing, *+* repair, or correction. This disclaimer of warranty constitutes an *+* essential part of this License. No use of any Covered Software is *+* authorized under this License except under this disclaimer. *+* *+************************************************************************++************************************************************************+* *+* 7. Limitation of Liability *+* -------------------------- *+* *+* Under no circumstances and under no legal theory, whether tort *+* (including negligence), contract, or otherwise, shall any *+* Contributor, or anyone who distributes Covered Software as *+* permitted above, be liable to You for any direct, indirect, *+* special, incidental, or consequential damages of any character *+* including, without limitation, damages for lost profits, loss of *+* goodwill, work stoppage, computer failure or malfunction, or any *+* and all other commercial damages or losses, even if such party *+* shall have been informed of the possibility of such damages. This *+* limitation of liability shall not apply to liability for death or *+* personal injury resulting from such party's negligence to the *+* extent applicable law prohibits such limitation. Some *+* jurisdictions do not allow the exclusion or limitation of *+* incidental or consequential damages, so this exclusion and *+* limitation may not apply to You. *+* *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++ This Source Code Form is subject to the terms of the Mozilla Public+ License, v. 2.0. If a copy of the MPL was not distributed with this+ file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,44 @@+# Amazon Migration Hub Refactor Spaces SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2021-10-26@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-migration-hub-refactor-spaces)+and the [AWS API Reference](https://aws.amazon.com/documentation/).++The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/amazonka),+which provides mechanisms for specifying AuthN/AuthZ information, sending requests,+and receiving responses.++Lenses are used for constructing and manipulating types,+due to the depth of nesting of AWS types and transparency regarding+de/serialisation into more palatable Haskell values.+The provided lenses should be compatible with any of the major lens libraries+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core).++See [Amazonka.MigrationHubReFactorSpaces](http://hackage.haskell.org/package/amazonka-migration-hub-refactor-spaces/docs/Amazonka-MigrationHubReFactorSpaces.html)+or [the AWS documentation](https://aws.amazon.com/documentation/) to get started.+++## Contribute++For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/amazonka/issues).++> _Note:_ this library is an auto-generated Haskell package. Please see `amazonka-gen` for more information.+++## Licence++`amazonka-migration-hub-refactor-spaces` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).++Parts of the code are derived from AWS service descriptions, licensed under Apache 2.0.+Source files subject to this contain an additional licensing clause in their header.
+ amazonka-migration-hub-refactor-spaces.cabal view
@@ -0,0 +1,137 @@+cabal-version: 2.2+name: amazonka-migration-hub-refactor-spaces+version: 2.0+synopsis: Amazon Migration Hub Refactor Spaces SDK.+homepage: https://github.com/brendanhay/amazonka+bug-reports: https://github.com/brendanhay/amazonka/issues+license: MPL-2.0+license-file: LICENSE+author: Brendan Hay+maintainer:+ Brendan Hay <brendan.g.hay+amazonka@gmail.com>, Jack Kelly <jack@jackkelly.name>++copyright: Copyright (c) 2013-2023 Brendan Hay+category: AWS+build-type: Simple+extra-source-files:+ fixture/*.proto+ fixture/*.yaml+ README.md+ src/.gitkeep++description:+ Derived from API version @2021-10-26@ of the AWS service descriptions, licensed under Apache 2.0.+ .+ The types from this library are intended to be used with <http://hackage.haskell.org/package/amazonka amazonka>,+ which provides mechanisms for specifying AuthN/AuthZ information, sending requests, and receiving responses.+ .+ It is recommended to use generic lenses or optics from packages such as <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify optional fields and deconstruct responses.+ .+ Generated lenses can be found in "Amazonka.MigrationHubReFactorSpaces.Lens" and are+ suitable for use with a lens package such as <http://hackage.haskell.org/package/lens lens> or <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+ .+ See "Amazonka.MigrationHubReFactorSpaces" and the <https://aws.amazon.com/documentation/ AWS documentation> to get started.++source-repository head+ type: git+ location: git://github.com/brendanhay/amazonka.git+ subdir: amazonka-migration-hub-refactor-spaces++library+ default-language: Haskell2010+ hs-source-dirs: src gen+ ghc-options:+ -Wall -fwarn-incomplete-uni-patterns+ -fwarn-incomplete-record-updates -funbox-strict-fields++ exposed-modules:+ Amazonka.MigrationHubReFactorSpaces+ Amazonka.MigrationHubReFactorSpaces.CreateApplication+ Amazonka.MigrationHubReFactorSpaces.CreateEnvironment+ Amazonka.MigrationHubReFactorSpaces.CreateRoute+ Amazonka.MigrationHubReFactorSpaces.CreateService+ Amazonka.MigrationHubReFactorSpaces.DeleteApplication+ Amazonka.MigrationHubReFactorSpaces.DeleteEnvironment+ Amazonka.MigrationHubReFactorSpaces.DeleteResourcePolicy+ Amazonka.MigrationHubReFactorSpaces.DeleteRoute+ Amazonka.MigrationHubReFactorSpaces.DeleteService+ Amazonka.MigrationHubReFactorSpaces.GetApplication+ Amazonka.MigrationHubReFactorSpaces.GetEnvironment+ Amazonka.MigrationHubReFactorSpaces.GetResourcePolicy+ Amazonka.MigrationHubReFactorSpaces.GetRoute+ Amazonka.MigrationHubReFactorSpaces.GetService+ Amazonka.MigrationHubReFactorSpaces.Lens+ Amazonka.MigrationHubReFactorSpaces.ListApplications+ Amazonka.MigrationHubReFactorSpaces.ListEnvironments+ Amazonka.MigrationHubReFactorSpaces.ListEnvironmentVpcs+ Amazonka.MigrationHubReFactorSpaces.ListRoutes+ Amazonka.MigrationHubReFactorSpaces.ListServices+ Amazonka.MigrationHubReFactorSpaces.ListTagsForResource+ Amazonka.MigrationHubReFactorSpaces.PutResourcePolicy+ Amazonka.MigrationHubReFactorSpaces.TagResource+ Amazonka.MigrationHubReFactorSpaces.Types+ Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayEndpointType+ Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxyConfig+ Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxyInput+ Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxySummary+ Amazonka.MigrationHubReFactorSpaces.Types.ApplicationState+ Amazonka.MigrationHubReFactorSpaces.Types.ApplicationSummary+ Amazonka.MigrationHubReFactorSpaces.Types.DefaultRouteInput+ Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentState+ Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentSummary+ Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentVpc+ Amazonka.MigrationHubReFactorSpaces.Types.ErrorCode+ Amazonka.MigrationHubReFactorSpaces.Types.ErrorResourceType+ Amazonka.MigrationHubReFactorSpaces.Types.ErrorResponse+ Amazonka.MigrationHubReFactorSpaces.Types.HttpMethod+ Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointConfig+ Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointInput+ Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointSummary+ Amazonka.MigrationHubReFactorSpaces.Types.NetworkFabricType+ Amazonka.MigrationHubReFactorSpaces.Types.ProxyType+ Amazonka.MigrationHubReFactorSpaces.Types.RouteActivationState+ Amazonka.MigrationHubReFactorSpaces.Types.RouteState+ Amazonka.MigrationHubReFactorSpaces.Types.RouteSummary+ Amazonka.MigrationHubReFactorSpaces.Types.RouteType+ Amazonka.MigrationHubReFactorSpaces.Types.ServiceEndpointType+ Amazonka.MigrationHubReFactorSpaces.Types.ServiceState+ Amazonka.MigrationHubReFactorSpaces.Types.ServiceSummary+ Amazonka.MigrationHubReFactorSpaces.Types.UriPathRouteInput+ Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointConfig+ Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointInput+ Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointSummary+ Amazonka.MigrationHubReFactorSpaces.UntagResource+ Amazonka.MigrationHubReFactorSpaces.UpdateRoute+ Amazonka.MigrationHubReFactorSpaces.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-migration-hub-refactor-spaces-test+ type: exitcode-stdio-1.0+ default-language: Haskell2010+ hs-source-dirs: test+ main-is: Main.hs+ ghc-options: -Wall -threaded++ -- This section is encoded by the template and any modules added by+ -- hand outside these namespaces will not correctly be added to the+ -- distribution package.+ other-modules:+ Test.Amazonka.Gen.MigrationHubReFactorSpaces+ Test.Amazonka.MigrationHubReFactorSpaces+ Test.Amazonka.MigrationHubReFactorSpaces.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-migration-hub-refactor-spaces+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/CreateApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateApplicationResponse.proto view
+ fixture/CreateEnvironment.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateEnvironmentResponse.proto view
+ fixture/CreateRoute.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateRouteResponse.proto view
+ fixture/CreateService.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateServiceResponse.proto view
+ fixture/DeleteApplication.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteApplicationResponse.proto view
+ fixture/DeleteEnvironment.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteEnvironmentResponse.proto view
+ fixture/DeleteResourcePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteResourcePolicyResponse.proto view
+ fixture/DeleteRoute.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteRouteResponse.proto view
+ fixture/DeleteService.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteServiceResponse.proto view
+ fixture/GetApplication.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetApplicationResponse.proto view
+ fixture/GetEnvironment.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetEnvironmentResponse.proto view
+ fixture/GetResourcePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetResourcePolicyResponse.proto view
+ fixture/GetRoute.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetRouteResponse.proto view
+ fixture/GetService.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetServiceResponse.proto view
+ fixture/ListApplications.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListApplicationsResponse.proto view
+ fixture/ListEnvironmentVpcs.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListEnvironmentVpcsResponse.proto view
+ fixture/ListEnvironments.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListEnvironmentsResponse.proto view
+ fixture/ListRoutes.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListRoutesResponse.proto view
+ fixture/ListServices.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListServicesResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListTagsForResourceResponse.proto view
+ fixture/PutResourcePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/PutResourcePolicyResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagResourceResponse.proto view
+ fixture/UntagResource.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagResourceResponse.proto view
+ fixture/UpdateRoute.yaml view
@@ -0,0 +1,10 @@+---+method: PATCH+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/refactor-spaces/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: refactor-spaces.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateRouteResponse.proto view
+ gen/Amazonka/MigrationHubReFactorSpaces.hs view
@@ -0,0 +1,375 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2021-10-26@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- Amazon Web Services Migration Hub Refactor Spaces+--+-- This API reference provides descriptions, syntax, and other details+-- about each of the actions and data types for Amazon Web Services+-- Migration Hub Refactor Spaces (Refactor Spaces). The topic for each+-- action shows the API request parameters and the response. Alternatively,+-- you can use one of the Amazon Web Services SDKs to access an API that is+-- tailored to the programming language or platform that you\'re using. For+-- more information, see+-- <https://aws.amazon.com/tools/#SDKs Amazon Web Services SDKs>.+--+-- To share Refactor Spaces environments with other Amazon Web Services+-- accounts or with Organizations and their OUs, use Resource Access+-- Manager\'s @CreateResourceShare@ API. See+-- <https://docs.aws.amazon.com/ram/latest/APIReference/API_CreateResourceShare.html CreateResourceShare>+-- in the /Amazon Web Services RAM API Reference/.+module Amazonka.MigrationHubReFactorSpaces+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AccessDeniedException+ _AccessDeniedException,++ -- ** ConflictException+ _ConflictException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** InvalidResourcePolicyException+ _InvalidResourcePolicyException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ServiceQuotaExceededException+ _ServiceQuotaExceededException,++ -- ** ThrottlingException+ _ThrottlingException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** CreateApplication+ CreateApplication (CreateApplication'),+ newCreateApplication,+ CreateApplicationResponse (CreateApplicationResponse'),+ newCreateApplicationResponse,++ -- ** CreateEnvironment+ CreateEnvironment (CreateEnvironment'),+ newCreateEnvironment,+ CreateEnvironmentResponse (CreateEnvironmentResponse'),+ newCreateEnvironmentResponse,++ -- ** CreateRoute+ CreateRoute (CreateRoute'),+ newCreateRoute,+ CreateRouteResponse (CreateRouteResponse'),+ newCreateRouteResponse,++ -- ** CreateService+ CreateService (CreateService'),+ newCreateService,+ CreateServiceResponse (CreateServiceResponse'),+ newCreateServiceResponse,++ -- ** DeleteApplication+ DeleteApplication (DeleteApplication'),+ newDeleteApplication,+ DeleteApplicationResponse (DeleteApplicationResponse'),+ newDeleteApplicationResponse,++ -- ** DeleteEnvironment+ DeleteEnvironment (DeleteEnvironment'),+ newDeleteEnvironment,+ DeleteEnvironmentResponse (DeleteEnvironmentResponse'),+ newDeleteEnvironmentResponse,++ -- ** DeleteResourcePolicy+ DeleteResourcePolicy (DeleteResourcePolicy'),+ newDeleteResourcePolicy,+ DeleteResourcePolicyResponse (DeleteResourcePolicyResponse'),+ newDeleteResourcePolicyResponse,++ -- ** DeleteRoute+ DeleteRoute (DeleteRoute'),+ newDeleteRoute,+ DeleteRouteResponse (DeleteRouteResponse'),+ newDeleteRouteResponse,++ -- ** DeleteService+ DeleteService (DeleteService'),+ newDeleteService,+ DeleteServiceResponse (DeleteServiceResponse'),+ newDeleteServiceResponse,++ -- ** GetApplication+ GetApplication (GetApplication'),+ newGetApplication,+ GetApplicationResponse (GetApplicationResponse'),+ newGetApplicationResponse,++ -- ** GetEnvironment+ GetEnvironment (GetEnvironment'),+ newGetEnvironment,+ GetEnvironmentResponse (GetEnvironmentResponse'),+ newGetEnvironmentResponse,++ -- ** GetResourcePolicy+ GetResourcePolicy (GetResourcePolicy'),+ newGetResourcePolicy,+ GetResourcePolicyResponse (GetResourcePolicyResponse'),+ newGetResourcePolicyResponse,++ -- ** GetRoute+ GetRoute (GetRoute'),+ newGetRoute,+ GetRouteResponse (GetRouteResponse'),+ newGetRouteResponse,++ -- ** GetService+ GetService (GetService'),+ newGetService,+ GetServiceResponse (GetServiceResponse'),+ newGetServiceResponse,++ -- ** ListApplications (Paginated)+ ListApplications (ListApplications'),+ newListApplications,+ ListApplicationsResponse (ListApplicationsResponse'),+ newListApplicationsResponse,++ -- ** ListEnvironmentVpcs (Paginated)+ ListEnvironmentVpcs (ListEnvironmentVpcs'),+ newListEnvironmentVpcs,+ ListEnvironmentVpcsResponse (ListEnvironmentVpcsResponse'),+ newListEnvironmentVpcsResponse,++ -- ** ListEnvironments (Paginated)+ ListEnvironments (ListEnvironments'),+ newListEnvironments,+ ListEnvironmentsResponse (ListEnvironmentsResponse'),+ newListEnvironmentsResponse,++ -- ** ListRoutes (Paginated)+ ListRoutes (ListRoutes'),+ newListRoutes,+ ListRoutesResponse (ListRoutesResponse'),+ newListRoutesResponse,++ -- ** ListServices (Paginated)+ ListServices (ListServices'),+ newListServices,+ ListServicesResponse (ListServicesResponse'),+ newListServicesResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** PutResourcePolicy+ PutResourcePolicy (PutResourcePolicy'),+ newPutResourcePolicy,+ PutResourcePolicyResponse (PutResourcePolicyResponse'),+ newPutResourcePolicyResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdateRoute+ UpdateRoute (UpdateRoute'),+ newUpdateRoute,+ UpdateRouteResponse (UpdateRouteResponse'),+ newUpdateRouteResponse,++ -- * Types++ -- ** ApiGatewayEndpointType+ ApiGatewayEndpointType (..),++ -- ** ApplicationState+ ApplicationState (..),++ -- ** EnvironmentState+ EnvironmentState (..),++ -- ** ErrorCode+ ErrorCode (..),++ -- ** ErrorResourceType+ ErrorResourceType (..),++ -- ** HttpMethod+ HttpMethod (..),++ -- ** NetworkFabricType+ NetworkFabricType (..),++ -- ** ProxyType+ ProxyType (..),++ -- ** RouteActivationState+ RouteActivationState (..),++ -- ** RouteState+ RouteState (..),++ -- ** RouteType+ RouteType (..),++ -- ** ServiceEndpointType+ ServiceEndpointType (..),++ -- ** ServiceState+ ServiceState (..),++ -- ** ApiGatewayProxyConfig+ ApiGatewayProxyConfig (ApiGatewayProxyConfig'),+ newApiGatewayProxyConfig,++ -- ** ApiGatewayProxyInput+ ApiGatewayProxyInput (ApiGatewayProxyInput'),+ newApiGatewayProxyInput,++ -- ** ApiGatewayProxySummary+ ApiGatewayProxySummary (ApiGatewayProxySummary'),+ newApiGatewayProxySummary,++ -- ** ApplicationSummary+ ApplicationSummary (ApplicationSummary'),+ newApplicationSummary,++ -- ** DefaultRouteInput+ DefaultRouteInput (DefaultRouteInput'),+ newDefaultRouteInput,++ -- ** EnvironmentSummary+ EnvironmentSummary (EnvironmentSummary'),+ newEnvironmentSummary,++ -- ** EnvironmentVpc+ EnvironmentVpc (EnvironmentVpc'),+ newEnvironmentVpc,++ -- ** ErrorResponse+ ErrorResponse (ErrorResponse'),+ newErrorResponse,++ -- ** LambdaEndpointConfig+ LambdaEndpointConfig (LambdaEndpointConfig'),+ newLambdaEndpointConfig,++ -- ** LambdaEndpointInput+ LambdaEndpointInput (LambdaEndpointInput'),+ newLambdaEndpointInput,++ -- ** LambdaEndpointSummary+ LambdaEndpointSummary (LambdaEndpointSummary'),+ newLambdaEndpointSummary,++ -- ** RouteSummary+ RouteSummary (RouteSummary'),+ newRouteSummary,++ -- ** ServiceSummary+ ServiceSummary (ServiceSummary'),+ newServiceSummary,++ -- ** UriPathRouteInput+ UriPathRouteInput (UriPathRouteInput'),+ newUriPathRouteInput,++ -- ** UrlEndpointConfig+ UrlEndpointConfig (UrlEndpointConfig'),+ newUrlEndpointConfig,++ -- ** UrlEndpointInput+ UrlEndpointInput (UrlEndpointInput'),+ newUrlEndpointInput,++ -- ** UrlEndpointSummary+ UrlEndpointSummary (UrlEndpointSummary'),+ newUrlEndpointSummary,+ )+where++import Amazonka.MigrationHubReFactorSpaces.CreateApplication+import Amazonka.MigrationHubReFactorSpaces.CreateEnvironment+import Amazonka.MigrationHubReFactorSpaces.CreateRoute+import Amazonka.MigrationHubReFactorSpaces.CreateService+import Amazonka.MigrationHubReFactorSpaces.DeleteApplication+import Amazonka.MigrationHubReFactorSpaces.DeleteEnvironment+import Amazonka.MigrationHubReFactorSpaces.DeleteResourcePolicy+import Amazonka.MigrationHubReFactorSpaces.DeleteRoute+import Amazonka.MigrationHubReFactorSpaces.DeleteService+import Amazonka.MigrationHubReFactorSpaces.GetApplication+import Amazonka.MigrationHubReFactorSpaces.GetEnvironment+import Amazonka.MigrationHubReFactorSpaces.GetResourcePolicy+import Amazonka.MigrationHubReFactorSpaces.GetRoute+import Amazonka.MigrationHubReFactorSpaces.GetService+import Amazonka.MigrationHubReFactorSpaces.Lens+import Amazonka.MigrationHubReFactorSpaces.ListApplications+import Amazonka.MigrationHubReFactorSpaces.ListEnvironmentVpcs+import Amazonka.MigrationHubReFactorSpaces.ListEnvironments+import Amazonka.MigrationHubReFactorSpaces.ListRoutes+import Amazonka.MigrationHubReFactorSpaces.ListServices+import Amazonka.MigrationHubReFactorSpaces.ListTagsForResource+import Amazonka.MigrationHubReFactorSpaces.PutResourcePolicy+import Amazonka.MigrationHubReFactorSpaces.TagResource+import Amazonka.MigrationHubReFactorSpaces.Types+import Amazonka.MigrationHubReFactorSpaces.UntagResource+import Amazonka.MigrationHubReFactorSpaces.UpdateRoute+import Amazonka.MigrationHubReFactorSpaces.Waiters++-- $errors+-- Error matchers are designed for use with the functions provided by+-- <http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.+-- This allows catching (and rethrowing) service specific errors returned+-- by 'MigrationHubReFactorSpaces'.++-- $operations+-- Some AWS operations return results that are incomplete and require subsequent+-- requests in order to obtain the entire result set. The process of sending+-- subsequent requests to continue where a previous request left off is called+-- pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+-- 1000 objects at a time, and you must send subsequent requests with the+-- appropriate Marker in order to retrieve the next page of results.+--+-- Operations that have an 'AWSPager' instance can transparently perform subsequent+-- requests, correctly setting Markers and other request facets to iterate through+-- the entire result set of a truncated API operation. Operations which support+-- this have an additional note in the documentation.+--+-- Many operations have the ability to filter results on the server side. See the+-- individual operation parameters for details.++-- $waiters+-- Waiters poll by repeatedly sending a request until some remote success condition+-- configured by the 'Wait' specification is fulfilled. The 'Wait' specification+-- determines how many attempts should be made, in addition to delay and retry strategies.
+ gen/Amazonka/MigrationHubReFactorSpaces/CreateApplication.hs view
@@ -0,0 +1,451 @@+{-# 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.MigrationHubReFactorSpaces.CreateApplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an Amazon Web Services Migration Hub Refactor Spaces+-- application. The account that owns the environment also owns the+-- applications created inside the environment, regardless of the account+-- that creates the application. Refactor Spaces provisions an Amazon API+-- Gateway, API Gateway VPC link, and Network Load Balancer for the+-- application proxy inside your account.+module Amazonka.MigrationHubReFactorSpaces.CreateApplication+ ( -- * Creating a Request+ CreateApplication (..),+ newCreateApplication,++ -- * Request Lenses+ createApplication_apiGatewayProxy,+ createApplication_clientToken,+ createApplication_tags,+ createApplication_environmentIdentifier,+ createApplication_name,+ createApplication_proxyType,+ createApplication_vpcId,++ -- * Destructuring the Response+ CreateApplicationResponse (..),+ newCreateApplicationResponse,++ -- * Response Lenses+ createApplicationResponse_apiGatewayProxy,+ createApplicationResponse_applicationId,+ createApplicationResponse_arn,+ createApplicationResponse_createdByAccountId,+ createApplicationResponse_createdTime,+ createApplicationResponse_environmentId,+ createApplicationResponse_lastUpdatedTime,+ createApplicationResponse_name,+ createApplicationResponse_ownerAccountId,+ createApplicationResponse_proxyType,+ createApplicationResponse_state,+ createApplicationResponse_tags,+ createApplicationResponse_vpcId,+ createApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateApplication' smart constructor.+data CreateApplication = CreateApplication'+ { -- | A wrapper object holding the API Gateway endpoint type and stage name+ -- for the proxy.+ apiGatewayProxy :: Prelude.Maybe ApiGatewayProxyInput,+ -- | A unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | The tags to assign to the application. A tag is a label that you assign+ -- to an Amazon Web Services resource. Each tag consists of a key-value+ -- pair.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The unique identifier of the environment.+ environmentIdentifier :: Prelude.Text,+ -- | The name to use for the application.+ name :: Prelude.Text,+ -- | The proxy type of the proxy created within the application.+ proxyType :: ProxyType,+ -- | The ID of the virtual private cloud (VPC).+ vpcId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'apiGatewayProxy', 'createApplication_apiGatewayProxy' - A wrapper object holding the API Gateway endpoint type and stage name+-- for the proxy.+--+-- 'clientToken', 'createApplication_clientToken' - A unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'tags', 'createApplication_tags' - The tags to assign to the application. A tag is a label that you assign+-- to an Amazon Web Services resource. Each tag consists of a key-value+-- pair.+--+-- 'environmentIdentifier', 'createApplication_environmentIdentifier' - The unique identifier of the environment.+--+-- 'name', 'createApplication_name' - The name to use for the application.+--+-- 'proxyType', 'createApplication_proxyType' - The proxy type of the proxy created within the application.+--+-- 'vpcId', 'createApplication_vpcId' - The ID of the virtual private cloud (VPC).+newCreateApplication ::+ -- | 'environmentIdentifier'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ -- | 'proxyType'+ ProxyType ->+ -- | 'vpcId'+ Prelude.Text ->+ CreateApplication+newCreateApplication+ pEnvironmentIdentifier_+ pName_+ pProxyType_+ pVpcId_ =+ CreateApplication'+ { apiGatewayProxy =+ Prelude.Nothing,+ clientToken = Prelude.Nothing,+ tags = Prelude.Nothing,+ environmentIdentifier = pEnvironmentIdentifier_,+ name = pName_,+ proxyType = pProxyType_,+ vpcId = pVpcId_+ }++-- | A wrapper object holding the API Gateway endpoint type and stage name+-- for the proxy.+createApplication_apiGatewayProxy :: Lens.Lens' CreateApplication (Prelude.Maybe ApiGatewayProxyInput)+createApplication_apiGatewayProxy = Lens.lens (\CreateApplication' {apiGatewayProxy} -> apiGatewayProxy) (\s@CreateApplication' {} a -> s {apiGatewayProxy = a} :: CreateApplication)++-- | A unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+createApplication_clientToken :: Lens.Lens' CreateApplication (Prelude.Maybe Prelude.Text)+createApplication_clientToken = Lens.lens (\CreateApplication' {clientToken} -> clientToken) (\s@CreateApplication' {} a -> s {clientToken = a} :: CreateApplication)++-- | The tags to assign to the application. A tag is a label that you assign+-- to an Amazon Web Services resource. Each tag consists of a key-value+-- pair.+createApplication_tags :: Lens.Lens' CreateApplication (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createApplication_tags = Lens.lens (\CreateApplication' {tags} -> tags) (\s@CreateApplication' {} a -> s {tags = a} :: CreateApplication) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The unique identifier of the environment.+createApplication_environmentIdentifier :: Lens.Lens' CreateApplication Prelude.Text+createApplication_environmentIdentifier = Lens.lens (\CreateApplication' {environmentIdentifier} -> environmentIdentifier) (\s@CreateApplication' {} a -> s {environmentIdentifier = a} :: CreateApplication)++-- | The name to use for the application.+createApplication_name :: Lens.Lens' CreateApplication Prelude.Text+createApplication_name = Lens.lens (\CreateApplication' {name} -> name) (\s@CreateApplication' {} a -> s {name = a} :: CreateApplication)++-- | The proxy type of the proxy created within the application.+createApplication_proxyType :: Lens.Lens' CreateApplication ProxyType+createApplication_proxyType = Lens.lens (\CreateApplication' {proxyType} -> proxyType) (\s@CreateApplication' {} a -> s {proxyType = a} :: CreateApplication)++-- | The ID of the virtual private cloud (VPC).+createApplication_vpcId :: Lens.Lens' CreateApplication Prelude.Text+createApplication_vpcId = Lens.lens (\CreateApplication' {vpcId} -> vpcId) (\s@CreateApplication' {} a -> s {vpcId = a} :: CreateApplication)++instance Core.AWSRequest CreateApplication where+ type+ AWSResponse CreateApplication =+ CreateApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateApplicationResponse'+ Prelude.<$> (x Data..?> "ApiGatewayProxy")+ Prelude.<*> (x Data..?> "ApplicationId")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedByAccountId")+ Prelude.<*> (x Data..?> "CreatedTime")+ Prelude.<*> (x Data..?> "EnvironmentId")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "OwnerAccountId")+ Prelude.<*> (x Data..?> "ProxyType")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "VpcId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateApplication where+ hashWithSalt _salt CreateApplication' {..} =+ _salt+ `Prelude.hashWithSalt` apiGatewayProxy+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` environmentIdentifier+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` proxyType+ `Prelude.hashWithSalt` vpcId++instance Prelude.NFData CreateApplication where+ rnf CreateApplication' {..} =+ Prelude.rnf apiGatewayProxy+ `Prelude.seq` Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf environmentIdentifier+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf proxyType+ `Prelude.seq` Prelude.rnf vpcId++instance Data.ToHeaders CreateApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateApplication where+ toJSON CreateApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ApiGatewayProxy" Data..=)+ Prelude.<$> apiGatewayProxy,+ ("ClientToken" Data..=) Prelude.<$> clientToken,+ ("Tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("Name" Data..= name),+ Prelude.Just ("ProxyType" Data..= proxyType),+ Prelude.Just ("VpcId" Data..= vpcId)+ ]+ )++instance Data.ToPath CreateApplication where+ toPath CreateApplication' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications"+ ]++instance Data.ToQuery CreateApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateApplicationResponse' smart constructor.+data CreateApplicationResponse = CreateApplicationResponse'+ { -- | A wrapper object holding the API Gateway endpoint type and stage name+ -- for the proxy.+ apiGatewayProxy :: Prelude.Maybe ApiGatewayProxyInput,+ -- | The unique identifier of the application.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the application. The format for this+ -- ARN is+ -- @arn:aws:refactor-spaces:@/@region@/@:@/@account-id@/@:@/@resource-type\/resource-id@/@ @.+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of application creator.+ createdByAccountId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the application is created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | The ID of the environment in which the application is created.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the application was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The name of the application.+ name :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the application owner (which is+ -- always the same as the environment owner account ID).+ ownerAccountId :: Prelude.Maybe Prelude.Text,+ -- | The proxy type of the proxy created within the application.+ proxyType :: Prelude.Maybe ProxyType,+ -- | The current state of the application.+ state :: Prelude.Maybe ApplicationState,+ -- | The tags assigned to the application. A tag is a label that you assign+ -- to an Amazon Web Services resource. Each tag consists of a key-value+ -- pair.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The ID of the Amazon VPC.+ vpcId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'apiGatewayProxy', 'createApplicationResponse_apiGatewayProxy' - A wrapper object holding the API Gateway endpoint type and stage name+-- for the proxy.+--+-- 'applicationId', 'createApplicationResponse_applicationId' - The unique identifier of the application.+--+-- 'arn', 'createApplicationResponse_arn' - The Amazon Resource Name (ARN) of the application. The format for this+-- ARN is+-- @arn:aws:refactor-spaces:@/@region@/@:@/@account-id@/@:@/@resource-type\/resource-id@/@ @.+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'createdByAccountId', 'createApplicationResponse_createdByAccountId' - The Amazon Web Services account ID of application creator.+--+-- 'createdTime', 'createApplicationResponse_createdTime' - A timestamp that indicates when the application is created.+--+-- 'environmentId', 'createApplicationResponse_environmentId' - The ID of the environment in which the application is created.+--+-- 'lastUpdatedTime', 'createApplicationResponse_lastUpdatedTime' - A timestamp that indicates when the application was last updated.+--+-- 'name', 'createApplicationResponse_name' - The name of the application.+--+-- 'ownerAccountId', 'createApplicationResponse_ownerAccountId' - The Amazon Web Services account ID of the application owner (which is+-- always the same as the environment owner account ID).+--+-- 'proxyType', 'createApplicationResponse_proxyType' - The proxy type of the proxy created within the application.+--+-- 'state', 'createApplicationResponse_state' - The current state of the application.+--+-- 'tags', 'createApplicationResponse_tags' - The tags assigned to the application. A tag is a label that you assign+-- to an Amazon Web Services resource. Each tag consists of a key-value+-- pair.+--+-- 'vpcId', 'createApplicationResponse_vpcId' - The ID of the Amazon VPC.+--+-- 'httpStatus', 'createApplicationResponse_httpStatus' - The response's http status code.+newCreateApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateApplicationResponse+newCreateApplicationResponse pHttpStatus_ =+ CreateApplicationResponse'+ { apiGatewayProxy =+ Prelude.Nothing,+ applicationId = Prelude.Nothing,+ arn = Prelude.Nothing,+ createdByAccountId = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ name = Prelude.Nothing,+ ownerAccountId = Prelude.Nothing,+ proxyType = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing,+ vpcId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A wrapper object holding the API Gateway endpoint type and stage name+-- for the proxy.+createApplicationResponse_apiGatewayProxy :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe ApiGatewayProxyInput)+createApplicationResponse_apiGatewayProxy = Lens.lens (\CreateApplicationResponse' {apiGatewayProxy} -> apiGatewayProxy) (\s@CreateApplicationResponse' {} a -> s {apiGatewayProxy = a} :: CreateApplicationResponse)++-- | The unique identifier of the application.+createApplicationResponse_applicationId :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe Prelude.Text)+createApplicationResponse_applicationId = Lens.lens (\CreateApplicationResponse' {applicationId} -> applicationId) (\s@CreateApplicationResponse' {} a -> s {applicationId = a} :: CreateApplicationResponse)++-- | The Amazon Resource Name (ARN) of the application. The format for this+-- ARN is+-- @arn:aws:refactor-spaces:@/@region@/@:@/@account-id@/@:@/@resource-type\/resource-id@/@ @.+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+createApplicationResponse_arn :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe Prelude.Text)+createApplicationResponse_arn = Lens.lens (\CreateApplicationResponse' {arn} -> arn) (\s@CreateApplicationResponse' {} a -> s {arn = a} :: CreateApplicationResponse)++-- | The Amazon Web Services account ID of application creator.+createApplicationResponse_createdByAccountId :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe Prelude.Text)+createApplicationResponse_createdByAccountId = Lens.lens (\CreateApplicationResponse' {createdByAccountId} -> createdByAccountId) (\s@CreateApplicationResponse' {} a -> s {createdByAccountId = a} :: CreateApplicationResponse)++-- | A timestamp that indicates when the application is created.+createApplicationResponse_createdTime :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe Prelude.UTCTime)+createApplicationResponse_createdTime = Lens.lens (\CreateApplicationResponse' {createdTime} -> createdTime) (\s@CreateApplicationResponse' {} a -> s {createdTime = a} :: CreateApplicationResponse) Prelude.. Lens.mapping Data._Time++-- | The ID of the environment in which the application is created.+createApplicationResponse_environmentId :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe Prelude.Text)+createApplicationResponse_environmentId = Lens.lens (\CreateApplicationResponse' {environmentId} -> environmentId) (\s@CreateApplicationResponse' {} a -> s {environmentId = a} :: CreateApplicationResponse)++-- | A timestamp that indicates when the application was last updated.+createApplicationResponse_lastUpdatedTime :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe Prelude.UTCTime)+createApplicationResponse_lastUpdatedTime = Lens.lens (\CreateApplicationResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@CreateApplicationResponse' {} a -> s {lastUpdatedTime = a} :: CreateApplicationResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the application.+createApplicationResponse_name :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe Prelude.Text)+createApplicationResponse_name = Lens.lens (\CreateApplicationResponse' {name} -> name) (\s@CreateApplicationResponse' {} a -> s {name = a} :: CreateApplicationResponse)++-- | The Amazon Web Services account ID of the application owner (which is+-- always the same as the environment owner account ID).+createApplicationResponse_ownerAccountId :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe Prelude.Text)+createApplicationResponse_ownerAccountId = Lens.lens (\CreateApplicationResponse' {ownerAccountId} -> ownerAccountId) (\s@CreateApplicationResponse' {} a -> s {ownerAccountId = a} :: CreateApplicationResponse)++-- | The proxy type of the proxy created within the application.+createApplicationResponse_proxyType :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe ProxyType)+createApplicationResponse_proxyType = Lens.lens (\CreateApplicationResponse' {proxyType} -> proxyType) (\s@CreateApplicationResponse' {} a -> s {proxyType = a} :: CreateApplicationResponse)++-- | The current state of the application.+createApplicationResponse_state :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe ApplicationState)+createApplicationResponse_state = Lens.lens (\CreateApplicationResponse' {state} -> state) (\s@CreateApplicationResponse' {} a -> s {state = a} :: CreateApplicationResponse)++-- | The tags assigned to the application. A tag is a label that you assign+-- to an Amazon Web Services resource. Each tag consists of a key-value+-- pair.+createApplicationResponse_tags :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createApplicationResponse_tags = Lens.lens (\CreateApplicationResponse' {tags} -> tags) (\s@CreateApplicationResponse' {} a -> s {tags = a} :: CreateApplicationResponse) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The ID of the Amazon VPC.+createApplicationResponse_vpcId :: Lens.Lens' CreateApplicationResponse (Prelude.Maybe Prelude.Text)+createApplicationResponse_vpcId = Lens.lens (\CreateApplicationResponse' {vpcId} -> vpcId) (\s@CreateApplicationResponse' {} a -> s {vpcId = a} :: CreateApplicationResponse)++-- | The response's http status code.+createApplicationResponse_httpStatus :: Lens.Lens' CreateApplicationResponse Prelude.Int+createApplicationResponse_httpStatus = Lens.lens (\CreateApplicationResponse' {httpStatus} -> httpStatus) (\s@CreateApplicationResponse' {} a -> s {httpStatus = a} :: CreateApplicationResponse)++instance Prelude.NFData CreateApplicationResponse where+ rnf CreateApplicationResponse' {..} =+ Prelude.rnf apiGatewayProxy+ `Prelude.seq` Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdByAccountId+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf ownerAccountId+ `Prelude.seq` Prelude.rnf proxyType+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf vpcId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/CreateEnvironment.hs view
@@ -0,0 +1,353 @@+{-# 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.MigrationHubReFactorSpaces.CreateEnvironment+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an Amazon Web Services Migration Hub Refactor Spaces+-- environment. The caller owns the environment resource, and all Refactor+-- Spaces applications, services, and routes created within the+-- environment. They are referred to as the /environment owner/. The+-- environment owner has cross-account visibility and control of Refactor+-- Spaces resources that are added to the environment by other accounts+-- that the environment is shared with. When creating an environment,+-- Refactor Spaces provisions a transit gateway in your account.+module Amazonka.MigrationHubReFactorSpaces.CreateEnvironment+ ( -- * Creating a Request+ CreateEnvironment (..),+ newCreateEnvironment,++ -- * Request Lenses+ createEnvironment_clientToken,+ createEnvironment_description,+ createEnvironment_tags,+ createEnvironment_name,+ createEnvironment_networkFabricType,++ -- * Destructuring the Response+ CreateEnvironmentResponse (..),+ newCreateEnvironmentResponse,++ -- * Response Lenses+ createEnvironmentResponse_arn,+ createEnvironmentResponse_createdTime,+ createEnvironmentResponse_description,+ createEnvironmentResponse_environmentId,+ createEnvironmentResponse_lastUpdatedTime,+ createEnvironmentResponse_name,+ createEnvironmentResponse_networkFabricType,+ createEnvironmentResponse_ownerAccountId,+ createEnvironmentResponse_state,+ createEnvironmentResponse_tags,+ createEnvironmentResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateEnvironment' smart constructor.+data CreateEnvironment = CreateEnvironment'+ { -- | A unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | The description of the environment.+ description :: Prelude.Maybe Prelude.Text,+ -- | The tags to assign to the environment. A tag is a label that you assign+ -- to an Amazon Web Services resource. Each tag consists of a key-value+ -- pair.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The name of the environment.+ name :: Prelude.Text,+ -- | The network fabric type of the environment.+ networkFabricType :: NetworkFabricType+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateEnvironment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'createEnvironment_clientToken' - A unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'description', 'createEnvironment_description' - The description of the environment.+--+-- 'tags', 'createEnvironment_tags' - The tags to assign to the environment. A tag is a label that you assign+-- to an Amazon Web Services resource. Each tag consists of a key-value+-- pair.+--+-- 'name', 'createEnvironment_name' - The name of the environment.+--+-- 'networkFabricType', 'createEnvironment_networkFabricType' - The network fabric type of the environment.+newCreateEnvironment ::+ -- | 'name'+ Prelude.Text ->+ -- | 'networkFabricType'+ NetworkFabricType ->+ CreateEnvironment+newCreateEnvironment pName_ pNetworkFabricType_ =+ CreateEnvironment'+ { clientToken = Prelude.Nothing,+ description = Prelude.Nothing,+ tags = Prelude.Nothing,+ name = pName_,+ networkFabricType = pNetworkFabricType_+ }++-- | A unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+createEnvironment_clientToken :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_clientToken = Lens.lens (\CreateEnvironment' {clientToken} -> clientToken) (\s@CreateEnvironment' {} a -> s {clientToken = a} :: CreateEnvironment)++-- | The description of the environment.+createEnvironment_description :: Lens.Lens' CreateEnvironment (Prelude.Maybe Prelude.Text)+createEnvironment_description = Lens.lens (\CreateEnvironment' {description} -> description) (\s@CreateEnvironment' {} a -> s {description = a} :: CreateEnvironment)++-- | The tags to assign to the environment. A tag is a label that you assign+-- to an Amazon Web Services resource. Each tag consists of a key-value+-- pair.+createEnvironment_tags :: Lens.Lens' CreateEnvironment (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createEnvironment_tags = Lens.lens (\CreateEnvironment' {tags} -> tags) (\s@CreateEnvironment' {} a -> s {tags = a} :: CreateEnvironment) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The name of the environment.+createEnvironment_name :: Lens.Lens' CreateEnvironment Prelude.Text+createEnvironment_name = Lens.lens (\CreateEnvironment' {name} -> name) (\s@CreateEnvironment' {} a -> s {name = a} :: CreateEnvironment)++-- | The network fabric type of the environment.+createEnvironment_networkFabricType :: Lens.Lens' CreateEnvironment NetworkFabricType+createEnvironment_networkFabricType = Lens.lens (\CreateEnvironment' {networkFabricType} -> networkFabricType) (\s@CreateEnvironment' {} a -> s {networkFabricType = a} :: CreateEnvironment)++instance Core.AWSRequest CreateEnvironment where+ type+ AWSResponse CreateEnvironment =+ CreateEnvironmentResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateEnvironmentResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedTime")+ Prelude.<*> (x Data..?> "Description")+ Prelude.<*> (x Data..?> "EnvironmentId")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "NetworkFabricType")+ Prelude.<*> (x Data..?> "OwnerAccountId")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateEnvironment where+ hashWithSalt _salt CreateEnvironment' {..} =+ _salt+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` networkFabricType++instance Prelude.NFData CreateEnvironment where+ rnf CreateEnvironment' {..} =+ Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf networkFabricType++instance Data.ToHeaders CreateEnvironment where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateEnvironment where+ toJSON CreateEnvironment' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ClientToken" Data..=) Prelude.<$> clientToken,+ ("Description" Data..=) Prelude.<$> description,+ ("Tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("Name" Data..= name),+ Prelude.Just+ ("NetworkFabricType" Data..= networkFabricType)+ ]+ )++instance Data.ToPath CreateEnvironment where+ toPath = Prelude.const "/environments"++instance Data.ToQuery CreateEnvironment where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateEnvironmentResponse' smart constructor.+data CreateEnvironmentResponse = CreateEnvironmentResponse'+ { -- | The Amazon Resource Name (ARN) of the environment.+ arn :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the environment is created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | A description of the environment.+ description :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the environment was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The name of the environment.+ name :: Prelude.Maybe Prelude.Text,+ -- | The network fabric type of the environment.+ networkFabricType :: Prelude.Maybe NetworkFabricType,+ -- | The Amazon Web Services account ID of environment owner.+ ownerAccountId :: Prelude.Maybe Prelude.Text,+ -- | The current state of the environment.+ state :: Prelude.Maybe EnvironmentState,+ -- | The tags assigned to the created environment. A tag is a label that you+ -- assign to an Amazon Web Services resource. Each tag consists of a+ -- key-value pair..+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateEnvironmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'createEnvironmentResponse_arn' - The Amazon Resource Name (ARN) of the environment.+--+-- 'createdTime', 'createEnvironmentResponse_createdTime' - A timestamp that indicates when the environment is created.+--+-- 'description', 'createEnvironmentResponse_description' - A description of the environment.+--+-- 'environmentId', 'createEnvironmentResponse_environmentId' - The unique identifier of the environment.+--+-- 'lastUpdatedTime', 'createEnvironmentResponse_lastUpdatedTime' - A timestamp that indicates when the environment was last updated.+--+-- 'name', 'createEnvironmentResponse_name' - The name of the environment.+--+-- 'networkFabricType', 'createEnvironmentResponse_networkFabricType' - The network fabric type of the environment.+--+-- 'ownerAccountId', 'createEnvironmentResponse_ownerAccountId' - The Amazon Web Services account ID of environment owner.+--+-- 'state', 'createEnvironmentResponse_state' - The current state of the environment.+--+-- 'tags', 'createEnvironmentResponse_tags' - The tags assigned to the created environment. A tag is a label that you+-- assign to an Amazon Web Services resource. Each tag consists of a+-- key-value pair..+--+-- 'httpStatus', 'createEnvironmentResponse_httpStatus' - The response's http status code.+newCreateEnvironmentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateEnvironmentResponse+newCreateEnvironmentResponse pHttpStatus_ =+ CreateEnvironmentResponse'+ { arn = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ description = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ name = Prelude.Nothing,+ networkFabricType = Prelude.Nothing,+ ownerAccountId = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the environment.+createEnvironmentResponse_arn :: Lens.Lens' CreateEnvironmentResponse (Prelude.Maybe Prelude.Text)+createEnvironmentResponse_arn = Lens.lens (\CreateEnvironmentResponse' {arn} -> arn) (\s@CreateEnvironmentResponse' {} a -> s {arn = a} :: CreateEnvironmentResponse)++-- | A timestamp that indicates when the environment is created.+createEnvironmentResponse_createdTime :: Lens.Lens' CreateEnvironmentResponse (Prelude.Maybe Prelude.UTCTime)+createEnvironmentResponse_createdTime = Lens.lens (\CreateEnvironmentResponse' {createdTime} -> createdTime) (\s@CreateEnvironmentResponse' {} a -> s {createdTime = a} :: CreateEnvironmentResponse) Prelude.. Lens.mapping Data._Time++-- | A description of the environment.+createEnvironmentResponse_description :: Lens.Lens' CreateEnvironmentResponse (Prelude.Maybe Prelude.Text)+createEnvironmentResponse_description = Lens.lens (\CreateEnvironmentResponse' {description} -> description) (\s@CreateEnvironmentResponse' {} a -> s {description = a} :: CreateEnvironmentResponse)++-- | The unique identifier of the environment.+createEnvironmentResponse_environmentId :: Lens.Lens' CreateEnvironmentResponse (Prelude.Maybe Prelude.Text)+createEnvironmentResponse_environmentId = Lens.lens (\CreateEnvironmentResponse' {environmentId} -> environmentId) (\s@CreateEnvironmentResponse' {} a -> s {environmentId = a} :: CreateEnvironmentResponse)++-- | A timestamp that indicates when the environment was last updated.+createEnvironmentResponse_lastUpdatedTime :: Lens.Lens' CreateEnvironmentResponse (Prelude.Maybe Prelude.UTCTime)+createEnvironmentResponse_lastUpdatedTime = Lens.lens (\CreateEnvironmentResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@CreateEnvironmentResponse' {} a -> s {lastUpdatedTime = a} :: CreateEnvironmentResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the environment.+createEnvironmentResponse_name :: Lens.Lens' CreateEnvironmentResponse (Prelude.Maybe Prelude.Text)+createEnvironmentResponse_name = Lens.lens (\CreateEnvironmentResponse' {name} -> name) (\s@CreateEnvironmentResponse' {} a -> s {name = a} :: CreateEnvironmentResponse)++-- | The network fabric type of the environment.+createEnvironmentResponse_networkFabricType :: Lens.Lens' CreateEnvironmentResponse (Prelude.Maybe NetworkFabricType)+createEnvironmentResponse_networkFabricType = Lens.lens (\CreateEnvironmentResponse' {networkFabricType} -> networkFabricType) (\s@CreateEnvironmentResponse' {} a -> s {networkFabricType = a} :: CreateEnvironmentResponse)++-- | The Amazon Web Services account ID of environment owner.+createEnvironmentResponse_ownerAccountId :: Lens.Lens' CreateEnvironmentResponse (Prelude.Maybe Prelude.Text)+createEnvironmentResponse_ownerAccountId = Lens.lens (\CreateEnvironmentResponse' {ownerAccountId} -> ownerAccountId) (\s@CreateEnvironmentResponse' {} a -> s {ownerAccountId = a} :: CreateEnvironmentResponse)++-- | The current state of the environment.+createEnvironmentResponse_state :: Lens.Lens' CreateEnvironmentResponse (Prelude.Maybe EnvironmentState)+createEnvironmentResponse_state = Lens.lens (\CreateEnvironmentResponse' {state} -> state) (\s@CreateEnvironmentResponse' {} a -> s {state = a} :: CreateEnvironmentResponse)++-- | The tags assigned to the created environment. A tag is a label that you+-- assign to an Amazon Web Services resource. Each tag consists of a+-- key-value pair..+createEnvironmentResponse_tags :: Lens.Lens' CreateEnvironmentResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createEnvironmentResponse_tags = Lens.lens (\CreateEnvironmentResponse' {tags} -> tags) (\s@CreateEnvironmentResponse' {} a -> s {tags = a} :: CreateEnvironmentResponse) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The response's http status code.+createEnvironmentResponse_httpStatus :: Lens.Lens' CreateEnvironmentResponse Prelude.Int+createEnvironmentResponse_httpStatus = Lens.lens (\CreateEnvironmentResponse' {httpStatus} -> httpStatus) (\s@CreateEnvironmentResponse' {} a -> s {httpStatus = a} :: CreateEnvironmentResponse)++instance Prelude.NFData CreateEnvironmentResponse where+ rnf CreateEnvironmentResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf networkFabricType+ `Prelude.seq` Prelude.rnf ownerAccountId+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/CreateRoute.hs view
@@ -0,0 +1,516 @@+{-# 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.MigrationHubReFactorSpaces.CreateRoute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an Amazon Web Services Migration Hub Refactor Spaces route. The+-- account owner of the service resource is always the environment owner,+-- regardless of which account creates the route. Routes target a service+-- in the application. If an application does not have any routes, then the+-- first route must be created as a @DEFAULT@ @RouteType@.+--+-- When created, the default route defaults to an active state so state is+-- not a required input. However, like all other state values the state of+-- the default route can be updated after creation, but only when all other+-- routes are also inactive. Conversely, no route can be active without the+-- default route also being active.+--+-- When you create a route, Refactor Spaces configures the Amazon API+-- Gateway to send traffic to the target service as follows:+--+-- - If the service has a URL endpoint, and the endpoint resolves to a+-- private IP address, Refactor Spaces routes traffic using the API+-- Gateway VPC link.+--+-- - If the service has a URL endpoint, and the endpoint resolves to a+-- public IP address, Refactor Spaces routes traffic over the public+-- internet.+--+-- - If the service has an Lambda function endpoint, then Refactor Spaces+-- configures the Lambda function\'s resource policy to allow the+-- application\'s API Gateway to invoke the function.+--+-- A one-time health check is performed on the service when either the+-- route is updated from inactive to active, or when it is created with an+-- active state. If the health check fails, the route transitions the route+-- state to @FAILED@, an error code of+-- @SERVICE_ENDPOINT_HEALTH_CHECK_FAILURE@ is provided, and no traffic is+-- sent to the service.+--+-- For Lambda functions, the Lambda function state is checked. If the+-- function is not active, the function configuration is updated so that+-- Lambda resources are provisioned. If the Lambda state is @Failed@, then+-- the route creation fails. For more information, see the+-- <https://docs.aws.amazon.com/lambda/latest/dg/API_GetFunctionConfiguration.html#SSS-GetFunctionConfiguration-response-State GetFunctionConfiguration\'s State response parameter>+-- in the /Lambda Developer Guide/.+--+-- For Lambda endpoints, a check is performed to determine that a Lambda+-- function with the specified ARN exists. If it does not exist, the health+-- check fails. For public URLs, a connection is opened to the public+-- endpoint. If the URL is not reachable, the health check fails.+--+-- Refactor Spaces automatically resolves the public Domain Name System+-- (DNS) names that are set in CreateServiceRequest$UrlEndpoint when you+-- create a service. The DNS names resolve when the DNS time-to-live (TTL)+-- expires, or every 60 seconds for TTLs less than 60 seconds. This+-- periodic DNS resolution ensures that the route configuration remains+-- up-to-date.+--+-- For private URLS, a target group is created on the Elastic Load+-- Balancing and the target group health check is run. The+-- @HealthCheckProtocol@, @HealthCheckPort@, and @HealthCheckPath@ are the+-- same protocol, port, and path specified in the URL or health URL, if+-- used. All other settings use the default values, as described in+-- <https://docs.aws.amazon.com/elasticloadbalancing/latest/application/target-group-health-checks.html Health checks for your target groups>.+-- The health check is considered successful if at least one target within+-- the target group transitions to a healthy state.+--+-- Services can have HTTP or HTTPS URL endpoints. For HTTPS URLs,+-- publicly-signed certificates are supported. Private Certificate+-- Authorities (CAs) are permitted only if the CA\'s domain is also+-- publicly resolvable.+module Amazonka.MigrationHubReFactorSpaces.CreateRoute+ ( -- * Creating a Request+ CreateRoute (..),+ newCreateRoute,++ -- * Request Lenses+ createRoute_clientToken,+ createRoute_defaultRoute,+ createRoute_tags,+ createRoute_uriPathRoute,+ createRoute_applicationIdentifier,+ createRoute_environmentIdentifier,+ createRoute_routeType,+ createRoute_serviceIdentifier,++ -- * Destructuring the Response+ CreateRouteResponse (..),+ newCreateRouteResponse,++ -- * Response Lenses+ createRouteResponse_applicationId,+ createRouteResponse_arn,+ createRouteResponse_createdByAccountId,+ createRouteResponse_createdTime,+ createRouteResponse_lastUpdatedTime,+ createRouteResponse_ownerAccountId,+ createRouteResponse_routeId,+ createRouteResponse_routeType,+ createRouteResponse_serviceId,+ createRouteResponse_state,+ createRouteResponse_tags,+ createRouteResponse_uriPathRoute,+ createRouteResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateRoute' smart constructor.+data CreateRoute = CreateRoute'+ { -- | A unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | Configuration for the default route type.+ defaultRoute :: Prelude.Maybe DefaultRouteInput,+ -- | The tags to assign to the route. A tag is a label that you assign to an+ -- Amazon Web Services resource. Each tag consists of a key-value pair..+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The configuration for the URI path route type.+ uriPathRoute :: Prelude.Maybe UriPathRouteInput,+ -- | The ID of the application within which the route is being created.+ applicationIdentifier :: Prelude.Text,+ -- | The ID of the environment in which the route is created.+ environmentIdentifier :: Prelude.Text,+ -- | The route type of the route. @DEFAULT@ indicates that all traffic that+ -- does not match another route is forwarded to the default route.+ -- Applications must have a default route before any other routes can be+ -- created. @URI_PATH@ indicates a route that is based on a URI path.+ routeType :: RouteType,+ -- | The ID of the service in which the route is created. Traffic that+ -- matches this route is forwarded to this service.+ serviceIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateRoute' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'createRoute_clientToken' - A unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'defaultRoute', 'createRoute_defaultRoute' - Configuration for the default route type.+--+-- 'tags', 'createRoute_tags' - The tags to assign to the route. A tag is a label that you assign to an+-- Amazon Web Services resource. Each tag consists of a key-value pair..+--+-- 'uriPathRoute', 'createRoute_uriPathRoute' - The configuration for the URI path route type.+--+-- 'applicationIdentifier', 'createRoute_applicationIdentifier' - The ID of the application within which the route is being created.+--+-- 'environmentIdentifier', 'createRoute_environmentIdentifier' - The ID of the environment in which the route is created.+--+-- 'routeType', 'createRoute_routeType' - The route type of the route. @DEFAULT@ indicates that all traffic that+-- does not match another route is forwarded to the default route.+-- Applications must have a default route before any other routes can be+-- created. @URI_PATH@ indicates a route that is based on a URI path.+--+-- 'serviceIdentifier', 'createRoute_serviceIdentifier' - The ID of the service in which the route is created. Traffic that+-- matches this route is forwarded to this service.+newCreateRoute ::+ -- | 'applicationIdentifier'+ Prelude.Text ->+ -- | 'environmentIdentifier'+ Prelude.Text ->+ -- | 'routeType'+ RouteType ->+ -- | 'serviceIdentifier'+ Prelude.Text ->+ CreateRoute+newCreateRoute+ pApplicationIdentifier_+ pEnvironmentIdentifier_+ pRouteType_+ pServiceIdentifier_ =+ CreateRoute'+ { clientToken = Prelude.Nothing,+ defaultRoute = Prelude.Nothing,+ tags = Prelude.Nothing,+ uriPathRoute = Prelude.Nothing,+ applicationIdentifier = pApplicationIdentifier_,+ environmentIdentifier = pEnvironmentIdentifier_,+ routeType = pRouteType_,+ serviceIdentifier = pServiceIdentifier_+ }++-- | A unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+createRoute_clientToken :: Lens.Lens' CreateRoute (Prelude.Maybe Prelude.Text)+createRoute_clientToken = Lens.lens (\CreateRoute' {clientToken} -> clientToken) (\s@CreateRoute' {} a -> s {clientToken = a} :: CreateRoute)++-- | Configuration for the default route type.+createRoute_defaultRoute :: Lens.Lens' CreateRoute (Prelude.Maybe DefaultRouteInput)+createRoute_defaultRoute = Lens.lens (\CreateRoute' {defaultRoute} -> defaultRoute) (\s@CreateRoute' {} a -> s {defaultRoute = a} :: CreateRoute)++-- | The tags to assign to the route. A tag is a label that you assign to an+-- Amazon Web Services resource. Each tag consists of a key-value pair..+createRoute_tags :: Lens.Lens' CreateRoute (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createRoute_tags = Lens.lens (\CreateRoute' {tags} -> tags) (\s@CreateRoute' {} a -> s {tags = a} :: CreateRoute) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The configuration for the URI path route type.+createRoute_uriPathRoute :: Lens.Lens' CreateRoute (Prelude.Maybe UriPathRouteInput)+createRoute_uriPathRoute = Lens.lens (\CreateRoute' {uriPathRoute} -> uriPathRoute) (\s@CreateRoute' {} a -> s {uriPathRoute = a} :: CreateRoute)++-- | The ID of the application within which the route is being created.+createRoute_applicationIdentifier :: Lens.Lens' CreateRoute Prelude.Text+createRoute_applicationIdentifier = Lens.lens (\CreateRoute' {applicationIdentifier} -> applicationIdentifier) (\s@CreateRoute' {} a -> s {applicationIdentifier = a} :: CreateRoute)++-- | The ID of the environment in which the route is created.+createRoute_environmentIdentifier :: Lens.Lens' CreateRoute Prelude.Text+createRoute_environmentIdentifier = Lens.lens (\CreateRoute' {environmentIdentifier} -> environmentIdentifier) (\s@CreateRoute' {} a -> s {environmentIdentifier = a} :: CreateRoute)++-- | The route type of the route. @DEFAULT@ indicates that all traffic that+-- does not match another route is forwarded to the default route.+-- Applications must have a default route before any other routes can be+-- created. @URI_PATH@ indicates a route that is based on a URI path.+createRoute_routeType :: Lens.Lens' CreateRoute RouteType+createRoute_routeType = Lens.lens (\CreateRoute' {routeType} -> routeType) (\s@CreateRoute' {} a -> s {routeType = a} :: CreateRoute)++-- | The ID of the service in which the route is created. Traffic that+-- matches this route is forwarded to this service.+createRoute_serviceIdentifier :: Lens.Lens' CreateRoute Prelude.Text+createRoute_serviceIdentifier = Lens.lens (\CreateRoute' {serviceIdentifier} -> serviceIdentifier) (\s@CreateRoute' {} a -> s {serviceIdentifier = a} :: CreateRoute)++instance Core.AWSRequest CreateRoute where+ type AWSResponse CreateRoute = CreateRouteResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateRouteResponse'+ Prelude.<$> (x Data..?> "ApplicationId")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedByAccountId")+ Prelude.<*> (x Data..?> "CreatedTime")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "OwnerAccountId")+ Prelude.<*> (x Data..?> "RouteId")+ Prelude.<*> (x Data..?> "RouteType")+ Prelude.<*> (x Data..?> "ServiceId")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "UriPathRoute")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateRoute where+ hashWithSalt _salt CreateRoute' {..} =+ _salt+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` defaultRoute+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` uriPathRoute+ `Prelude.hashWithSalt` applicationIdentifier+ `Prelude.hashWithSalt` environmentIdentifier+ `Prelude.hashWithSalt` routeType+ `Prelude.hashWithSalt` serviceIdentifier++instance Prelude.NFData CreateRoute where+ rnf CreateRoute' {..} =+ Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf defaultRoute+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf uriPathRoute+ `Prelude.seq` Prelude.rnf applicationIdentifier+ `Prelude.seq` Prelude.rnf environmentIdentifier+ `Prelude.seq` Prelude.rnf routeType+ `Prelude.seq` Prelude.rnf serviceIdentifier++instance Data.ToHeaders CreateRoute where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateRoute where+ toJSON CreateRoute' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ClientToken" Data..=) Prelude.<$> clientToken,+ ("DefaultRoute" Data..=) Prelude.<$> defaultRoute,+ ("Tags" Data..=) Prelude.<$> tags,+ ("UriPathRoute" Data..=) Prelude.<$> uriPathRoute,+ Prelude.Just ("RouteType" Data..= routeType),+ Prelude.Just+ ("ServiceIdentifier" Data..= serviceIdentifier)+ ]+ )++instance Data.ToPath CreateRoute where+ toPath CreateRoute' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications/",+ Data.toBS applicationIdentifier,+ "/routes"+ ]++instance Data.ToQuery CreateRoute where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateRouteResponse' smart constructor.+data CreateRouteResponse = CreateRouteResponse'+ { -- | The ID of the application in which the route is created.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the route. The format for this ARN is+ -- @arn:aws:refactor-spaces:@/@region@/@:@/@account-id@/@:@/@resource-type\/resource-id@/@ @.+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the route creator.+ createdByAccountId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the route is created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | A timestamp that indicates when the route was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The Amazon Web Services account ID of the route owner.+ ownerAccountId :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the route.+ routeId :: Prelude.Maybe Prelude.Text,+ -- | The route type of the route.+ routeType :: Prelude.Maybe RouteType,+ -- | The ID of service in which the route is created. Traffic that matches+ -- this route is forwarded to this service.+ serviceId :: Prelude.Maybe Prelude.Text,+ -- | The current state of the route. Activation state only allows @ACTIVE@ or+ -- @INACTIVE@ as user inputs. @FAILED@ is a route state that is system+ -- generated.+ state :: Prelude.Maybe RouteState,+ -- | The tags assigned to the created route. A tag is a label that you assign+ -- to an Amazon Web Services resource. Each tag consists of a key-value+ -- pair.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Configuration for the URI path route type.+ uriPathRoute :: Prelude.Maybe UriPathRouteInput,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateRouteResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'createRouteResponse_applicationId' - The ID of the application in which the route is created.+--+-- 'arn', 'createRouteResponse_arn' - The Amazon Resource Name (ARN) of the route. The format for this ARN is+-- @arn:aws:refactor-spaces:@/@region@/@:@/@account-id@/@:@/@resource-type\/resource-id@/@ @.+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'createdByAccountId', 'createRouteResponse_createdByAccountId' - The Amazon Web Services account ID of the route creator.+--+-- 'createdTime', 'createRouteResponse_createdTime' - A timestamp that indicates when the route is created.+--+-- 'lastUpdatedTime', 'createRouteResponse_lastUpdatedTime' - A timestamp that indicates when the route was last updated.+--+-- 'ownerAccountId', 'createRouteResponse_ownerAccountId' - The Amazon Web Services account ID of the route owner.+--+-- 'routeId', 'createRouteResponse_routeId' - The unique identifier of the route.+--+-- 'routeType', 'createRouteResponse_routeType' - The route type of the route.+--+-- 'serviceId', 'createRouteResponse_serviceId' - The ID of service in which the route is created. Traffic that matches+-- this route is forwarded to this service.+--+-- 'state', 'createRouteResponse_state' - The current state of the route. Activation state only allows @ACTIVE@ or+-- @INACTIVE@ as user inputs. @FAILED@ is a route state that is system+-- generated.+--+-- 'tags', 'createRouteResponse_tags' - The tags assigned to the created route. A tag is a label that you assign+-- to an Amazon Web Services resource. Each tag consists of a key-value+-- pair.+--+-- 'uriPathRoute', 'createRouteResponse_uriPathRoute' - Configuration for the URI path route type.+--+-- 'httpStatus', 'createRouteResponse_httpStatus' - The response's http status code.+newCreateRouteResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateRouteResponse+newCreateRouteResponse pHttpStatus_ =+ CreateRouteResponse'+ { applicationId =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ createdByAccountId = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ ownerAccountId = Prelude.Nothing,+ routeId = Prelude.Nothing,+ routeType = Prelude.Nothing,+ serviceId = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing,+ uriPathRoute = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ID of the application in which the route is created.+createRouteResponse_applicationId :: Lens.Lens' CreateRouteResponse (Prelude.Maybe Prelude.Text)+createRouteResponse_applicationId = Lens.lens (\CreateRouteResponse' {applicationId} -> applicationId) (\s@CreateRouteResponse' {} a -> s {applicationId = a} :: CreateRouteResponse)++-- | The Amazon Resource Name (ARN) of the route. The format for this ARN is+-- @arn:aws:refactor-spaces:@/@region@/@:@/@account-id@/@:@/@resource-type\/resource-id@/@ @.+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+createRouteResponse_arn :: Lens.Lens' CreateRouteResponse (Prelude.Maybe Prelude.Text)+createRouteResponse_arn = Lens.lens (\CreateRouteResponse' {arn} -> arn) (\s@CreateRouteResponse' {} a -> s {arn = a} :: CreateRouteResponse)++-- | The Amazon Web Services account ID of the route creator.+createRouteResponse_createdByAccountId :: Lens.Lens' CreateRouteResponse (Prelude.Maybe Prelude.Text)+createRouteResponse_createdByAccountId = Lens.lens (\CreateRouteResponse' {createdByAccountId} -> createdByAccountId) (\s@CreateRouteResponse' {} a -> s {createdByAccountId = a} :: CreateRouteResponse)++-- | A timestamp that indicates when the route is created.+createRouteResponse_createdTime :: Lens.Lens' CreateRouteResponse (Prelude.Maybe Prelude.UTCTime)+createRouteResponse_createdTime = Lens.lens (\CreateRouteResponse' {createdTime} -> createdTime) (\s@CreateRouteResponse' {} a -> s {createdTime = a} :: CreateRouteResponse) Prelude.. Lens.mapping Data._Time++-- | A timestamp that indicates when the route was last updated.+createRouteResponse_lastUpdatedTime :: Lens.Lens' CreateRouteResponse (Prelude.Maybe Prelude.UTCTime)+createRouteResponse_lastUpdatedTime = Lens.lens (\CreateRouteResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@CreateRouteResponse' {} a -> s {lastUpdatedTime = a} :: CreateRouteResponse) Prelude.. Lens.mapping Data._Time++-- | The Amazon Web Services account ID of the route owner.+createRouteResponse_ownerAccountId :: Lens.Lens' CreateRouteResponse (Prelude.Maybe Prelude.Text)+createRouteResponse_ownerAccountId = Lens.lens (\CreateRouteResponse' {ownerAccountId} -> ownerAccountId) (\s@CreateRouteResponse' {} a -> s {ownerAccountId = a} :: CreateRouteResponse)++-- | The unique identifier of the route.+createRouteResponse_routeId :: Lens.Lens' CreateRouteResponse (Prelude.Maybe Prelude.Text)+createRouteResponse_routeId = Lens.lens (\CreateRouteResponse' {routeId} -> routeId) (\s@CreateRouteResponse' {} a -> s {routeId = a} :: CreateRouteResponse)++-- | The route type of the route.+createRouteResponse_routeType :: Lens.Lens' CreateRouteResponse (Prelude.Maybe RouteType)+createRouteResponse_routeType = Lens.lens (\CreateRouteResponse' {routeType} -> routeType) (\s@CreateRouteResponse' {} a -> s {routeType = a} :: CreateRouteResponse)++-- | The ID of service in which the route is created. Traffic that matches+-- this route is forwarded to this service.+createRouteResponse_serviceId :: Lens.Lens' CreateRouteResponse (Prelude.Maybe Prelude.Text)+createRouteResponse_serviceId = Lens.lens (\CreateRouteResponse' {serviceId} -> serviceId) (\s@CreateRouteResponse' {} a -> s {serviceId = a} :: CreateRouteResponse)++-- | The current state of the route. Activation state only allows @ACTIVE@ or+-- @INACTIVE@ as user inputs. @FAILED@ is a route state that is system+-- generated.+createRouteResponse_state :: Lens.Lens' CreateRouteResponse (Prelude.Maybe RouteState)+createRouteResponse_state = Lens.lens (\CreateRouteResponse' {state} -> state) (\s@CreateRouteResponse' {} a -> s {state = a} :: CreateRouteResponse)++-- | The tags assigned to the created route. A tag is a label that you assign+-- to an Amazon Web Services resource. Each tag consists of a key-value+-- pair.+createRouteResponse_tags :: Lens.Lens' CreateRouteResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createRouteResponse_tags = Lens.lens (\CreateRouteResponse' {tags} -> tags) (\s@CreateRouteResponse' {} a -> s {tags = a} :: CreateRouteResponse) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Configuration for the URI path route type.+createRouteResponse_uriPathRoute :: Lens.Lens' CreateRouteResponse (Prelude.Maybe UriPathRouteInput)+createRouteResponse_uriPathRoute = Lens.lens (\CreateRouteResponse' {uriPathRoute} -> uriPathRoute) (\s@CreateRouteResponse' {} a -> s {uriPathRoute = a} :: CreateRouteResponse)++-- | The response's http status code.+createRouteResponse_httpStatus :: Lens.Lens' CreateRouteResponse Prelude.Int+createRouteResponse_httpStatus = Lens.lens (\CreateRouteResponse' {httpStatus} -> httpStatus) (\s@CreateRouteResponse' {} a -> s {httpStatus = a} :: CreateRouteResponse)++instance Prelude.NFData CreateRouteResponse where+ rnf CreateRouteResponse' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdByAccountId+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf ownerAccountId+ `Prelude.seq` Prelude.rnf routeId+ `Prelude.seq` Prelude.rnf routeType+ `Prelude.seq` Prelude.rnf serviceId+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf uriPathRoute+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/CreateService.hs view
@@ -0,0 +1,519 @@+{-# 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.MigrationHubReFactorSpaces.CreateService+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an Amazon Web Services Migration Hub Refactor Spaces service.+-- The account owner of the service is always the environment owner,+-- regardless of which account in the environment creates the service.+-- Services have either a URL endpoint in a virtual private cloud (VPC), or+-- a Lambda function endpoint.+--+-- If an Amazon Web Services resource is launched in a service VPC, and you+-- want it to be accessible to all of an environment’s services with VPCs+-- and routes, apply the @RefactorSpacesSecurityGroup@ to the resource.+-- Alternatively, to add more cross-account constraints, apply your own+-- security group.+module Amazonka.MigrationHubReFactorSpaces.CreateService+ ( -- * Creating a Request+ CreateService (..),+ newCreateService,++ -- * Request Lenses+ createService_clientToken,+ createService_description,+ createService_lambdaEndpoint,+ createService_tags,+ createService_urlEndpoint,+ createService_vpcId,+ createService_applicationIdentifier,+ createService_endpointType,+ createService_environmentIdentifier,+ createService_name,++ -- * Destructuring the Response+ CreateServiceResponse (..),+ newCreateServiceResponse,++ -- * Response Lenses+ createServiceResponse_applicationId,+ createServiceResponse_arn,+ createServiceResponse_createdByAccountId,+ createServiceResponse_createdTime,+ createServiceResponse_description,+ createServiceResponse_endpointType,+ createServiceResponse_environmentId,+ createServiceResponse_lambdaEndpoint,+ createServiceResponse_lastUpdatedTime,+ createServiceResponse_name,+ createServiceResponse_ownerAccountId,+ createServiceResponse_serviceId,+ createServiceResponse_state,+ createServiceResponse_tags,+ createServiceResponse_urlEndpoint,+ createServiceResponse_vpcId,+ createServiceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateService' smart constructor.+data CreateService = CreateService'+ { -- | A unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | The description of the service.+ description :: Prelude.Maybe Prelude.Text,+ -- | The configuration for the Lambda endpoint type.+ lambdaEndpoint :: Prelude.Maybe LambdaEndpointInput,+ -- | The tags to assign to the service. A tag is a label that you assign to+ -- an Amazon Web Services resource. Each tag consists of a key-value pair..+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The configuration for the URL endpoint type. When creating a route to a+ -- service, Refactor Spaces automatically resolves the address in the+ -- @UrlEndpointInput@ object URL when the Domain Name System (DNS)+ -- time-to-live (TTL) expires, or every 60 seconds for TTLs less than 60+ -- seconds.+ urlEndpoint :: Prelude.Maybe UrlEndpointInput,+ -- | The ID of the VPC.+ vpcId :: Prelude.Maybe Prelude.Text,+ -- | The ID of the application which the service is created.+ applicationIdentifier :: Prelude.Text,+ -- | The type of endpoint to use for the service. The type can be a URL in a+ -- VPC or an Lambda function.+ endpointType :: ServiceEndpointType,+ -- | The ID of the environment in which the service is created.+ environmentIdentifier :: Prelude.Text,+ -- | The name of the service.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateService' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'createService_clientToken' - A unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'description', 'createService_description' - The description of the service.+--+-- 'lambdaEndpoint', 'createService_lambdaEndpoint' - The configuration for the Lambda endpoint type.+--+-- 'tags', 'createService_tags' - The tags to assign to the service. A tag is a label that you assign to+-- an Amazon Web Services resource. Each tag consists of a key-value pair..+--+-- 'urlEndpoint', 'createService_urlEndpoint' - The configuration for the URL endpoint type. When creating a route to a+-- service, Refactor Spaces automatically resolves the address in the+-- @UrlEndpointInput@ object URL when the Domain Name System (DNS)+-- time-to-live (TTL) expires, or every 60 seconds for TTLs less than 60+-- seconds.+--+-- 'vpcId', 'createService_vpcId' - The ID of the VPC.+--+-- 'applicationIdentifier', 'createService_applicationIdentifier' - The ID of the application which the service is created.+--+-- 'endpointType', 'createService_endpointType' - The type of endpoint to use for the service. The type can be a URL in a+-- VPC or an Lambda function.+--+-- 'environmentIdentifier', 'createService_environmentIdentifier' - The ID of the environment in which the service is created.+--+-- 'name', 'createService_name' - The name of the service.+newCreateService ::+ -- | 'applicationIdentifier'+ Prelude.Text ->+ -- | 'endpointType'+ ServiceEndpointType ->+ -- | 'environmentIdentifier'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ CreateService+newCreateService+ pApplicationIdentifier_+ pEndpointType_+ pEnvironmentIdentifier_+ pName_ =+ CreateService'+ { clientToken = Prelude.Nothing,+ description = Prelude.Nothing,+ lambdaEndpoint = Prelude.Nothing,+ tags = Prelude.Nothing,+ urlEndpoint = Prelude.Nothing,+ vpcId = Prelude.Nothing,+ applicationIdentifier = pApplicationIdentifier_,+ endpointType = pEndpointType_,+ environmentIdentifier = pEnvironmentIdentifier_,+ name = pName_+ }++-- | A unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+createService_clientToken :: Lens.Lens' CreateService (Prelude.Maybe Prelude.Text)+createService_clientToken = Lens.lens (\CreateService' {clientToken} -> clientToken) (\s@CreateService' {} a -> s {clientToken = a} :: CreateService)++-- | The description of the service.+createService_description :: Lens.Lens' CreateService (Prelude.Maybe Prelude.Text)+createService_description = Lens.lens (\CreateService' {description} -> description) (\s@CreateService' {} a -> s {description = a} :: CreateService)++-- | The configuration for the Lambda endpoint type.+createService_lambdaEndpoint :: Lens.Lens' CreateService (Prelude.Maybe LambdaEndpointInput)+createService_lambdaEndpoint = Lens.lens (\CreateService' {lambdaEndpoint} -> lambdaEndpoint) (\s@CreateService' {} a -> s {lambdaEndpoint = a} :: CreateService)++-- | The tags to assign to the service. A tag is a label that you assign to+-- an Amazon Web Services resource. Each tag consists of a key-value pair..+createService_tags :: Lens.Lens' CreateService (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createService_tags = Lens.lens (\CreateService' {tags} -> tags) (\s@CreateService' {} a -> s {tags = a} :: CreateService) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The configuration for the URL endpoint type. When creating a route to a+-- service, Refactor Spaces automatically resolves the address in the+-- @UrlEndpointInput@ object URL when the Domain Name System (DNS)+-- time-to-live (TTL) expires, or every 60 seconds for TTLs less than 60+-- seconds.+createService_urlEndpoint :: Lens.Lens' CreateService (Prelude.Maybe UrlEndpointInput)+createService_urlEndpoint = Lens.lens (\CreateService' {urlEndpoint} -> urlEndpoint) (\s@CreateService' {} a -> s {urlEndpoint = a} :: CreateService)++-- | The ID of the VPC.+createService_vpcId :: Lens.Lens' CreateService (Prelude.Maybe Prelude.Text)+createService_vpcId = Lens.lens (\CreateService' {vpcId} -> vpcId) (\s@CreateService' {} a -> s {vpcId = a} :: CreateService)++-- | The ID of the application which the service is created.+createService_applicationIdentifier :: Lens.Lens' CreateService Prelude.Text+createService_applicationIdentifier = Lens.lens (\CreateService' {applicationIdentifier} -> applicationIdentifier) (\s@CreateService' {} a -> s {applicationIdentifier = a} :: CreateService)++-- | The type of endpoint to use for the service. The type can be a URL in a+-- VPC or an Lambda function.+createService_endpointType :: Lens.Lens' CreateService ServiceEndpointType+createService_endpointType = Lens.lens (\CreateService' {endpointType} -> endpointType) (\s@CreateService' {} a -> s {endpointType = a} :: CreateService)++-- | The ID of the environment in which the service is created.+createService_environmentIdentifier :: Lens.Lens' CreateService Prelude.Text+createService_environmentIdentifier = Lens.lens (\CreateService' {environmentIdentifier} -> environmentIdentifier) (\s@CreateService' {} a -> s {environmentIdentifier = a} :: CreateService)++-- | The name of the service.+createService_name :: Lens.Lens' CreateService Prelude.Text+createService_name = Lens.lens (\CreateService' {name} -> name) (\s@CreateService' {} a -> s {name = a} :: CreateService)++instance Core.AWSRequest CreateService where+ type+ AWSResponse CreateService =+ CreateServiceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateServiceResponse'+ Prelude.<$> (x Data..?> "ApplicationId")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedByAccountId")+ Prelude.<*> (x Data..?> "CreatedTime")+ Prelude.<*> (x Data..?> "Description")+ Prelude.<*> (x Data..?> "EndpointType")+ Prelude.<*> (x Data..?> "EnvironmentId")+ Prelude.<*> (x Data..?> "LambdaEndpoint")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "OwnerAccountId")+ Prelude.<*> (x Data..?> "ServiceId")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "UrlEndpoint")+ Prelude.<*> (x Data..?> "VpcId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateService where+ hashWithSalt _salt CreateService' {..} =+ _salt+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` lambdaEndpoint+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` urlEndpoint+ `Prelude.hashWithSalt` vpcId+ `Prelude.hashWithSalt` applicationIdentifier+ `Prelude.hashWithSalt` endpointType+ `Prelude.hashWithSalt` environmentIdentifier+ `Prelude.hashWithSalt` name++instance Prelude.NFData CreateService where+ rnf CreateService' {..} =+ Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf lambdaEndpoint+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf urlEndpoint+ `Prelude.seq` Prelude.rnf vpcId+ `Prelude.seq` Prelude.rnf applicationIdentifier+ `Prelude.seq` Prelude.rnf endpointType+ `Prelude.seq` Prelude.rnf environmentIdentifier+ `Prelude.seq` Prelude.rnf name++instance Data.ToHeaders CreateService where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateService where+ toJSON CreateService' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ClientToken" Data..=) Prelude.<$> clientToken,+ ("Description" Data..=) Prelude.<$> description,+ ("LambdaEndpoint" Data..=)+ Prelude.<$> lambdaEndpoint,+ ("Tags" Data..=) Prelude.<$> tags,+ ("UrlEndpoint" Data..=) Prelude.<$> urlEndpoint,+ ("VpcId" Data..=) Prelude.<$> vpcId,+ Prelude.Just ("EndpointType" Data..= endpointType),+ Prelude.Just ("Name" Data..= name)+ ]+ )++instance Data.ToPath CreateService where+ toPath CreateService' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications/",+ Data.toBS applicationIdentifier,+ "/services"+ ]++instance Data.ToQuery CreateService where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateServiceResponse' smart constructor.+data CreateServiceResponse = CreateServiceResponse'+ { -- | The ID of the application that the created service belongs to.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the service.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the service creator.+ createdByAccountId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the service is created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | The description of the created service.+ description :: Prelude.Maybe Prelude.Text,+ -- | The endpoint type of the service.+ endpointType :: Prelude.Maybe ServiceEndpointType,+ -- | The unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | The configuration for the Lambda endpoint type.+ lambdaEndpoint :: Prelude.Maybe LambdaEndpointInput,+ -- | A timestamp that indicates when the service was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The name of the service.+ name :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the service owner.+ ownerAccountId :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the service.+ serviceId :: Prelude.Maybe Prelude.Text,+ -- | The current state of the service.+ state :: Prelude.Maybe ServiceState,+ -- | The tags assigned to the created service. A tag is a label that you+ -- assign to an Amazon Web Services resource. Each tag consists of a+ -- key-value pair..+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The configuration for the URL endpoint type.+ urlEndpoint :: Prelude.Maybe UrlEndpointInput,+ -- | The ID of the VPC.+ vpcId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateServiceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'createServiceResponse_applicationId' - The ID of the application that the created service belongs to.+--+-- 'arn', 'createServiceResponse_arn' - The Amazon Resource Name (ARN) of the service.+--+-- 'createdByAccountId', 'createServiceResponse_createdByAccountId' - The Amazon Web Services account ID of the service creator.+--+-- 'createdTime', 'createServiceResponse_createdTime' - A timestamp that indicates when the service is created.+--+-- 'description', 'createServiceResponse_description' - The description of the created service.+--+-- 'endpointType', 'createServiceResponse_endpointType' - The endpoint type of the service.+--+-- 'environmentId', 'createServiceResponse_environmentId' - The unique identifier of the environment.+--+-- 'lambdaEndpoint', 'createServiceResponse_lambdaEndpoint' - The configuration for the Lambda endpoint type.+--+-- 'lastUpdatedTime', 'createServiceResponse_lastUpdatedTime' - A timestamp that indicates when the service was last updated.+--+-- 'name', 'createServiceResponse_name' - The name of the service.+--+-- 'ownerAccountId', 'createServiceResponse_ownerAccountId' - The Amazon Web Services account ID of the service owner.+--+-- 'serviceId', 'createServiceResponse_serviceId' - The unique identifier of the service.+--+-- 'state', 'createServiceResponse_state' - The current state of the service.+--+-- 'tags', 'createServiceResponse_tags' - The tags assigned to the created service. A tag is a label that you+-- assign to an Amazon Web Services resource. Each tag consists of a+-- key-value pair..+--+-- 'urlEndpoint', 'createServiceResponse_urlEndpoint' - The configuration for the URL endpoint type.+--+-- 'vpcId', 'createServiceResponse_vpcId' - The ID of the VPC.+--+-- 'httpStatus', 'createServiceResponse_httpStatus' - The response's http status code.+newCreateServiceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateServiceResponse+newCreateServiceResponse pHttpStatus_ =+ CreateServiceResponse'+ { applicationId =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ createdByAccountId = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ description = Prelude.Nothing,+ endpointType = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ lambdaEndpoint = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ name = Prelude.Nothing,+ ownerAccountId = Prelude.Nothing,+ serviceId = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing,+ urlEndpoint = Prelude.Nothing,+ vpcId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ID of the application that the created service belongs to.+createServiceResponse_applicationId :: Lens.Lens' CreateServiceResponse (Prelude.Maybe Prelude.Text)+createServiceResponse_applicationId = Lens.lens (\CreateServiceResponse' {applicationId} -> applicationId) (\s@CreateServiceResponse' {} a -> s {applicationId = a} :: CreateServiceResponse)++-- | The Amazon Resource Name (ARN) of the service.+createServiceResponse_arn :: Lens.Lens' CreateServiceResponse (Prelude.Maybe Prelude.Text)+createServiceResponse_arn = Lens.lens (\CreateServiceResponse' {arn} -> arn) (\s@CreateServiceResponse' {} a -> s {arn = a} :: CreateServiceResponse)++-- | The Amazon Web Services account ID of the service creator.+createServiceResponse_createdByAccountId :: Lens.Lens' CreateServiceResponse (Prelude.Maybe Prelude.Text)+createServiceResponse_createdByAccountId = Lens.lens (\CreateServiceResponse' {createdByAccountId} -> createdByAccountId) (\s@CreateServiceResponse' {} a -> s {createdByAccountId = a} :: CreateServiceResponse)++-- | A timestamp that indicates when the service is created.+createServiceResponse_createdTime :: Lens.Lens' CreateServiceResponse (Prelude.Maybe Prelude.UTCTime)+createServiceResponse_createdTime = Lens.lens (\CreateServiceResponse' {createdTime} -> createdTime) (\s@CreateServiceResponse' {} a -> s {createdTime = a} :: CreateServiceResponse) Prelude.. Lens.mapping Data._Time++-- | The description of the created service.+createServiceResponse_description :: Lens.Lens' CreateServiceResponse (Prelude.Maybe Prelude.Text)+createServiceResponse_description = Lens.lens (\CreateServiceResponse' {description} -> description) (\s@CreateServiceResponse' {} a -> s {description = a} :: CreateServiceResponse)++-- | The endpoint type of the service.+createServiceResponse_endpointType :: Lens.Lens' CreateServiceResponse (Prelude.Maybe ServiceEndpointType)+createServiceResponse_endpointType = Lens.lens (\CreateServiceResponse' {endpointType} -> endpointType) (\s@CreateServiceResponse' {} a -> s {endpointType = a} :: CreateServiceResponse)++-- | The unique identifier of the environment.+createServiceResponse_environmentId :: Lens.Lens' CreateServiceResponse (Prelude.Maybe Prelude.Text)+createServiceResponse_environmentId = Lens.lens (\CreateServiceResponse' {environmentId} -> environmentId) (\s@CreateServiceResponse' {} a -> s {environmentId = a} :: CreateServiceResponse)++-- | The configuration for the Lambda endpoint type.+createServiceResponse_lambdaEndpoint :: Lens.Lens' CreateServiceResponse (Prelude.Maybe LambdaEndpointInput)+createServiceResponse_lambdaEndpoint = Lens.lens (\CreateServiceResponse' {lambdaEndpoint} -> lambdaEndpoint) (\s@CreateServiceResponse' {} a -> s {lambdaEndpoint = a} :: CreateServiceResponse)++-- | A timestamp that indicates when the service was last updated.+createServiceResponse_lastUpdatedTime :: Lens.Lens' CreateServiceResponse (Prelude.Maybe Prelude.UTCTime)+createServiceResponse_lastUpdatedTime = Lens.lens (\CreateServiceResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@CreateServiceResponse' {} a -> s {lastUpdatedTime = a} :: CreateServiceResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the service.+createServiceResponse_name :: Lens.Lens' CreateServiceResponse (Prelude.Maybe Prelude.Text)+createServiceResponse_name = Lens.lens (\CreateServiceResponse' {name} -> name) (\s@CreateServiceResponse' {} a -> s {name = a} :: CreateServiceResponse)++-- | The Amazon Web Services account ID of the service owner.+createServiceResponse_ownerAccountId :: Lens.Lens' CreateServiceResponse (Prelude.Maybe Prelude.Text)+createServiceResponse_ownerAccountId = Lens.lens (\CreateServiceResponse' {ownerAccountId} -> ownerAccountId) (\s@CreateServiceResponse' {} a -> s {ownerAccountId = a} :: CreateServiceResponse)++-- | The unique identifier of the service.+createServiceResponse_serviceId :: Lens.Lens' CreateServiceResponse (Prelude.Maybe Prelude.Text)+createServiceResponse_serviceId = Lens.lens (\CreateServiceResponse' {serviceId} -> serviceId) (\s@CreateServiceResponse' {} a -> s {serviceId = a} :: CreateServiceResponse)++-- | The current state of the service.+createServiceResponse_state :: Lens.Lens' CreateServiceResponse (Prelude.Maybe ServiceState)+createServiceResponse_state = Lens.lens (\CreateServiceResponse' {state} -> state) (\s@CreateServiceResponse' {} a -> s {state = a} :: CreateServiceResponse)++-- | The tags assigned to the created service. A tag is a label that you+-- assign to an Amazon Web Services resource. Each tag consists of a+-- key-value pair..+createServiceResponse_tags :: Lens.Lens' CreateServiceResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createServiceResponse_tags = Lens.lens (\CreateServiceResponse' {tags} -> tags) (\s@CreateServiceResponse' {} a -> s {tags = a} :: CreateServiceResponse) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The configuration for the URL endpoint type.+createServiceResponse_urlEndpoint :: Lens.Lens' CreateServiceResponse (Prelude.Maybe UrlEndpointInput)+createServiceResponse_urlEndpoint = Lens.lens (\CreateServiceResponse' {urlEndpoint} -> urlEndpoint) (\s@CreateServiceResponse' {} a -> s {urlEndpoint = a} :: CreateServiceResponse)++-- | The ID of the VPC.+createServiceResponse_vpcId :: Lens.Lens' CreateServiceResponse (Prelude.Maybe Prelude.Text)+createServiceResponse_vpcId = Lens.lens (\CreateServiceResponse' {vpcId} -> vpcId) (\s@CreateServiceResponse' {} a -> s {vpcId = a} :: CreateServiceResponse)++-- | The response's http status code.+createServiceResponse_httpStatus :: Lens.Lens' CreateServiceResponse Prelude.Int+createServiceResponse_httpStatus = Lens.lens (\CreateServiceResponse' {httpStatus} -> httpStatus) (\s@CreateServiceResponse' {} a -> s {httpStatus = a} :: CreateServiceResponse)++instance Prelude.NFData CreateServiceResponse where+ rnf CreateServiceResponse' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdByAccountId+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf endpointType+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf lambdaEndpoint+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf ownerAccountId+ `Prelude.seq` Prelude.rnf serviceId+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf urlEndpoint+ `Prelude.seq` Prelude.rnf vpcId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/DeleteApplication.hs view
@@ -0,0 +1,246 @@+{-# 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.MigrationHubReFactorSpaces.DeleteApplication+-- 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 an Amazon Web Services Migration Hub Refactor Spaces+-- application. Before you can delete an application, you must first delete+-- any services or routes within the application.+module Amazonka.MigrationHubReFactorSpaces.DeleteApplication+ ( -- * Creating a Request+ DeleteApplication (..),+ newDeleteApplication,++ -- * Request Lenses+ deleteApplication_applicationIdentifier,+ deleteApplication_environmentIdentifier,++ -- * Destructuring the Response+ DeleteApplicationResponse (..),+ newDeleteApplicationResponse,++ -- * Response Lenses+ deleteApplicationResponse_applicationId,+ deleteApplicationResponse_arn,+ deleteApplicationResponse_environmentId,+ deleteApplicationResponse_lastUpdatedTime,+ deleteApplicationResponse_name,+ deleteApplicationResponse_state,+ deleteApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteApplication' smart constructor.+data DeleteApplication = DeleteApplication'+ { -- | The ID of the application.+ applicationIdentifier :: Prelude.Text,+ -- | The ID of the environment.+ environmentIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationIdentifier', 'deleteApplication_applicationIdentifier' - The ID of the application.+--+-- 'environmentIdentifier', 'deleteApplication_environmentIdentifier' - The ID of the environment.+newDeleteApplication ::+ -- | 'applicationIdentifier'+ Prelude.Text ->+ -- | 'environmentIdentifier'+ Prelude.Text ->+ DeleteApplication+newDeleteApplication+ pApplicationIdentifier_+ pEnvironmentIdentifier_ =+ DeleteApplication'+ { applicationIdentifier =+ pApplicationIdentifier_,+ environmentIdentifier = pEnvironmentIdentifier_+ }++-- | The ID of the application.+deleteApplication_applicationIdentifier :: Lens.Lens' DeleteApplication Prelude.Text+deleteApplication_applicationIdentifier = Lens.lens (\DeleteApplication' {applicationIdentifier} -> applicationIdentifier) (\s@DeleteApplication' {} a -> s {applicationIdentifier = a} :: DeleteApplication)++-- | The ID of the environment.+deleteApplication_environmentIdentifier :: Lens.Lens' DeleteApplication Prelude.Text+deleteApplication_environmentIdentifier = Lens.lens (\DeleteApplication' {environmentIdentifier} -> environmentIdentifier) (\s@DeleteApplication' {} a -> s {environmentIdentifier = a} :: DeleteApplication)++instance Core.AWSRequest DeleteApplication where+ type+ AWSResponse DeleteApplication =+ DeleteApplicationResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteApplicationResponse'+ Prelude.<$> (x Data..?> "ApplicationId")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "EnvironmentId")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteApplication where+ hashWithSalt _salt DeleteApplication' {..} =+ _salt+ `Prelude.hashWithSalt` applicationIdentifier+ `Prelude.hashWithSalt` environmentIdentifier++instance Prelude.NFData DeleteApplication where+ rnf DeleteApplication' {..} =+ Prelude.rnf applicationIdentifier+ `Prelude.seq` Prelude.rnf environmentIdentifier++instance Data.ToHeaders DeleteApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteApplication where+ toPath DeleteApplication' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications/",+ Data.toBS applicationIdentifier+ ]++instance Data.ToQuery DeleteApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteApplicationResponse' smart constructor.+data DeleteApplicationResponse = DeleteApplicationResponse'+ { -- | The ID of the application.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the application.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the application’s environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the environment was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The name of the application.+ name :: Prelude.Maybe Prelude.Text,+ -- | The current state of the application.+ state :: Prelude.Maybe ApplicationState,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'deleteApplicationResponse_applicationId' - The ID of the application.+--+-- 'arn', 'deleteApplicationResponse_arn' - The Amazon Resource Name (ARN) of the application.+--+-- 'environmentId', 'deleteApplicationResponse_environmentId' - The unique identifier of the application’s environment.+--+-- 'lastUpdatedTime', 'deleteApplicationResponse_lastUpdatedTime' - A timestamp that indicates when the environment was last updated.+--+-- 'name', 'deleteApplicationResponse_name' - The name of the application.+--+-- 'state', 'deleteApplicationResponse_state' - The current state of the application.+--+-- 'httpStatus', 'deleteApplicationResponse_httpStatus' - The response's http status code.+newDeleteApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteApplicationResponse+newDeleteApplicationResponse pHttpStatus_ =+ DeleteApplicationResponse'+ { applicationId =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ name = Prelude.Nothing,+ state = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ID of the application.+deleteApplicationResponse_applicationId :: Lens.Lens' DeleteApplicationResponse (Prelude.Maybe Prelude.Text)+deleteApplicationResponse_applicationId = Lens.lens (\DeleteApplicationResponse' {applicationId} -> applicationId) (\s@DeleteApplicationResponse' {} a -> s {applicationId = a} :: DeleteApplicationResponse)++-- | The Amazon Resource Name (ARN) of the application.+deleteApplicationResponse_arn :: Lens.Lens' DeleteApplicationResponse (Prelude.Maybe Prelude.Text)+deleteApplicationResponse_arn = Lens.lens (\DeleteApplicationResponse' {arn} -> arn) (\s@DeleteApplicationResponse' {} a -> s {arn = a} :: DeleteApplicationResponse)++-- | The unique identifier of the application’s environment.+deleteApplicationResponse_environmentId :: Lens.Lens' DeleteApplicationResponse (Prelude.Maybe Prelude.Text)+deleteApplicationResponse_environmentId = Lens.lens (\DeleteApplicationResponse' {environmentId} -> environmentId) (\s@DeleteApplicationResponse' {} a -> s {environmentId = a} :: DeleteApplicationResponse)++-- | A timestamp that indicates when the environment was last updated.+deleteApplicationResponse_lastUpdatedTime :: Lens.Lens' DeleteApplicationResponse (Prelude.Maybe Prelude.UTCTime)+deleteApplicationResponse_lastUpdatedTime = Lens.lens (\DeleteApplicationResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@DeleteApplicationResponse' {} a -> s {lastUpdatedTime = a} :: DeleteApplicationResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the application.+deleteApplicationResponse_name :: Lens.Lens' DeleteApplicationResponse (Prelude.Maybe Prelude.Text)+deleteApplicationResponse_name = Lens.lens (\DeleteApplicationResponse' {name} -> name) (\s@DeleteApplicationResponse' {} a -> s {name = a} :: DeleteApplicationResponse)++-- | The current state of the application.+deleteApplicationResponse_state :: Lens.Lens' DeleteApplicationResponse (Prelude.Maybe ApplicationState)+deleteApplicationResponse_state = Lens.lens (\DeleteApplicationResponse' {state} -> state) (\s@DeleteApplicationResponse' {} a -> s {state = a} :: DeleteApplicationResponse)++-- | The response's http status code.+deleteApplicationResponse_httpStatus :: Lens.Lens' DeleteApplicationResponse Prelude.Int+deleteApplicationResponse_httpStatus = Lens.lens (\DeleteApplicationResponse' {httpStatus} -> httpStatus) (\s@DeleteApplicationResponse' {} a -> s {httpStatus = a} :: DeleteApplicationResponse)++instance Prelude.NFData DeleteApplicationResponse where+ rnf DeleteApplicationResponse' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/DeleteEnvironment.hs view
@@ -0,0 +1,212 @@+{-# 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.MigrationHubReFactorSpaces.DeleteEnvironment+-- 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 an Amazon Web Services Migration Hub Refactor Spaces+-- environment. Before you can delete an environment, you must first delete+-- any applications and services within the environment.+module Amazonka.MigrationHubReFactorSpaces.DeleteEnvironment+ ( -- * Creating a Request+ DeleteEnvironment (..),+ newDeleteEnvironment,++ -- * Request Lenses+ deleteEnvironment_environmentIdentifier,++ -- * Destructuring the Response+ DeleteEnvironmentResponse (..),+ newDeleteEnvironmentResponse,++ -- * Response Lenses+ deleteEnvironmentResponse_arn,+ deleteEnvironmentResponse_environmentId,+ deleteEnvironmentResponse_lastUpdatedTime,+ deleteEnvironmentResponse_name,+ deleteEnvironmentResponse_state,+ deleteEnvironmentResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteEnvironment' smart constructor.+data DeleteEnvironment = DeleteEnvironment'+ { -- | The ID of the environment.+ environmentIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteEnvironment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'environmentIdentifier', 'deleteEnvironment_environmentIdentifier' - The ID of the environment.+newDeleteEnvironment ::+ -- | 'environmentIdentifier'+ Prelude.Text ->+ DeleteEnvironment+newDeleteEnvironment pEnvironmentIdentifier_ =+ DeleteEnvironment'+ { environmentIdentifier =+ pEnvironmentIdentifier_+ }++-- | The ID of the environment.+deleteEnvironment_environmentIdentifier :: Lens.Lens' DeleteEnvironment Prelude.Text+deleteEnvironment_environmentIdentifier = Lens.lens (\DeleteEnvironment' {environmentIdentifier} -> environmentIdentifier) (\s@DeleteEnvironment' {} a -> s {environmentIdentifier = a} :: DeleteEnvironment)++instance Core.AWSRequest DeleteEnvironment where+ type+ AWSResponse DeleteEnvironment =+ DeleteEnvironmentResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteEnvironmentResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "EnvironmentId")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteEnvironment where+ hashWithSalt _salt DeleteEnvironment' {..} =+ _salt `Prelude.hashWithSalt` environmentIdentifier++instance Prelude.NFData DeleteEnvironment where+ rnf DeleteEnvironment' {..} =+ Prelude.rnf environmentIdentifier++instance Data.ToHeaders DeleteEnvironment where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteEnvironment where+ toPath DeleteEnvironment' {..} =+ Prelude.mconcat+ ["/environments/", Data.toBS environmentIdentifier]++instance Data.ToQuery DeleteEnvironment where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteEnvironmentResponse' smart constructor.+data DeleteEnvironmentResponse = DeleteEnvironmentResponse'+ { -- | The Amazon Resource Name (ARN) of the environment.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the environment was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The name of the environment.+ name :: Prelude.Maybe Prelude.Text,+ -- | The current state of the environment.+ state :: Prelude.Maybe EnvironmentState,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteEnvironmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'deleteEnvironmentResponse_arn' - The Amazon Resource Name (ARN) of the environment.+--+-- 'environmentId', 'deleteEnvironmentResponse_environmentId' - The unique identifier of the environment.+--+-- 'lastUpdatedTime', 'deleteEnvironmentResponse_lastUpdatedTime' - A timestamp that indicates when the environment was last updated.+--+-- 'name', 'deleteEnvironmentResponse_name' - The name of the environment.+--+-- 'state', 'deleteEnvironmentResponse_state' - The current state of the environment.+--+-- 'httpStatus', 'deleteEnvironmentResponse_httpStatus' - The response's http status code.+newDeleteEnvironmentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteEnvironmentResponse+newDeleteEnvironmentResponse pHttpStatus_ =+ DeleteEnvironmentResponse'+ { arn = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ name = Prelude.Nothing,+ state = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the environment.+deleteEnvironmentResponse_arn :: Lens.Lens' DeleteEnvironmentResponse (Prelude.Maybe Prelude.Text)+deleteEnvironmentResponse_arn = Lens.lens (\DeleteEnvironmentResponse' {arn} -> arn) (\s@DeleteEnvironmentResponse' {} a -> s {arn = a} :: DeleteEnvironmentResponse)++-- | The unique identifier of the environment.+deleteEnvironmentResponse_environmentId :: Lens.Lens' DeleteEnvironmentResponse (Prelude.Maybe Prelude.Text)+deleteEnvironmentResponse_environmentId = Lens.lens (\DeleteEnvironmentResponse' {environmentId} -> environmentId) (\s@DeleteEnvironmentResponse' {} a -> s {environmentId = a} :: DeleteEnvironmentResponse)++-- | A timestamp that indicates when the environment was last updated.+deleteEnvironmentResponse_lastUpdatedTime :: Lens.Lens' DeleteEnvironmentResponse (Prelude.Maybe Prelude.UTCTime)+deleteEnvironmentResponse_lastUpdatedTime = Lens.lens (\DeleteEnvironmentResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@DeleteEnvironmentResponse' {} a -> s {lastUpdatedTime = a} :: DeleteEnvironmentResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the environment.+deleteEnvironmentResponse_name :: Lens.Lens' DeleteEnvironmentResponse (Prelude.Maybe Prelude.Text)+deleteEnvironmentResponse_name = Lens.lens (\DeleteEnvironmentResponse' {name} -> name) (\s@DeleteEnvironmentResponse' {} a -> s {name = a} :: DeleteEnvironmentResponse)++-- | The current state of the environment.+deleteEnvironmentResponse_state :: Lens.Lens' DeleteEnvironmentResponse (Prelude.Maybe EnvironmentState)+deleteEnvironmentResponse_state = Lens.lens (\DeleteEnvironmentResponse' {state} -> state) (\s@DeleteEnvironmentResponse' {} a -> s {state = a} :: DeleteEnvironmentResponse)++-- | The response's http status code.+deleteEnvironmentResponse_httpStatus :: Lens.Lens' DeleteEnvironmentResponse Prelude.Int+deleteEnvironmentResponse_httpStatus = Lens.lens (\DeleteEnvironmentResponse' {httpStatus} -> httpStatus) (\s@DeleteEnvironmentResponse' {} a -> s {httpStatus = a} :: DeleteEnvironmentResponse)++instance Prelude.NFData DeleteEnvironmentResponse where+ rnf DeleteEnvironmentResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/DeleteResourcePolicy.hs view
@@ -0,0 +1,148 @@+{-# 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.MigrationHubReFactorSpaces.DeleteResourcePolicy+-- 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 resource policy set for the environment.+module Amazonka.MigrationHubReFactorSpaces.DeleteResourcePolicy+ ( -- * Creating a Request+ DeleteResourcePolicy (..),+ newDeleteResourcePolicy,++ -- * Request Lenses+ deleteResourcePolicy_identifier,++ -- * Destructuring the Response+ DeleteResourcePolicyResponse (..),+ newDeleteResourcePolicyResponse,++ -- * Response Lenses+ deleteResourcePolicyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteResourcePolicy' smart constructor.+data DeleteResourcePolicy = DeleteResourcePolicy'+ { -- | Amazon Resource Name (ARN) of the resource associated with the policy.+ identifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteResourcePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'identifier', 'deleteResourcePolicy_identifier' - Amazon Resource Name (ARN) of the resource associated with the policy.+newDeleteResourcePolicy ::+ -- | 'identifier'+ Prelude.Text ->+ DeleteResourcePolicy+newDeleteResourcePolicy pIdentifier_ =+ DeleteResourcePolicy' {identifier = pIdentifier_}++-- | Amazon Resource Name (ARN) of the resource associated with the policy.+deleteResourcePolicy_identifier :: Lens.Lens' DeleteResourcePolicy Prelude.Text+deleteResourcePolicy_identifier = Lens.lens (\DeleteResourcePolicy' {identifier} -> identifier) (\s@DeleteResourcePolicy' {} a -> s {identifier = a} :: DeleteResourcePolicy)++instance Core.AWSRequest DeleteResourcePolicy where+ type+ AWSResponse DeleteResourcePolicy =+ DeleteResourcePolicyResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteResourcePolicyResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteResourcePolicy where+ hashWithSalt _salt DeleteResourcePolicy' {..} =+ _salt `Prelude.hashWithSalt` identifier++instance Prelude.NFData DeleteResourcePolicy where+ rnf DeleteResourcePolicy' {..} =+ Prelude.rnf identifier++instance Data.ToHeaders DeleteResourcePolicy where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteResourcePolicy where+ toPath DeleteResourcePolicy' {..} =+ Prelude.mconcat+ ["/resourcepolicy/", Data.toBS identifier]++instance Data.ToQuery DeleteResourcePolicy where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteResourcePolicyResponse' smart constructor.+data DeleteResourcePolicyResponse = DeleteResourcePolicyResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteResourcePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteResourcePolicyResponse_httpStatus' - The response's http status code.+newDeleteResourcePolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteResourcePolicyResponse+newDeleteResourcePolicyResponse pHttpStatus_ =+ DeleteResourcePolicyResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deleteResourcePolicyResponse_httpStatus :: Lens.Lens' DeleteResourcePolicyResponse Prelude.Int+deleteResourcePolicyResponse_httpStatus = Lens.lens (\DeleteResourcePolicyResponse' {httpStatus} -> httpStatus) (\s@DeleteResourcePolicyResponse' {} a -> s {httpStatus = a} :: DeleteResourcePolicyResponse)++instance Prelude.NFData DeleteResourcePolicyResponse where+ rnf DeleteResourcePolicyResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/DeleteRoute.hs view
@@ -0,0 +1,259 @@+{-# 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.MigrationHubReFactorSpaces.DeleteRoute+-- 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 an Amazon Web Services Migration Hub Refactor Spaces route.+module Amazonka.MigrationHubReFactorSpaces.DeleteRoute+ ( -- * Creating a Request+ DeleteRoute (..),+ newDeleteRoute,++ -- * Request Lenses+ deleteRoute_applicationIdentifier,+ deleteRoute_environmentIdentifier,+ deleteRoute_routeIdentifier,++ -- * Destructuring the Response+ DeleteRouteResponse (..),+ newDeleteRouteResponse,++ -- * Response Lenses+ deleteRouteResponse_applicationId,+ deleteRouteResponse_arn,+ deleteRouteResponse_lastUpdatedTime,+ deleteRouteResponse_routeId,+ deleteRouteResponse_serviceId,+ deleteRouteResponse_state,+ deleteRouteResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteRoute' smart constructor.+data DeleteRoute = DeleteRoute'+ { -- | The ID of the application to delete the route from.+ applicationIdentifier :: Prelude.Text,+ -- | The ID of the environment to delete the route from.+ environmentIdentifier :: Prelude.Text,+ -- | The ID of the route to delete.+ routeIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRoute' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationIdentifier', 'deleteRoute_applicationIdentifier' - The ID of the application to delete the route from.+--+-- 'environmentIdentifier', 'deleteRoute_environmentIdentifier' - The ID of the environment to delete the route from.+--+-- 'routeIdentifier', 'deleteRoute_routeIdentifier' - The ID of the route to delete.+newDeleteRoute ::+ -- | 'applicationIdentifier'+ Prelude.Text ->+ -- | 'environmentIdentifier'+ Prelude.Text ->+ -- | 'routeIdentifier'+ Prelude.Text ->+ DeleteRoute+newDeleteRoute+ pApplicationIdentifier_+ pEnvironmentIdentifier_+ pRouteIdentifier_ =+ DeleteRoute'+ { applicationIdentifier =+ pApplicationIdentifier_,+ environmentIdentifier = pEnvironmentIdentifier_,+ routeIdentifier = pRouteIdentifier_+ }++-- | The ID of the application to delete the route from.+deleteRoute_applicationIdentifier :: Lens.Lens' DeleteRoute Prelude.Text+deleteRoute_applicationIdentifier = Lens.lens (\DeleteRoute' {applicationIdentifier} -> applicationIdentifier) (\s@DeleteRoute' {} a -> s {applicationIdentifier = a} :: DeleteRoute)++-- | The ID of the environment to delete the route from.+deleteRoute_environmentIdentifier :: Lens.Lens' DeleteRoute Prelude.Text+deleteRoute_environmentIdentifier = Lens.lens (\DeleteRoute' {environmentIdentifier} -> environmentIdentifier) (\s@DeleteRoute' {} a -> s {environmentIdentifier = a} :: DeleteRoute)++-- | The ID of the route to delete.+deleteRoute_routeIdentifier :: Lens.Lens' DeleteRoute Prelude.Text+deleteRoute_routeIdentifier = Lens.lens (\DeleteRoute' {routeIdentifier} -> routeIdentifier) (\s@DeleteRoute' {} a -> s {routeIdentifier = a} :: DeleteRoute)++instance Core.AWSRequest DeleteRoute where+ type AWSResponse DeleteRoute = DeleteRouteResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteRouteResponse'+ Prelude.<$> (x Data..?> "ApplicationId")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "RouteId")+ Prelude.<*> (x Data..?> "ServiceId")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteRoute where+ hashWithSalt _salt DeleteRoute' {..} =+ _salt+ `Prelude.hashWithSalt` applicationIdentifier+ `Prelude.hashWithSalt` environmentIdentifier+ `Prelude.hashWithSalt` routeIdentifier++instance Prelude.NFData DeleteRoute where+ rnf DeleteRoute' {..} =+ Prelude.rnf applicationIdentifier+ `Prelude.seq` Prelude.rnf environmentIdentifier+ `Prelude.seq` Prelude.rnf routeIdentifier++instance Data.ToHeaders DeleteRoute where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteRoute where+ toPath DeleteRoute' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications/",+ Data.toBS applicationIdentifier,+ "/routes/",+ Data.toBS routeIdentifier+ ]++instance Data.ToQuery DeleteRoute where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteRouteResponse' smart constructor.+data DeleteRouteResponse = DeleteRouteResponse'+ { -- | The ID of the application that the route belongs to.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the route.+ arn :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the route was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The ID of the route to delete.+ routeId :: Prelude.Maybe Prelude.Text,+ -- | The ID of the service that the route belongs to.+ serviceId :: Prelude.Maybe Prelude.Text,+ -- | The current state of the route.+ state :: Prelude.Maybe RouteState,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRouteResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'deleteRouteResponse_applicationId' - The ID of the application that the route belongs to.+--+-- 'arn', 'deleteRouteResponse_arn' - The Amazon Resource Name (ARN) of the route.+--+-- 'lastUpdatedTime', 'deleteRouteResponse_lastUpdatedTime' - A timestamp that indicates when the route was last updated.+--+-- 'routeId', 'deleteRouteResponse_routeId' - The ID of the route to delete.+--+-- 'serviceId', 'deleteRouteResponse_serviceId' - The ID of the service that the route belongs to.+--+-- 'state', 'deleteRouteResponse_state' - The current state of the route.+--+-- 'httpStatus', 'deleteRouteResponse_httpStatus' - The response's http status code.+newDeleteRouteResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteRouteResponse+newDeleteRouteResponse pHttpStatus_ =+ DeleteRouteResponse'+ { applicationId =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ routeId = Prelude.Nothing,+ serviceId = Prelude.Nothing,+ state = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ID of the application that the route belongs to.+deleteRouteResponse_applicationId :: Lens.Lens' DeleteRouteResponse (Prelude.Maybe Prelude.Text)+deleteRouteResponse_applicationId = Lens.lens (\DeleteRouteResponse' {applicationId} -> applicationId) (\s@DeleteRouteResponse' {} a -> s {applicationId = a} :: DeleteRouteResponse)++-- | The Amazon Resource Name (ARN) of the route.+deleteRouteResponse_arn :: Lens.Lens' DeleteRouteResponse (Prelude.Maybe Prelude.Text)+deleteRouteResponse_arn = Lens.lens (\DeleteRouteResponse' {arn} -> arn) (\s@DeleteRouteResponse' {} a -> s {arn = a} :: DeleteRouteResponse)++-- | A timestamp that indicates when the route was last updated.+deleteRouteResponse_lastUpdatedTime :: Lens.Lens' DeleteRouteResponse (Prelude.Maybe Prelude.UTCTime)+deleteRouteResponse_lastUpdatedTime = Lens.lens (\DeleteRouteResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@DeleteRouteResponse' {} a -> s {lastUpdatedTime = a} :: DeleteRouteResponse) Prelude.. Lens.mapping Data._Time++-- | The ID of the route to delete.+deleteRouteResponse_routeId :: Lens.Lens' DeleteRouteResponse (Prelude.Maybe Prelude.Text)+deleteRouteResponse_routeId = Lens.lens (\DeleteRouteResponse' {routeId} -> routeId) (\s@DeleteRouteResponse' {} a -> s {routeId = a} :: DeleteRouteResponse)++-- | The ID of the service that the route belongs to.+deleteRouteResponse_serviceId :: Lens.Lens' DeleteRouteResponse (Prelude.Maybe Prelude.Text)+deleteRouteResponse_serviceId = Lens.lens (\DeleteRouteResponse' {serviceId} -> serviceId) (\s@DeleteRouteResponse' {} a -> s {serviceId = a} :: DeleteRouteResponse)++-- | The current state of the route.+deleteRouteResponse_state :: Lens.Lens' DeleteRouteResponse (Prelude.Maybe RouteState)+deleteRouteResponse_state = Lens.lens (\DeleteRouteResponse' {state} -> state) (\s@DeleteRouteResponse' {} a -> s {state = a} :: DeleteRouteResponse)++-- | The response's http status code.+deleteRouteResponse_httpStatus :: Lens.Lens' DeleteRouteResponse Prelude.Int+deleteRouteResponse_httpStatus = Lens.lens (\DeleteRouteResponse' {httpStatus} -> httpStatus) (\s@DeleteRouteResponse' {} a -> s {httpStatus = a} :: DeleteRouteResponse)++instance Prelude.NFData DeleteRouteResponse where+ rnf DeleteRouteResponse' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf routeId+ `Prelude.seq` Prelude.rnf serviceId+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/DeleteService.hs view
@@ -0,0 +1,285 @@+{-# 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.MigrationHubReFactorSpaces.DeleteService+-- 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 an Amazon Web Services Migration Hub Refactor Spaces service.+module Amazonka.MigrationHubReFactorSpaces.DeleteService+ ( -- * Creating a Request+ DeleteService (..),+ newDeleteService,++ -- * Request Lenses+ deleteService_applicationIdentifier,+ deleteService_environmentIdentifier,+ deleteService_serviceIdentifier,++ -- * Destructuring the Response+ DeleteServiceResponse (..),+ newDeleteServiceResponse,++ -- * Response Lenses+ deleteServiceResponse_applicationId,+ deleteServiceResponse_arn,+ deleteServiceResponse_environmentId,+ deleteServiceResponse_lastUpdatedTime,+ deleteServiceResponse_name,+ deleteServiceResponse_serviceId,+ deleteServiceResponse_state,+ deleteServiceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteService' smart constructor.+data DeleteService = DeleteService'+ { -- | Deletes a Refactor Spaces service.+ --+ -- The @RefactorSpacesSecurityGroup@ security group must be removed from+ -- all Amazon Web Services resources in the virtual private cloud (VPC)+ -- prior to deleting a service with a URL endpoint in a VPC.+ applicationIdentifier :: Prelude.Text,+ -- | The ID of the environment that the service is in.+ environmentIdentifier :: Prelude.Text,+ -- | The ID of the service to delete.+ serviceIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteService' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationIdentifier', 'deleteService_applicationIdentifier' - Deletes a Refactor Spaces service.+--+-- The @RefactorSpacesSecurityGroup@ security group must be removed from+-- all Amazon Web Services resources in the virtual private cloud (VPC)+-- prior to deleting a service with a URL endpoint in a VPC.+--+-- 'environmentIdentifier', 'deleteService_environmentIdentifier' - The ID of the environment that the service is in.+--+-- 'serviceIdentifier', 'deleteService_serviceIdentifier' - The ID of the service to delete.+newDeleteService ::+ -- | 'applicationIdentifier'+ Prelude.Text ->+ -- | 'environmentIdentifier'+ Prelude.Text ->+ -- | 'serviceIdentifier'+ Prelude.Text ->+ DeleteService+newDeleteService+ pApplicationIdentifier_+ pEnvironmentIdentifier_+ pServiceIdentifier_ =+ DeleteService'+ { applicationIdentifier =+ pApplicationIdentifier_,+ environmentIdentifier = pEnvironmentIdentifier_,+ serviceIdentifier = pServiceIdentifier_+ }++-- | Deletes a Refactor Spaces service.+--+-- The @RefactorSpacesSecurityGroup@ security group must be removed from+-- all Amazon Web Services resources in the virtual private cloud (VPC)+-- prior to deleting a service with a URL endpoint in a VPC.+deleteService_applicationIdentifier :: Lens.Lens' DeleteService Prelude.Text+deleteService_applicationIdentifier = Lens.lens (\DeleteService' {applicationIdentifier} -> applicationIdentifier) (\s@DeleteService' {} a -> s {applicationIdentifier = a} :: DeleteService)++-- | The ID of the environment that the service is in.+deleteService_environmentIdentifier :: Lens.Lens' DeleteService Prelude.Text+deleteService_environmentIdentifier = Lens.lens (\DeleteService' {environmentIdentifier} -> environmentIdentifier) (\s@DeleteService' {} a -> s {environmentIdentifier = a} :: DeleteService)++-- | The ID of the service to delete.+deleteService_serviceIdentifier :: Lens.Lens' DeleteService Prelude.Text+deleteService_serviceIdentifier = Lens.lens (\DeleteService' {serviceIdentifier} -> serviceIdentifier) (\s@DeleteService' {} a -> s {serviceIdentifier = a} :: DeleteService)++instance Core.AWSRequest DeleteService where+ type+ AWSResponse DeleteService =+ DeleteServiceResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteServiceResponse'+ Prelude.<$> (x Data..?> "ApplicationId")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "EnvironmentId")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "ServiceId")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteService where+ hashWithSalt _salt DeleteService' {..} =+ _salt+ `Prelude.hashWithSalt` applicationIdentifier+ `Prelude.hashWithSalt` environmentIdentifier+ `Prelude.hashWithSalt` serviceIdentifier++instance Prelude.NFData DeleteService where+ rnf DeleteService' {..} =+ Prelude.rnf applicationIdentifier+ `Prelude.seq` Prelude.rnf environmentIdentifier+ `Prelude.seq` Prelude.rnf serviceIdentifier++instance Data.ToHeaders DeleteService where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteService where+ toPath DeleteService' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications/",+ Data.toBS applicationIdentifier,+ "/services/",+ Data.toBS serviceIdentifier+ ]++instance Data.ToQuery DeleteService where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteServiceResponse' smart constructor.+data DeleteServiceResponse = DeleteServiceResponse'+ { -- | The ID of the application that the service is in.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the service.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the service was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The name of the service.+ name :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the service.+ serviceId :: Prelude.Maybe Prelude.Text,+ -- | The current state of the service.+ state :: Prelude.Maybe ServiceState,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteServiceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'deleteServiceResponse_applicationId' - The ID of the application that the service is in.+--+-- 'arn', 'deleteServiceResponse_arn' - The Amazon Resource Name (ARN) of the service.+--+-- 'environmentId', 'deleteServiceResponse_environmentId' - The unique identifier of the environment.+--+-- 'lastUpdatedTime', 'deleteServiceResponse_lastUpdatedTime' - A timestamp that indicates when the service was last updated.+--+-- 'name', 'deleteServiceResponse_name' - The name of the service.+--+-- 'serviceId', 'deleteServiceResponse_serviceId' - The unique identifier of the service.+--+-- 'state', 'deleteServiceResponse_state' - The current state of the service.+--+-- 'httpStatus', 'deleteServiceResponse_httpStatus' - The response's http status code.+newDeleteServiceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteServiceResponse+newDeleteServiceResponse pHttpStatus_ =+ DeleteServiceResponse'+ { applicationId =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ name = Prelude.Nothing,+ serviceId = Prelude.Nothing,+ state = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ID of the application that the service is in.+deleteServiceResponse_applicationId :: Lens.Lens' DeleteServiceResponse (Prelude.Maybe Prelude.Text)+deleteServiceResponse_applicationId = Lens.lens (\DeleteServiceResponse' {applicationId} -> applicationId) (\s@DeleteServiceResponse' {} a -> s {applicationId = a} :: DeleteServiceResponse)++-- | The Amazon Resource Name (ARN) of the service.+deleteServiceResponse_arn :: Lens.Lens' DeleteServiceResponse (Prelude.Maybe Prelude.Text)+deleteServiceResponse_arn = Lens.lens (\DeleteServiceResponse' {arn} -> arn) (\s@DeleteServiceResponse' {} a -> s {arn = a} :: DeleteServiceResponse)++-- | The unique identifier of the environment.+deleteServiceResponse_environmentId :: Lens.Lens' DeleteServiceResponse (Prelude.Maybe Prelude.Text)+deleteServiceResponse_environmentId = Lens.lens (\DeleteServiceResponse' {environmentId} -> environmentId) (\s@DeleteServiceResponse' {} a -> s {environmentId = a} :: DeleteServiceResponse)++-- | A timestamp that indicates when the service was last updated.+deleteServiceResponse_lastUpdatedTime :: Lens.Lens' DeleteServiceResponse (Prelude.Maybe Prelude.UTCTime)+deleteServiceResponse_lastUpdatedTime = Lens.lens (\DeleteServiceResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@DeleteServiceResponse' {} a -> s {lastUpdatedTime = a} :: DeleteServiceResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the service.+deleteServiceResponse_name :: Lens.Lens' DeleteServiceResponse (Prelude.Maybe Prelude.Text)+deleteServiceResponse_name = Lens.lens (\DeleteServiceResponse' {name} -> name) (\s@DeleteServiceResponse' {} a -> s {name = a} :: DeleteServiceResponse)++-- | The unique identifier of the service.+deleteServiceResponse_serviceId :: Lens.Lens' DeleteServiceResponse (Prelude.Maybe Prelude.Text)+deleteServiceResponse_serviceId = Lens.lens (\DeleteServiceResponse' {serviceId} -> serviceId) (\s@DeleteServiceResponse' {} a -> s {serviceId = a} :: DeleteServiceResponse)++-- | The current state of the service.+deleteServiceResponse_state :: Lens.Lens' DeleteServiceResponse (Prelude.Maybe ServiceState)+deleteServiceResponse_state = Lens.lens (\DeleteServiceResponse' {state} -> state) (\s@DeleteServiceResponse' {} a -> s {state = a} :: DeleteServiceResponse)++-- | The response's http status code.+deleteServiceResponse_httpStatus :: Lens.Lens' DeleteServiceResponse Prelude.Int+deleteServiceResponse_httpStatus = Lens.lens (\DeleteServiceResponse' {httpStatus} -> httpStatus) (\s@DeleteServiceResponse' {} a -> s {httpStatus = a} :: DeleteServiceResponse)++instance Prelude.NFData DeleteServiceResponse where+ rnf DeleteServiceResponse' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf serviceId+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/GetApplication.hs view
@@ -0,0 +1,349 @@+{-# 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.MigrationHubReFactorSpaces.GetApplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets an Amazon Web Services Migration Hub Refactor Spaces application.+module Amazonka.MigrationHubReFactorSpaces.GetApplication+ ( -- * Creating a Request+ GetApplication (..),+ newGetApplication,++ -- * Request Lenses+ getApplication_applicationIdentifier,+ getApplication_environmentIdentifier,++ -- * Destructuring the Response+ GetApplicationResponse (..),+ newGetApplicationResponse,++ -- * Response Lenses+ getApplicationResponse_apiGatewayProxy,+ getApplicationResponse_applicationId,+ getApplicationResponse_arn,+ getApplicationResponse_createdByAccountId,+ getApplicationResponse_createdTime,+ getApplicationResponse_environmentId,+ getApplicationResponse_error,+ getApplicationResponse_lastUpdatedTime,+ getApplicationResponse_name,+ getApplicationResponse_ownerAccountId,+ getApplicationResponse_proxyType,+ getApplicationResponse_state,+ getApplicationResponse_tags,+ getApplicationResponse_vpcId,+ getApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetApplication' smart constructor.+data GetApplication = GetApplication'+ { -- | The ID of the application.+ applicationIdentifier :: Prelude.Text,+ -- | The ID of the environment.+ environmentIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationIdentifier', 'getApplication_applicationIdentifier' - The ID of the application.+--+-- 'environmentIdentifier', 'getApplication_environmentIdentifier' - The ID of the environment.+newGetApplication ::+ -- | 'applicationIdentifier'+ Prelude.Text ->+ -- | 'environmentIdentifier'+ Prelude.Text ->+ GetApplication+newGetApplication+ pApplicationIdentifier_+ pEnvironmentIdentifier_ =+ GetApplication'+ { applicationIdentifier =+ pApplicationIdentifier_,+ environmentIdentifier = pEnvironmentIdentifier_+ }++-- | The ID of the application.+getApplication_applicationIdentifier :: Lens.Lens' GetApplication Prelude.Text+getApplication_applicationIdentifier = Lens.lens (\GetApplication' {applicationIdentifier} -> applicationIdentifier) (\s@GetApplication' {} a -> s {applicationIdentifier = a} :: GetApplication)++-- | The ID of the environment.+getApplication_environmentIdentifier :: Lens.Lens' GetApplication Prelude.Text+getApplication_environmentIdentifier = Lens.lens (\GetApplication' {environmentIdentifier} -> environmentIdentifier) (\s@GetApplication' {} a -> s {environmentIdentifier = a} :: GetApplication)++instance Core.AWSRequest GetApplication where+ type+ AWSResponse GetApplication =+ GetApplicationResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetApplicationResponse'+ Prelude.<$> (x Data..?> "ApiGatewayProxy")+ Prelude.<*> (x Data..?> "ApplicationId")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedByAccountId")+ Prelude.<*> (x Data..?> "CreatedTime")+ Prelude.<*> (x Data..?> "EnvironmentId")+ Prelude.<*> (x Data..?> "Error")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "OwnerAccountId")+ Prelude.<*> (x Data..?> "ProxyType")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "VpcId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetApplication where+ hashWithSalt _salt GetApplication' {..} =+ _salt+ `Prelude.hashWithSalt` applicationIdentifier+ `Prelude.hashWithSalt` environmentIdentifier++instance Prelude.NFData GetApplication where+ rnf GetApplication' {..} =+ Prelude.rnf applicationIdentifier+ `Prelude.seq` Prelude.rnf environmentIdentifier++instance Data.ToHeaders GetApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetApplication where+ toPath GetApplication' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications/",+ Data.toBS applicationIdentifier+ ]++instance Data.ToQuery GetApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetApplicationResponse' smart constructor.+data GetApplicationResponse = GetApplicationResponse'+ { -- | The endpoint URL of the API Gateway proxy.+ apiGatewayProxy :: Prelude.Maybe ApiGatewayProxyConfig,+ -- | The unique identifier of the application.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the application.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the application creator.+ createdByAccountId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the application is created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | The unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | Any error associated with the application resource.+ error :: Prelude.Maybe ErrorResponse,+ -- | A timestamp that indicates when the application was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The name of the application.+ name :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the application owner (which is+ -- always the same as the environment owner account ID).+ ownerAccountId :: Prelude.Maybe Prelude.Text,+ -- | The proxy type of the proxy created within the application.+ proxyType :: Prelude.Maybe ProxyType,+ -- | The current state of the application.+ state :: Prelude.Maybe ApplicationState,+ -- | The tags assigned to the application. A tag is a label that you assign+ -- to an Amazon Web Services resource. Each tag consists of a key-value+ -- pair.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The ID of the virtual private cloud (VPC).+ vpcId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'apiGatewayProxy', 'getApplicationResponse_apiGatewayProxy' - The endpoint URL of the API Gateway proxy.+--+-- 'applicationId', 'getApplicationResponse_applicationId' - The unique identifier of the application.+--+-- 'arn', 'getApplicationResponse_arn' - The Amazon Resource Name (ARN) of the application.+--+-- 'createdByAccountId', 'getApplicationResponse_createdByAccountId' - The Amazon Web Services account ID of the application creator.+--+-- 'createdTime', 'getApplicationResponse_createdTime' - A timestamp that indicates when the application is created.+--+-- 'environmentId', 'getApplicationResponse_environmentId' - The unique identifier of the environment.+--+-- 'error', 'getApplicationResponse_error' - Any error associated with the application resource.+--+-- 'lastUpdatedTime', 'getApplicationResponse_lastUpdatedTime' - A timestamp that indicates when the application was last updated.+--+-- 'name', 'getApplicationResponse_name' - The name of the application.+--+-- 'ownerAccountId', 'getApplicationResponse_ownerAccountId' - The Amazon Web Services account ID of the application owner (which is+-- always the same as the environment owner account ID).+--+-- 'proxyType', 'getApplicationResponse_proxyType' - The proxy type of the proxy created within the application.+--+-- 'state', 'getApplicationResponse_state' - The current state of the application.+--+-- 'tags', 'getApplicationResponse_tags' - The tags assigned to the application. A tag is a label that you assign+-- to an Amazon Web Services resource. Each tag consists of a key-value+-- pair.+--+-- 'vpcId', 'getApplicationResponse_vpcId' - The ID of the virtual private cloud (VPC).+--+-- 'httpStatus', 'getApplicationResponse_httpStatus' - The response's http status code.+newGetApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetApplicationResponse+newGetApplicationResponse pHttpStatus_ =+ GetApplicationResponse'+ { apiGatewayProxy =+ Prelude.Nothing,+ applicationId = Prelude.Nothing,+ arn = Prelude.Nothing,+ createdByAccountId = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ error = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ name = Prelude.Nothing,+ ownerAccountId = Prelude.Nothing,+ proxyType = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing,+ vpcId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The endpoint URL of the API Gateway proxy.+getApplicationResponse_apiGatewayProxy :: Lens.Lens' GetApplicationResponse (Prelude.Maybe ApiGatewayProxyConfig)+getApplicationResponse_apiGatewayProxy = Lens.lens (\GetApplicationResponse' {apiGatewayProxy} -> apiGatewayProxy) (\s@GetApplicationResponse' {} a -> s {apiGatewayProxy = a} :: GetApplicationResponse)++-- | The unique identifier of the application.+getApplicationResponse_applicationId :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.Text)+getApplicationResponse_applicationId = Lens.lens (\GetApplicationResponse' {applicationId} -> applicationId) (\s@GetApplicationResponse' {} a -> s {applicationId = a} :: GetApplicationResponse)++-- | The Amazon Resource Name (ARN) of the application.+getApplicationResponse_arn :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.Text)+getApplicationResponse_arn = Lens.lens (\GetApplicationResponse' {arn} -> arn) (\s@GetApplicationResponse' {} a -> s {arn = a} :: GetApplicationResponse)++-- | The Amazon Web Services account ID of the application creator.+getApplicationResponse_createdByAccountId :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.Text)+getApplicationResponse_createdByAccountId = Lens.lens (\GetApplicationResponse' {createdByAccountId} -> createdByAccountId) (\s@GetApplicationResponse' {} a -> s {createdByAccountId = a} :: GetApplicationResponse)++-- | A timestamp that indicates when the application is created.+getApplicationResponse_createdTime :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.UTCTime)+getApplicationResponse_createdTime = Lens.lens (\GetApplicationResponse' {createdTime} -> createdTime) (\s@GetApplicationResponse' {} a -> s {createdTime = a} :: GetApplicationResponse) Prelude.. Lens.mapping Data._Time++-- | The unique identifier of the environment.+getApplicationResponse_environmentId :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.Text)+getApplicationResponse_environmentId = Lens.lens (\GetApplicationResponse' {environmentId} -> environmentId) (\s@GetApplicationResponse' {} a -> s {environmentId = a} :: GetApplicationResponse)++-- | Any error associated with the application resource.+getApplicationResponse_error :: Lens.Lens' GetApplicationResponse (Prelude.Maybe ErrorResponse)+getApplicationResponse_error = Lens.lens (\GetApplicationResponse' {error} -> error) (\s@GetApplicationResponse' {} a -> s {error = a} :: GetApplicationResponse)++-- | A timestamp that indicates when the application was last updated.+getApplicationResponse_lastUpdatedTime :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.UTCTime)+getApplicationResponse_lastUpdatedTime = Lens.lens (\GetApplicationResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@GetApplicationResponse' {} a -> s {lastUpdatedTime = a} :: GetApplicationResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the application.+getApplicationResponse_name :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.Text)+getApplicationResponse_name = Lens.lens (\GetApplicationResponse' {name} -> name) (\s@GetApplicationResponse' {} a -> s {name = a} :: GetApplicationResponse)++-- | The Amazon Web Services account ID of the application owner (which is+-- always the same as the environment owner account ID).+getApplicationResponse_ownerAccountId :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.Text)+getApplicationResponse_ownerAccountId = Lens.lens (\GetApplicationResponse' {ownerAccountId} -> ownerAccountId) (\s@GetApplicationResponse' {} a -> s {ownerAccountId = a} :: GetApplicationResponse)++-- | The proxy type of the proxy created within the application.+getApplicationResponse_proxyType :: Lens.Lens' GetApplicationResponse (Prelude.Maybe ProxyType)+getApplicationResponse_proxyType = Lens.lens (\GetApplicationResponse' {proxyType} -> proxyType) (\s@GetApplicationResponse' {} a -> s {proxyType = a} :: GetApplicationResponse)++-- | The current state of the application.+getApplicationResponse_state :: Lens.Lens' GetApplicationResponse (Prelude.Maybe ApplicationState)+getApplicationResponse_state = Lens.lens (\GetApplicationResponse' {state} -> state) (\s@GetApplicationResponse' {} a -> s {state = a} :: GetApplicationResponse)++-- | The tags assigned to the application. A tag is a label that you assign+-- to an Amazon Web Services resource. Each tag consists of a key-value+-- pair.+getApplicationResponse_tags :: Lens.Lens' GetApplicationResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getApplicationResponse_tags = Lens.lens (\GetApplicationResponse' {tags} -> tags) (\s@GetApplicationResponse' {} a -> s {tags = a} :: GetApplicationResponse) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The ID of the virtual private cloud (VPC).+getApplicationResponse_vpcId :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Prelude.Text)+getApplicationResponse_vpcId = Lens.lens (\GetApplicationResponse' {vpcId} -> vpcId) (\s@GetApplicationResponse' {} a -> s {vpcId = a} :: GetApplicationResponse)++-- | The response's http status code.+getApplicationResponse_httpStatus :: Lens.Lens' GetApplicationResponse Prelude.Int+getApplicationResponse_httpStatus = Lens.lens (\GetApplicationResponse' {httpStatus} -> httpStatus) (\s@GetApplicationResponse' {} a -> s {httpStatus = a} :: GetApplicationResponse)++instance Prelude.NFData GetApplicationResponse where+ rnf GetApplicationResponse' {..} =+ Prelude.rnf apiGatewayProxy+ `Prelude.seq` Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdByAccountId+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf error+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf ownerAccountId+ `Prelude.seq` Prelude.rnf proxyType+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf vpcId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/GetEnvironment.hs view
@@ -0,0 +1,300 @@+{-# 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.MigrationHubReFactorSpaces.GetEnvironment+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets an Amazon Web Services Migration Hub Refactor Spaces environment.+module Amazonka.MigrationHubReFactorSpaces.GetEnvironment+ ( -- * Creating a Request+ GetEnvironment (..),+ newGetEnvironment,++ -- * Request Lenses+ getEnvironment_environmentIdentifier,++ -- * Destructuring the Response+ GetEnvironmentResponse (..),+ newGetEnvironmentResponse,++ -- * Response Lenses+ getEnvironmentResponse_arn,+ getEnvironmentResponse_createdTime,+ getEnvironmentResponse_description,+ getEnvironmentResponse_environmentId,+ getEnvironmentResponse_error,+ getEnvironmentResponse_lastUpdatedTime,+ getEnvironmentResponse_name,+ getEnvironmentResponse_networkFabricType,+ getEnvironmentResponse_ownerAccountId,+ getEnvironmentResponse_state,+ getEnvironmentResponse_tags,+ getEnvironmentResponse_transitGatewayId,+ getEnvironmentResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetEnvironment' smart constructor.+data GetEnvironment = GetEnvironment'+ { -- | The ID of the environment.+ environmentIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetEnvironment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'environmentIdentifier', 'getEnvironment_environmentIdentifier' - The ID of the environment.+newGetEnvironment ::+ -- | 'environmentIdentifier'+ Prelude.Text ->+ GetEnvironment+newGetEnvironment pEnvironmentIdentifier_ =+ GetEnvironment'+ { environmentIdentifier =+ pEnvironmentIdentifier_+ }++-- | The ID of the environment.+getEnvironment_environmentIdentifier :: Lens.Lens' GetEnvironment Prelude.Text+getEnvironment_environmentIdentifier = Lens.lens (\GetEnvironment' {environmentIdentifier} -> environmentIdentifier) (\s@GetEnvironment' {} a -> s {environmentIdentifier = a} :: GetEnvironment)++instance Core.AWSRequest GetEnvironment where+ type+ AWSResponse GetEnvironment =+ GetEnvironmentResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetEnvironmentResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedTime")+ Prelude.<*> (x Data..?> "Description")+ Prelude.<*> (x Data..?> "EnvironmentId")+ Prelude.<*> (x Data..?> "Error")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "NetworkFabricType")+ Prelude.<*> (x Data..?> "OwnerAccountId")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "TransitGatewayId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetEnvironment where+ hashWithSalt _salt GetEnvironment' {..} =+ _salt `Prelude.hashWithSalt` environmentIdentifier++instance Prelude.NFData GetEnvironment where+ rnf GetEnvironment' {..} =+ Prelude.rnf environmentIdentifier++instance Data.ToHeaders GetEnvironment where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetEnvironment where+ toPath GetEnvironment' {..} =+ Prelude.mconcat+ ["/environments/", Data.toBS environmentIdentifier]++instance Data.ToQuery GetEnvironment where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetEnvironmentResponse' smart constructor.+data GetEnvironmentResponse = GetEnvironmentResponse'+ { -- | The Amazon Resource Name (ARN) of the environment.+ arn :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the environment is created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | The description of the environment.+ description :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | Any error associated with the environment resource.+ error :: Prelude.Maybe ErrorResponse,+ -- | A timestamp that indicates when the environment was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The name of the environment.+ name :: Prelude.Maybe Prelude.Text,+ -- | The network fabric type of the environment.+ networkFabricType :: Prelude.Maybe NetworkFabricType,+ -- | The Amazon Web Services account ID of the environment owner.+ ownerAccountId :: Prelude.Maybe Prelude.Text,+ -- | The current state of the environment.+ state :: Prelude.Maybe EnvironmentState,+ -- | The tags to assign to the environment. A tag is a label that you assign+ -- to an Amazon Web Services resource. Each tag consists of a key-value+ -- pair.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The ID of the transit gateway set up by the environment.+ transitGatewayId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetEnvironmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'getEnvironmentResponse_arn' - The Amazon Resource Name (ARN) of the environment.+--+-- 'createdTime', 'getEnvironmentResponse_createdTime' - A timestamp that indicates when the environment is created.+--+-- 'description', 'getEnvironmentResponse_description' - The description of the environment.+--+-- 'environmentId', 'getEnvironmentResponse_environmentId' - The unique identifier of the environment.+--+-- 'error', 'getEnvironmentResponse_error' - Any error associated with the environment resource.+--+-- 'lastUpdatedTime', 'getEnvironmentResponse_lastUpdatedTime' - A timestamp that indicates when the environment was last updated.+--+-- 'name', 'getEnvironmentResponse_name' - The name of the environment.+--+-- 'networkFabricType', 'getEnvironmentResponse_networkFabricType' - The network fabric type of the environment.+--+-- 'ownerAccountId', 'getEnvironmentResponse_ownerAccountId' - The Amazon Web Services account ID of the environment owner.+--+-- 'state', 'getEnvironmentResponse_state' - The current state of the environment.+--+-- 'tags', 'getEnvironmentResponse_tags' - The tags to assign to the environment. A tag is a label that you assign+-- to an Amazon Web Services resource. Each tag consists of a key-value+-- pair.+--+-- 'transitGatewayId', 'getEnvironmentResponse_transitGatewayId' - The ID of the transit gateway set up by the environment.+--+-- 'httpStatus', 'getEnvironmentResponse_httpStatus' - The response's http status code.+newGetEnvironmentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetEnvironmentResponse+newGetEnvironmentResponse pHttpStatus_ =+ GetEnvironmentResponse'+ { arn = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ description = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ error = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ name = Prelude.Nothing,+ networkFabricType = Prelude.Nothing,+ ownerAccountId = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing,+ transitGatewayId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the environment.+getEnvironmentResponse_arn :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Text)+getEnvironmentResponse_arn = Lens.lens (\GetEnvironmentResponse' {arn} -> arn) (\s@GetEnvironmentResponse' {} a -> s {arn = a} :: GetEnvironmentResponse)++-- | A timestamp that indicates when the environment is created.+getEnvironmentResponse_createdTime :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.UTCTime)+getEnvironmentResponse_createdTime = Lens.lens (\GetEnvironmentResponse' {createdTime} -> createdTime) (\s@GetEnvironmentResponse' {} a -> s {createdTime = a} :: GetEnvironmentResponse) Prelude.. Lens.mapping Data._Time++-- | The description of the environment.+getEnvironmentResponse_description :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Text)+getEnvironmentResponse_description = Lens.lens (\GetEnvironmentResponse' {description} -> description) (\s@GetEnvironmentResponse' {} a -> s {description = a} :: GetEnvironmentResponse)++-- | The unique identifier of the environment.+getEnvironmentResponse_environmentId :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Text)+getEnvironmentResponse_environmentId = Lens.lens (\GetEnvironmentResponse' {environmentId} -> environmentId) (\s@GetEnvironmentResponse' {} a -> s {environmentId = a} :: GetEnvironmentResponse)++-- | Any error associated with the environment resource.+getEnvironmentResponse_error :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe ErrorResponse)+getEnvironmentResponse_error = Lens.lens (\GetEnvironmentResponse' {error} -> error) (\s@GetEnvironmentResponse' {} a -> s {error = a} :: GetEnvironmentResponse)++-- | A timestamp that indicates when the environment was last updated.+getEnvironmentResponse_lastUpdatedTime :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.UTCTime)+getEnvironmentResponse_lastUpdatedTime = Lens.lens (\GetEnvironmentResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@GetEnvironmentResponse' {} a -> s {lastUpdatedTime = a} :: GetEnvironmentResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the environment.+getEnvironmentResponse_name :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Text)+getEnvironmentResponse_name = Lens.lens (\GetEnvironmentResponse' {name} -> name) (\s@GetEnvironmentResponse' {} a -> s {name = a} :: GetEnvironmentResponse)++-- | The network fabric type of the environment.+getEnvironmentResponse_networkFabricType :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe NetworkFabricType)+getEnvironmentResponse_networkFabricType = Lens.lens (\GetEnvironmentResponse' {networkFabricType} -> networkFabricType) (\s@GetEnvironmentResponse' {} a -> s {networkFabricType = a} :: GetEnvironmentResponse)++-- | The Amazon Web Services account ID of the environment owner.+getEnvironmentResponse_ownerAccountId :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Text)+getEnvironmentResponse_ownerAccountId = Lens.lens (\GetEnvironmentResponse' {ownerAccountId} -> ownerAccountId) (\s@GetEnvironmentResponse' {} a -> s {ownerAccountId = a} :: GetEnvironmentResponse)++-- | The current state of the environment.+getEnvironmentResponse_state :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe EnvironmentState)+getEnvironmentResponse_state = Lens.lens (\GetEnvironmentResponse' {state} -> state) (\s@GetEnvironmentResponse' {} a -> s {state = a} :: GetEnvironmentResponse)++-- | The tags to assign to the environment. A tag is a label that you assign+-- to an Amazon Web Services resource. Each tag consists of a key-value+-- pair.+getEnvironmentResponse_tags :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getEnvironmentResponse_tags = Lens.lens (\GetEnvironmentResponse' {tags} -> tags) (\s@GetEnvironmentResponse' {} a -> s {tags = a} :: GetEnvironmentResponse) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The ID of the transit gateway set up by the environment.+getEnvironmentResponse_transitGatewayId :: Lens.Lens' GetEnvironmentResponse (Prelude.Maybe Prelude.Text)+getEnvironmentResponse_transitGatewayId = Lens.lens (\GetEnvironmentResponse' {transitGatewayId} -> transitGatewayId) (\s@GetEnvironmentResponse' {} a -> s {transitGatewayId = a} :: GetEnvironmentResponse)++-- | The response's http status code.+getEnvironmentResponse_httpStatus :: Lens.Lens' GetEnvironmentResponse Prelude.Int+getEnvironmentResponse_httpStatus = Lens.lens (\GetEnvironmentResponse' {httpStatus} -> httpStatus) (\s@GetEnvironmentResponse' {} a -> s {httpStatus = a} :: GetEnvironmentResponse)++instance Prelude.NFData GetEnvironmentResponse where+ rnf GetEnvironmentResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf error+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf networkFabricType+ `Prelude.seq` Prelude.rnf ownerAccountId+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf transitGatewayId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/GetResourcePolicy.hs view
@@ -0,0 +1,166 @@+{-# 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.MigrationHubReFactorSpaces.GetResourcePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the resource-based permission policy that is set for the given+-- environment.+module Amazonka.MigrationHubReFactorSpaces.GetResourcePolicy+ ( -- * Creating a Request+ GetResourcePolicy (..),+ newGetResourcePolicy,++ -- * Request Lenses+ getResourcePolicy_identifier,++ -- * Destructuring the Response+ GetResourcePolicyResponse (..),+ newGetResourcePolicyResponse,++ -- * Response Lenses+ getResourcePolicyResponse_policy,+ getResourcePolicyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetResourcePolicy' smart constructor.+data GetResourcePolicy = GetResourcePolicy'+ { -- | The Amazon Resource Name (ARN) of the resource associated with the+ -- policy.+ identifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetResourcePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'identifier', 'getResourcePolicy_identifier' - The Amazon Resource Name (ARN) of the resource associated with the+-- policy.+newGetResourcePolicy ::+ -- | 'identifier'+ Prelude.Text ->+ GetResourcePolicy+newGetResourcePolicy pIdentifier_ =+ GetResourcePolicy' {identifier = pIdentifier_}++-- | The Amazon Resource Name (ARN) of the resource associated with the+-- policy.+getResourcePolicy_identifier :: Lens.Lens' GetResourcePolicy Prelude.Text+getResourcePolicy_identifier = Lens.lens (\GetResourcePolicy' {identifier} -> identifier) (\s@GetResourcePolicy' {} a -> s {identifier = a} :: GetResourcePolicy)++instance Core.AWSRequest GetResourcePolicy where+ type+ AWSResponse GetResourcePolicy =+ GetResourcePolicyResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetResourcePolicyResponse'+ Prelude.<$> (x Data..?> "Policy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetResourcePolicy where+ hashWithSalt _salt GetResourcePolicy' {..} =+ _salt `Prelude.hashWithSalt` identifier++instance Prelude.NFData GetResourcePolicy where+ rnf GetResourcePolicy' {..} = Prelude.rnf identifier++instance Data.ToHeaders GetResourcePolicy where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetResourcePolicy where+ toPath GetResourcePolicy' {..} =+ Prelude.mconcat+ ["/resourcepolicy/", Data.toBS identifier]++instance Data.ToQuery GetResourcePolicy where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetResourcePolicyResponse' smart constructor.+data GetResourcePolicyResponse = GetResourcePolicyResponse'+ { -- | A JSON-formatted string for an Amazon Web Services resource-based+ -- policy.+ policy :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetResourcePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'getResourcePolicyResponse_policy' - A JSON-formatted string for an Amazon Web Services resource-based+-- policy.+--+-- 'httpStatus', 'getResourcePolicyResponse_httpStatus' - The response's http status code.+newGetResourcePolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetResourcePolicyResponse+newGetResourcePolicyResponse pHttpStatus_ =+ GetResourcePolicyResponse'+ { policy =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A JSON-formatted string for an Amazon Web Services resource-based+-- policy.+getResourcePolicyResponse_policy :: Lens.Lens' GetResourcePolicyResponse (Prelude.Maybe Prelude.Text)+getResourcePolicyResponse_policy = Lens.lens (\GetResourcePolicyResponse' {policy} -> policy) (\s@GetResourcePolicyResponse' {} a -> s {policy = a} :: GetResourcePolicyResponse)++-- | The response's http status code.+getResourcePolicyResponse_httpStatus :: Lens.Lens' GetResourcePolicyResponse Prelude.Int+getResourcePolicyResponse_httpStatus = Lens.lens (\GetResourcePolicyResponse' {httpStatus} -> httpStatus) (\s@GetResourcePolicyResponse' {} a -> s {httpStatus = a} :: GetResourcePolicyResponse)++instance Prelude.NFData GetResourcePolicyResponse where+ rnf GetResourcePolicyResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/GetRoute.hs view
@@ -0,0 +1,429 @@+{-# 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.MigrationHubReFactorSpaces.GetRoute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets an Amazon Web Services Migration Hub Refactor Spaces route.+module Amazonka.MigrationHubReFactorSpaces.GetRoute+ ( -- * Creating a Request+ GetRoute (..),+ newGetRoute,++ -- * Request Lenses+ getRoute_applicationIdentifier,+ getRoute_environmentIdentifier,+ getRoute_routeIdentifier,++ -- * Destructuring the Response+ GetRouteResponse (..),+ newGetRouteResponse,++ -- * Response Lenses+ getRouteResponse_applicationId,+ getRouteResponse_arn,+ getRouteResponse_createdByAccountId,+ getRouteResponse_createdTime,+ getRouteResponse_environmentId,+ getRouteResponse_error,+ getRouteResponse_includeChildPaths,+ getRouteResponse_lastUpdatedTime,+ getRouteResponse_methods,+ getRouteResponse_ownerAccountId,+ getRouteResponse_pathResourceToId,+ getRouteResponse_routeId,+ getRouteResponse_routeType,+ getRouteResponse_serviceId,+ getRouteResponse_sourcePath,+ getRouteResponse_state,+ getRouteResponse_tags,+ getRouteResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetRoute' smart constructor.+data GetRoute = GetRoute'+ { -- | The ID of the application.+ applicationIdentifier :: Prelude.Text,+ -- | The ID of the environment.+ environmentIdentifier :: Prelude.Text,+ -- | The ID of the route.+ routeIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetRoute' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationIdentifier', 'getRoute_applicationIdentifier' - The ID of the application.+--+-- 'environmentIdentifier', 'getRoute_environmentIdentifier' - The ID of the environment.+--+-- 'routeIdentifier', 'getRoute_routeIdentifier' - The ID of the route.+newGetRoute ::+ -- | 'applicationIdentifier'+ Prelude.Text ->+ -- | 'environmentIdentifier'+ Prelude.Text ->+ -- | 'routeIdentifier'+ Prelude.Text ->+ GetRoute+newGetRoute+ pApplicationIdentifier_+ pEnvironmentIdentifier_+ pRouteIdentifier_ =+ GetRoute'+ { applicationIdentifier =+ pApplicationIdentifier_,+ environmentIdentifier = pEnvironmentIdentifier_,+ routeIdentifier = pRouteIdentifier_+ }++-- | The ID of the application.+getRoute_applicationIdentifier :: Lens.Lens' GetRoute Prelude.Text+getRoute_applicationIdentifier = Lens.lens (\GetRoute' {applicationIdentifier} -> applicationIdentifier) (\s@GetRoute' {} a -> s {applicationIdentifier = a} :: GetRoute)++-- | The ID of the environment.+getRoute_environmentIdentifier :: Lens.Lens' GetRoute Prelude.Text+getRoute_environmentIdentifier = Lens.lens (\GetRoute' {environmentIdentifier} -> environmentIdentifier) (\s@GetRoute' {} a -> s {environmentIdentifier = a} :: GetRoute)++-- | The ID of the route.+getRoute_routeIdentifier :: Lens.Lens' GetRoute Prelude.Text+getRoute_routeIdentifier = Lens.lens (\GetRoute' {routeIdentifier} -> routeIdentifier) (\s@GetRoute' {} a -> s {routeIdentifier = a} :: GetRoute)++instance Core.AWSRequest GetRoute where+ type AWSResponse GetRoute = GetRouteResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetRouteResponse'+ Prelude.<$> (x Data..?> "ApplicationId")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedByAccountId")+ Prelude.<*> (x Data..?> "CreatedTime")+ Prelude.<*> (x Data..?> "EnvironmentId")+ Prelude.<*> (x Data..?> "Error")+ Prelude.<*> (x Data..?> "IncludeChildPaths")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "Methods" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "OwnerAccountId")+ Prelude.<*> ( x+ Data..?> "PathResourceToId"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "RouteId")+ Prelude.<*> (x Data..?> "RouteType")+ Prelude.<*> (x Data..?> "ServiceId")+ Prelude.<*> (x Data..?> "SourcePath")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetRoute where+ hashWithSalt _salt GetRoute' {..} =+ _salt+ `Prelude.hashWithSalt` applicationIdentifier+ `Prelude.hashWithSalt` environmentIdentifier+ `Prelude.hashWithSalt` routeIdentifier++instance Prelude.NFData GetRoute where+ rnf GetRoute' {..} =+ Prelude.rnf applicationIdentifier+ `Prelude.seq` Prelude.rnf environmentIdentifier+ `Prelude.seq` Prelude.rnf routeIdentifier++instance Data.ToHeaders GetRoute where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetRoute where+ toPath GetRoute' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications/",+ Data.toBS applicationIdentifier,+ "/routes/",+ Data.toBS routeIdentifier+ ]++instance Data.ToQuery GetRoute where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetRouteResponse' smart constructor.+data GetRouteResponse = GetRouteResponse'+ { -- | The ID of the application that the route belongs to.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the route.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the route creator.+ createdByAccountId :: Prelude.Maybe Prelude.Text,+ -- | The timestamp of when the route is created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | Unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | Any error associated with the route resource.+ error :: Prelude.Maybe ErrorResponse,+ -- | Indicates whether to match all subpaths of the given source path. If+ -- this value is @false@, requests must match the source path exactly+ -- before they are forwarded to this route\'s service.+ includeChildPaths :: Prelude.Maybe Prelude.Bool,+ -- | A timestamp that indicates when the route was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | A list of HTTP methods to match. An empty list matches all values. If a+ -- method is present, only HTTP requests using that method are forwarded to+ -- this route’s service.+ methods :: Prelude.Maybe [HttpMethod],+ -- | The Amazon Web Services account ID of the route owner.+ ownerAccountId :: Prelude.Maybe Prelude.Text,+ -- | A mapping of Amazon API Gateway path resources to resource IDs.+ pathResourceToId :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The unique identifier of the route.+ --+ -- __DEFAULT__: All traffic that does not match another route is forwarded+ -- to the default route. Applications must have a default route before any+ -- other routes can be created.+ --+ -- __URI_PATH__: A route that is based on a URI path.+ routeId :: Prelude.Maybe Prelude.Text,+ -- | The type of route.+ routeType :: Prelude.Maybe RouteType,+ -- | The unique identifier of the service.+ serviceId :: Prelude.Maybe Prelude.Text,+ -- | The path to use to match traffic. Paths must start with @\/@ and are+ -- relative to the base of the application.+ sourcePath :: Prelude.Maybe Prelude.Text,+ -- | The current state of the route.+ state :: Prelude.Maybe RouteState,+ -- | The tags assigned to the route. A tag is a label that you assign to an+ -- Amazon Web Services resource. Each tag consists of a key-value pair.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetRouteResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'getRouteResponse_applicationId' - The ID of the application that the route belongs to.+--+-- 'arn', 'getRouteResponse_arn' - The Amazon Resource Name (ARN) of the route.+--+-- 'createdByAccountId', 'getRouteResponse_createdByAccountId' - The Amazon Web Services account ID of the route creator.+--+-- 'createdTime', 'getRouteResponse_createdTime' - The timestamp of when the route is created.+--+-- 'environmentId', 'getRouteResponse_environmentId' - Unique identifier of the environment.+--+-- 'error', 'getRouteResponse_error' - Any error associated with the route resource.+--+-- 'includeChildPaths', 'getRouteResponse_includeChildPaths' - Indicates whether to match all subpaths of the given source path. If+-- this value is @false@, requests must match the source path exactly+-- before they are forwarded to this route\'s service.+--+-- 'lastUpdatedTime', 'getRouteResponse_lastUpdatedTime' - A timestamp that indicates when the route was last updated.+--+-- 'methods', 'getRouteResponse_methods' - A list of HTTP methods to match. An empty list matches all values. If a+-- method is present, only HTTP requests using that method are forwarded to+-- this route’s service.+--+-- 'ownerAccountId', 'getRouteResponse_ownerAccountId' - The Amazon Web Services account ID of the route owner.+--+-- 'pathResourceToId', 'getRouteResponse_pathResourceToId' - A mapping of Amazon API Gateway path resources to resource IDs.+--+-- 'routeId', 'getRouteResponse_routeId' - The unique identifier of the route.+--+-- __DEFAULT__: All traffic that does not match another route is forwarded+-- to the default route. Applications must have a default route before any+-- other routes can be created.+--+-- __URI_PATH__: A route that is based on a URI path.+--+-- 'routeType', 'getRouteResponse_routeType' - The type of route.+--+-- 'serviceId', 'getRouteResponse_serviceId' - The unique identifier of the service.+--+-- 'sourcePath', 'getRouteResponse_sourcePath' - The path to use to match traffic. Paths must start with @\/@ and are+-- relative to the base of the application.+--+-- 'state', 'getRouteResponse_state' - The current state of the route.+--+-- 'tags', 'getRouteResponse_tags' - The tags assigned to the route. A tag is a label that you assign to an+-- Amazon Web Services resource. Each tag consists of a key-value pair.+--+-- 'httpStatus', 'getRouteResponse_httpStatus' - The response's http status code.+newGetRouteResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetRouteResponse+newGetRouteResponse pHttpStatus_ =+ GetRouteResponse'+ { applicationId = Prelude.Nothing,+ arn = Prelude.Nothing,+ createdByAccountId = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ error = Prelude.Nothing,+ includeChildPaths = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ methods = Prelude.Nothing,+ ownerAccountId = Prelude.Nothing,+ pathResourceToId = Prelude.Nothing,+ routeId = Prelude.Nothing,+ routeType = Prelude.Nothing,+ serviceId = Prelude.Nothing,+ sourcePath = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ID of the application that the route belongs to.+getRouteResponse_applicationId :: Lens.Lens' GetRouteResponse (Prelude.Maybe Prelude.Text)+getRouteResponse_applicationId = Lens.lens (\GetRouteResponse' {applicationId} -> applicationId) (\s@GetRouteResponse' {} a -> s {applicationId = a} :: GetRouteResponse)++-- | The Amazon Resource Name (ARN) of the route.+getRouteResponse_arn :: Lens.Lens' GetRouteResponse (Prelude.Maybe Prelude.Text)+getRouteResponse_arn = Lens.lens (\GetRouteResponse' {arn} -> arn) (\s@GetRouteResponse' {} a -> s {arn = a} :: GetRouteResponse)++-- | The Amazon Web Services account ID of the route creator.+getRouteResponse_createdByAccountId :: Lens.Lens' GetRouteResponse (Prelude.Maybe Prelude.Text)+getRouteResponse_createdByAccountId = Lens.lens (\GetRouteResponse' {createdByAccountId} -> createdByAccountId) (\s@GetRouteResponse' {} a -> s {createdByAccountId = a} :: GetRouteResponse)++-- | The timestamp of when the route is created.+getRouteResponse_createdTime :: Lens.Lens' GetRouteResponse (Prelude.Maybe Prelude.UTCTime)+getRouteResponse_createdTime = Lens.lens (\GetRouteResponse' {createdTime} -> createdTime) (\s@GetRouteResponse' {} a -> s {createdTime = a} :: GetRouteResponse) Prelude.. Lens.mapping Data._Time++-- | Unique identifier of the environment.+getRouteResponse_environmentId :: Lens.Lens' GetRouteResponse (Prelude.Maybe Prelude.Text)+getRouteResponse_environmentId = Lens.lens (\GetRouteResponse' {environmentId} -> environmentId) (\s@GetRouteResponse' {} a -> s {environmentId = a} :: GetRouteResponse)++-- | Any error associated with the route resource.+getRouteResponse_error :: Lens.Lens' GetRouteResponse (Prelude.Maybe ErrorResponse)+getRouteResponse_error = Lens.lens (\GetRouteResponse' {error} -> error) (\s@GetRouteResponse' {} a -> s {error = a} :: GetRouteResponse)++-- | Indicates whether to match all subpaths of the given source path. If+-- this value is @false@, requests must match the source path exactly+-- before they are forwarded to this route\'s service.+getRouteResponse_includeChildPaths :: Lens.Lens' GetRouteResponse (Prelude.Maybe Prelude.Bool)+getRouteResponse_includeChildPaths = Lens.lens (\GetRouteResponse' {includeChildPaths} -> includeChildPaths) (\s@GetRouteResponse' {} a -> s {includeChildPaths = a} :: GetRouteResponse)++-- | A timestamp that indicates when the route was last updated.+getRouteResponse_lastUpdatedTime :: Lens.Lens' GetRouteResponse (Prelude.Maybe Prelude.UTCTime)+getRouteResponse_lastUpdatedTime = Lens.lens (\GetRouteResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@GetRouteResponse' {} a -> s {lastUpdatedTime = a} :: GetRouteResponse) Prelude.. Lens.mapping Data._Time++-- | A list of HTTP methods to match. An empty list matches all values. If a+-- method is present, only HTTP requests using that method are forwarded to+-- this route’s service.+getRouteResponse_methods :: Lens.Lens' GetRouteResponse (Prelude.Maybe [HttpMethod])+getRouteResponse_methods = Lens.lens (\GetRouteResponse' {methods} -> methods) (\s@GetRouteResponse' {} a -> s {methods = a} :: GetRouteResponse) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Web Services account ID of the route owner.+getRouteResponse_ownerAccountId :: Lens.Lens' GetRouteResponse (Prelude.Maybe Prelude.Text)+getRouteResponse_ownerAccountId = Lens.lens (\GetRouteResponse' {ownerAccountId} -> ownerAccountId) (\s@GetRouteResponse' {} a -> s {ownerAccountId = a} :: GetRouteResponse)++-- | A mapping of Amazon API Gateway path resources to resource IDs.+getRouteResponse_pathResourceToId :: Lens.Lens' GetRouteResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getRouteResponse_pathResourceToId = Lens.lens (\GetRouteResponse' {pathResourceToId} -> pathResourceToId) (\s@GetRouteResponse' {} a -> s {pathResourceToId = a} :: GetRouteResponse) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier of the route.+--+-- __DEFAULT__: All traffic that does not match another route is forwarded+-- to the default route. Applications must have a default route before any+-- other routes can be created.+--+-- __URI_PATH__: A route that is based on a URI path.+getRouteResponse_routeId :: Lens.Lens' GetRouteResponse (Prelude.Maybe Prelude.Text)+getRouteResponse_routeId = Lens.lens (\GetRouteResponse' {routeId} -> routeId) (\s@GetRouteResponse' {} a -> s {routeId = a} :: GetRouteResponse)++-- | The type of route.+getRouteResponse_routeType :: Lens.Lens' GetRouteResponse (Prelude.Maybe RouteType)+getRouteResponse_routeType = Lens.lens (\GetRouteResponse' {routeType} -> routeType) (\s@GetRouteResponse' {} a -> s {routeType = a} :: GetRouteResponse)++-- | The unique identifier of the service.+getRouteResponse_serviceId :: Lens.Lens' GetRouteResponse (Prelude.Maybe Prelude.Text)+getRouteResponse_serviceId = Lens.lens (\GetRouteResponse' {serviceId} -> serviceId) (\s@GetRouteResponse' {} a -> s {serviceId = a} :: GetRouteResponse)++-- | The path to use to match traffic. Paths must start with @\/@ and are+-- relative to the base of the application.+getRouteResponse_sourcePath :: Lens.Lens' GetRouteResponse (Prelude.Maybe Prelude.Text)+getRouteResponse_sourcePath = Lens.lens (\GetRouteResponse' {sourcePath} -> sourcePath) (\s@GetRouteResponse' {} a -> s {sourcePath = a} :: GetRouteResponse)++-- | The current state of the route.+getRouteResponse_state :: Lens.Lens' GetRouteResponse (Prelude.Maybe RouteState)+getRouteResponse_state = Lens.lens (\GetRouteResponse' {state} -> state) (\s@GetRouteResponse' {} a -> s {state = a} :: GetRouteResponse)++-- | The tags assigned to the route. A tag is a label that you assign to an+-- Amazon Web Services resource. Each tag consists of a key-value pair.+getRouteResponse_tags :: Lens.Lens' GetRouteResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getRouteResponse_tags = Lens.lens (\GetRouteResponse' {tags} -> tags) (\s@GetRouteResponse' {} a -> s {tags = a} :: GetRouteResponse) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The response's http status code.+getRouteResponse_httpStatus :: Lens.Lens' GetRouteResponse Prelude.Int+getRouteResponse_httpStatus = Lens.lens (\GetRouteResponse' {httpStatus} -> httpStatus) (\s@GetRouteResponse' {} a -> s {httpStatus = a} :: GetRouteResponse)++instance Prelude.NFData GetRouteResponse where+ rnf GetRouteResponse' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdByAccountId+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf error+ `Prelude.seq` Prelude.rnf includeChildPaths+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf methods+ `Prelude.seq` Prelude.rnf ownerAccountId+ `Prelude.seq` Prelude.rnf pathResourceToId+ `Prelude.seq` Prelude.rnf routeId+ `Prelude.seq` Prelude.rnf routeType+ `Prelude.seq` Prelude.rnf serviceId+ `Prelude.seq` Prelude.rnf sourcePath+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/GetService.hs view
@@ -0,0 +1,415 @@+{-# 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.MigrationHubReFactorSpaces.GetService+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets an Amazon Web Services Migration Hub Refactor Spaces service.+module Amazonka.MigrationHubReFactorSpaces.GetService+ ( -- * Creating a Request+ GetService (..),+ newGetService,++ -- * Request Lenses+ getService_applicationIdentifier,+ getService_environmentIdentifier,+ getService_serviceIdentifier,++ -- * Destructuring the Response+ GetServiceResponse (..),+ newGetServiceResponse,++ -- * Response Lenses+ getServiceResponse_applicationId,+ getServiceResponse_arn,+ getServiceResponse_createdByAccountId,+ getServiceResponse_createdTime,+ getServiceResponse_description,+ getServiceResponse_endpointType,+ getServiceResponse_environmentId,+ getServiceResponse_error,+ getServiceResponse_lambdaEndpoint,+ getServiceResponse_lastUpdatedTime,+ getServiceResponse_name,+ getServiceResponse_ownerAccountId,+ getServiceResponse_serviceId,+ getServiceResponse_state,+ getServiceResponse_tags,+ getServiceResponse_urlEndpoint,+ getServiceResponse_vpcId,+ getServiceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetService' smart constructor.+data GetService = GetService'+ { -- | The ID of the application.+ applicationIdentifier :: Prelude.Text,+ -- | The ID of the environment.+ environmentIdentifier :: Prelude.Text,+ -- | The ID of the service.+ serviceIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetService' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationIdentifier', 'getService_applicationIdentifier' - The ID of the application.+--+-- 'environmentIdentifier', 'getService_environmentIdentifier' - The ID of the environment.+--+-- 'serviceIdentifier', 'getService_serviceIdentifier' - The ID of the service.+newGetService ::+ -- | 'applicationIdentifier'+ Prelude.Text ->+ -- | 'environmentIdentifier'+ Prelude.Text ->+ -- | 'serviceIdentifier'+ Prelude.Text ->+ GetService+newGetService+ pApplicationIdentifier_+ pEnvironmentIdentifier_+ pServiceIdentifier_ =+ GetService'+ { applicationIdentifier =+ pApplicationIdentifier_,+ environmentIdentifier = pEnvironmentIdentifier_,+ serviceIdentifier = pServiceIdentifier_+ }++-- | The ID of the application.+getService_applicationIdentifier :: Lens.Lens' GetService Prelude.Text+getService_applicationIdentifier = Lens.lens (\GetService' {applicationIdentifier} -> applicationIdentifier) (\s@GetService' {} a -> s {applicationIdentifier = a} :: GetService)++-- | The ID of the environment.+getService_environmentIdentifier :: Lens.Lens' GetService Prelude.Text+getService_environmentIdentifier = Lens.lens (\GetService' {environmentIdentifier} -> environmentIdentifier) (\s@GetService' {} a -> s {environmentIdentifier = a} :: GetService)++-- | The ID of the service.+getService_serviceIdentifier :: Lens.Lens' GetService Prelude.Text+getService_serviceIdentifier = Lens.lens (\GetService' {serviceIdentifier} -> serviceIdentifier) (\s@GetService' {} a -> s {serviceIdentifier = a} :: GetService)++instance Core.AWSRequest GetService where+ type AWSResponse GetService = GetServiceResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetServiceResponse'+ Prelude.<$> (x Data..?> "ApplicationId")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedByAccountId")+ Prelude.<*> (x Data..?> "CreatedTime")+ Prelude.<*> (x Data..?> "Description")+ Prelude.<*> (x Data..?> "EndpointType")+ Prelude.<*> (x Data..?> "EnvironmentId")+ Prelude.<*> (x Data..?> "Error")+ Prelude.<*> (x Data..?> "LambdaEndpoint")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "Name")+ Prelude.<*> (x Data..?> "OwnerAccountId")+ Prelude.<*> (x Data..?> "ServiceId")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "UrlEndpoint")+ Prelude.<*> (x Data..?> "VpcId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetService where+ hashWithSalt _salt GetService' {..} =+ _salt+ `Prelude.hashWithSalt` applicationIdentifier+ `Prelude.hashWithSalt` environmentIdentifier+ `Prelude.hashWithSalt` serviceIdentifier++instance Prelude.NFData GetService where+ rnf GetService' {..} =+ Prelude.rnf applicationIdentifier+ `Prelude.seq` Prelude.rnf environmentIdentifier+ `Prelude.seq` Prelude.rnf serviceIdentifier++instance Data.ToHeaders GetService where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetService where+ toPath GetService' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications/",+ Data.toBS applicationIdentifier,+ "/services/",+ Data.toBS serviceIdentifier+ ]++instance Data.ToQuery GetService where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetServiceResponse' smart constructor.+data GetServiceResponse = GetServiceResponse'+ { -- | The ID of the application.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the service.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the service creator.+ createdByAccountId :: Prelude.Maybe Prelude.Text,+ -- | The timestamp of when the service is created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | The description of the service.+ description :: Prelude.Maybe Prelude.Text,+ -- | The endpoint type of the service.+ endpointType :: Prelude.Maybe ServiceEndpointType,+ -- | The unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | Any error associated with the service resource.+ error :: Prelude.Maybe ErrorResponse,+ -- | The configuration for the Lambda endpoint type.+ --+ -- The __Arn__ is the Amazon Resource Name (ARN) of the Lambda function+ -- associated with this service.+ lambdaEndpoint :: Prelude.Maybe LambdaEndpointConfig,+ -- | A timestamp that indicates when the service was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The name of the service.+ name :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the service owner.+ ownerAccountId :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the service.+ serviceId :: Prelude.Maybe Prelude.Text,+ -- | The current state of the service.+ state :: Prelude.Maybe ServiceState,+ -- | The tags assigned to the service. A tag is a label that you assign to an+ -- Amazon Web Services resource. Each tag consists of a key-value pair.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The configuration for the URL endpoint type.+ --+ -- The __Url__ isthe URL of the endpoint type.+ --+ -- The __HealthUrl__ is the health check URL of the endpoint type.+ urlEndpoint :: Prelude.Maybe UrlEndpointConfig,+ -- | The ID of the virtual private cloud (VPC).+ vpcId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetServiceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'getServiceResponse_applicationId' - The ID of the application.+--+-- 'arn', 'getServiceResponse_arn' - The Amazon Resource Name (ARN) of the service.+--+-- 'createdByAccountId', 'getServiceResponse_createdByAccountId' - The Amazon Web Services account ID of the service creator.+--+-- 'createdTime', 'getServiceResponse_createdTime' - The timestamp of when the service is created.+--+-- 'description', 'getServiceResponse_description' - The description of the service.+--+-- 'endpointType', 'getServiceResponse_endpointType' - The endpoint type of the service.+--+-- 'environmentId', 'getServiceResponse_environmentId' - The unique identifier of the environment.+--+-- 'error', 'getServiceResponse_error' - Any error associated with the service resource.+--+-- 'lambdaEndpoint', 'getServiceResponse_lambdaEndpoint' - The configuration for the Lambda endpoint type.+--+-- The __Arn__ is the Amazon Resource Name (ARN) of the Lambda function+-- associated with this service.+--+-- 'lastUpdatedTime', 'getServiceResponse_lastUpdatedTime' - A timestamp that indicates when the service was last updated.+--+-- 'name', 'getServiceResponse_name' - The name of the service.+--+-- 'ownerAccountId', 'getServiceResponse_ownerAccountId' - The Amazon Web Services account ID of the service owner.+--+-- 'serviceId', 'getServiceResponse_serviceId' - The unique identifier of the service.+--+-- 'state', 'getServiceResponse_state' - The current state of the service.+--+-- 'tags', 'getServiceResponse_tags' - The tags assigned to the service. A tag is a label that you assign to an+-- Amazon Web Services resource. Each tag consists of a key-value pair.+--+-- 'urlEndpoint', 'getServiceResponse_urlEndpoint' - The configuration for the URL endpoint type.+--+-- The __Url__ isthe URL of the endpoint type.+--+-- The __HealthUrl__ is the health check URL of the endpoint type.+--+-- 'vpcId', 'getServiceResponse_vpcId' - The ID of the virtual private cloud (VPC).+--+-- 'httpStatus', 'getServiceResponse_httpStatus' - The response's http status code.+newGetServiceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetServiceResponse+newGetServiceResponse pHttpStatus_ =+ GetServiceResponse'+ { applicationId =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ createdByAccountId = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ description = Prelude.Nothing,+ endpointType = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ error = Prelude.Nothing,+ lambdaEndpoint = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ name = Prelude.Nothing,+ ownerAccountId = Prelude.Nothing,+ serviceId = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing,+ urlEndpoint = Prelude.Nothing,+ vpcId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ID of the application.+getServiceResponse_applicationId :: Lens.Lens' GetServiceResponse (Prelude.Maybe Prelude.Text)+getServiceResponse_applicationId = Lens.lens (\GetServiceResponse' {applicationId} -> applicationId) (\s@GetServiceResponse' {} a -> s {applicationId = a} :: GetServiceResponse)++-- | The Amazon Resource Name (ARN) of the service.+getServiceResponse_arn :: Lens.Lens' GetServiceResponse (Prelude.Maybe Prelude.Text)+getServiceResponse_arn = Lens.lens (\GetServiceResponse' {arn} -> arn) (\s@GetServiceResponse' {} a -> s {arn = a} :: GetServiceResponse)++-- | The Amazon Web Services account ID of the service creator.+getServiceResponse_createdByAccountId :: Lens.Lens' GetServiceResponse (Prelude.Maybe Prelude.Text)+getServiceResponse_createdByAccountId = Lens.lens (\GetServiceResponse' {createdByAccountId} -> createdByAccountId) (\s@GetServiceResponse' {} a -> s {createdByAccountId = a} :: GetServiceResponse)++-- | The timestamp of when the service is created.+getServiceResponse_createdTime :: Lens.Lens' GetServiceResponse (Prelude.Maybe Prelude.UTCTime)+getServiceResponse_createdTime = Lens.lens (\GetServiceResponse' {createdTime} -> createdTime) (\s@GetServiceResponse' {} a -> s {createdTime = a} :: GetServiceResponse) Prelude.. Lens.mapping Data._Time++-- | The description of the service.+getServiceResponse_description :: Lens.Lens' GetServiceResponse (Prelude.Maybe Prelude.Text)+getServiceResponse_description = Lens.lens (\GetServiceResponse' {description} -> description) (\s@GetServiceResponse' {} a -> s {description = a} :: GetServiceResponse)++-- | The endpoint type of the service.+getServiceResponse_endpointType :: Lens.Lens' GetServiceResponse (Prelude.Maybe ServiceEndpointType)+getServiceResponse_endpointType = Lens.lens (\GetServiceResponse' {endpointType} -> endpointType) (\s@GetServiceResponse' {} a -> s {endpointType = a} :: GetServiceResponse)++-- | The unique identifier of the environment.+getServiceResponse_environmentId :: Lens.Lens' GetServiceResponse (Prelude.Maybe Prelude.Text)+getServiceResponse_environmentId = Lens.lens (\GetServiceResponse' {environmentId} -> environmentId) (\s@GetServiceResponse' {} a -> s {environmentId = a} :: GetServiceResponse)++-- | Any error associated with the service resource.+getServiceResponse_error :: Lens.Lens' GetServiceResponse (Prelude.Maybe ErrorResponse)+getServiceResponse_error = Lens.lens (\GetServiceResponse' {error} -> error) (\s@GetServiceResponse' {} a -> s {error = a} :: GetServiceResponse)++-- | The configuration for the Lambda endpoint type.+--+-- The __Arn__ is the Amazon Resource Name (ARN) of the Lambda function+-- associated with this service.+getServiceResponse_lambdaEndpoint :: Lens.Lens' GetServiceResponse (Prelude.Maybe LambdaEndpointConfig)+getServiceResponse_lambdaEndpoint = Lens.lens (\GetServiceResponse' {lambdaEndpoint} -> lambdaEndpoint) (\s@GetServiceResponse' {} a -> s {lambdaEndpoint = a} :: GetServiceResponse)++-- | A timestamp that indicates when the service was last updated.+getServiceResponse_lastUpdatedTime :: Lens.Lens' GetServiceResponse (Prelude.Maybe Prelude.UTCTime)+getServiceResponse_lastUpdatedTime = Lens.lens (\GetServiceResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@GetServiceResponse' {} a -> s {lastUpdatedTime = a} :: GetServiceResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the service.+getServiceResponse_name :: Lens.Lens' GetServiceResponse (Prelude.Maybe Prelude.Text)+getServiceResponse_name = Lens.lens (\GetServiceResponse' {name} -> name) (\s@GetServiceResponse' {} a -> s {name = a} :: GetServiceResponse)++-- | The Amazon Web Services account ID of the service owner.+getServiceResponse_ownerAccountId :: Lens.Lens' GetServiceResponse (Prelude.Maybe Prelude.Text)+getServiceResponse_ownerAccountId = Lens.lens (\GetServiceResponse' {ownerAccountId} -> ownerAccountId) (\s@GetServiceResponse' {} a -> s {ownerAccountId = a} :: GetServiceResponse)++-- | The unique identifier of the service.+getServiceResponse_serviceId :: Lens.Lens' GetServiceResponse (Prelude.Maybe Prelude.Text)+getServiceResponse_serviceId = Lens.lens (\GetServiceResponse' {serviceId} -> serviceId) (\s@GetServiceResponse' {} a -> s {serviceId = a} :: GetServiceResponse)++-- | The current state of the service.+getServiceResponse_state :: Lens.Lens' GetServiceResponse (Prelude.Maybe ServiceState)+getServiceResponse_state = Lens.lens (\GetServiceResponse' {state} -> state) (\s@GetServiceResponse' {} a -> s {state = a} :: GetServiceResponse)++-- | The tags assigned to the service. A tag is a label that you assign to an+-- Amazon Web Services resource. Each tag consists of a key-value pair.+getServiceResponse_tags :: Lens.Lens' GetServiceResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getServiceResponse_tags = Lens.lens (\GetServiceResponse' {tags} -> tags) (\s@GetServiceResponse' {} a -> s {tags = a} :: GetServiceResponse) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The configuration for the URL endpoint type.+--+-- The __Url__ isthe URL of the endpoint type.+--+-- The __HealthUrl__ is the health check URL of the endpoint type.+getServiceResponse_urlEndpoint :: Lens.Lens' GetServiceResponse (Prelude.Maybe UrlEndpointConfig)+getServiceResponse_urlEndpoint = Lens.lens (\GetServiceResponse' {urlEndpoint} -> urlEndpoint) (\s@GetServiceResponse' {} a -> s {urlEndpoint = a} :: GetServiceResponse)++-- | The ID of the virtual private cloud (VPC).+getServiceResponse_vpcId :: Lens.Lens' GetServiceResponse (Prelude.Maybe Prelude.Text)+getServiceResponse_vpcId = Lens.lens (\GetServiceResponse' {vpcId} -> vpcId) (\s@GetServiceResponse' {} a -> s {vpcId = a} :: GetServiceResponse)++-- | The response's http status code.+getServiceResponse_httpStatus :: Lens.Lens' GetServiceResponse Prelude.Int+getServiceResponse_httpStatus = Lens.lens (\GetServiceResponse' {httpStatus} -> httpStatus) (\s@GetServiceResponse' {} a -> s {httpStatus = a} :: GetServiceResponse)++instance Prelude.NFData GetServiceResponse where+ rnf GetServiceResponse' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdByAccountId+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf endpointType+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf error+ `Prelude.seq` Prelude.rnf lambdaEndpoint+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf ownerAccountId+ `Prelude.seq` Prelude.rnf serviceId+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf urlEndpoint+ `Prelude.seq` Prelude.rnf vpcId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/Lens.hs view
@@ -0,0 +1,500 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Lens+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Lens+ ( -- * Operations++ -- ** CreateApplication+ createApplication_apiGatewayProxy,+ createApplication_clientToken,+ createApplication_tags,+ createApplication_environmentIdentifier,+ createApplication_name,+ createApplication_proxyType,+ createApplication_vpcId,+ createApplicationResponse_apiGatewayProxy,+ createApplicationResponse_applicationId,+ createApplicationResponse_arn,+ createApplicationResponse_createdByAccountId,+ createApplicationResponse_createdTime,+ createApplicationResponse_environmentId,+ createApplicationResponse_lastUpdatedTime,+ createApplicationResponse_name,+ createApplicationResponse_ownerAccountId,+ createApplicationResponse_proxyType,+ createApplicationResponse_state,+ createApplicationResponse_tags,+ createApplicationResponse_vpcId,+ createApplicationResponse_httpStatus,++ -- ** CreateEnvironment+ createEnvironment_clientToken,+ createEnvironment_description,+ createEnvironment_tags,+ createEnvironment_name,+ createEnvironment_networkFabricType,+ createEnvironmentResponse_arn,+ createEnvironmentResponse_createdTime,+ createEnvironmentResponse_description,+ createEnvironmentResponse_environmentId,+ createEnvironmentResponse_lastUpdatedTime,+ createEnvironmentResponse_name,+ createEnvironmentResponse_networkFabricType,+ createEnvironmentResponse_ownerAccountId,+ createEnvironmentResponse_state,+ createEnvironmentResponse_tags,+ createEnvironmentResponse_httpStatus,++ -- ** CreateRoute+ createRoute_clientToken,+ createRoute_defaultRoute,+ createRoute_tags,+ createRoute_uriPathRoute,+ createRoute_applicationIdentifier,+ createRoute_environmentIdentifier,+ createRoute_routeType,+ createRoute_serviceIdentifier,+ createRouteResponse_applicationId,+ createRouteResponse_arn,+ createRouteResponse_createdByAccountId,+ createRouteResponse_createdTime,+ createRouteResponse_lastUpdatedTime,+ createRouteResponse_ownerAccountId,+ createRouteResponse_routeId,+ createRouteResponse_routeType,+ createRouteResponse_serviceId,+ createRouteResponse_state,+ createRouteResponse_tags,+ createRouteResponse_uriPathRoute,+ createRouteResponse_httpStatus,++ -- ** CreateService+ createService_clientToken,+ createService_description,+ createService_lambdaEndpoint,+ createService_tags,+ createService_urlEndpoint,+ createService_vpcId,+ createService_applicationIdentifier,+ createService_endpointType,+ createService_environmentIdentifier,+ createService_name,+ createServiceResponse_applicationId,+ createServiceResponse_arn,+ createServiceResponse_createdByAccountId,+ createServiceResponse_createdTime,+ createServiceResponse_description,+ createServiceResponse_endpointType,+ createServiceResponse_environmentId,+ createServiceResponse_lambdaEndpoint,+ createServiceResponse_lastUpdatedTime,+ createServiceResponse_name,+ createServiceResponse_ownerAccountId,+ createServiceResponse_serviceId,+ createServiceResponse_state,+ createServiceResponse_tags,+ createServiceResponse_urlEndpoint,+ createServiceResponse_vpcId,+ createServiceResponse_httpStatus,++ -- ** DeleteApplication+ deleteApplication_applicationIdentifier,+ deleteApplication_environmentIdentifier,+ deleteApplicationResponse_applicationId,+ deleteApplicationResponse_arn,+ deleteApplicationResponse_environmentId,+ deleteApplicationResponse_lastUpdatedTime,+ deleteApplicationResponse_name,+ deleteApplicationResponse_state,+ deleteApplicationResponse_httpStatus,++ -- ** DeleteEnvironment+ deleteEnvironment_environmentIdentifier,+ deleteEnvironmentResponse_arn,+ deleteEnvironmentResponse_environmentId,+ deleteEnvironmentResponse_lastUpdatedTime,+ deleteEnvironmentResponse_name,+ deleteEnvironmentResponse_state,+ deleteEnvironmentResponse_httpStatus,++ -- ** DeleteResourcePolicy+ deleteResourcePolicy_identifier,+ deleteResourcePolicyResponse_httpStatus,++ -- ** DeleteRoute+ deleteRoute_applicationIdentifier,+ deleteRoute_environmentIdentifier,+ deleteRoute_routeIdentifier,+ deleteRouteResponse_applicationId,+ deleteRouteResponse_arn,+ deleteRouteResponse_lastUpdatedTime,+ deleteRouteResponse_routeId,+ deleteRouteResponse_serviceId,+ deleteRouteResponse_state,+ deleteRouteResponse_httpStatus,++ -- ** DeleteService+ deleteService_applicationIdentifier,+ deleteService_environmentIdentifier,+ deleteService_serviceIdentifier,+ deleteServiceResponse_applicationId,+ deleteServiceResponse_arn,+ deleteServiceResponse_environmentId,+ deleteServiceResponse_lastUpdatedTime,+ deleteServiceResponse_name,+ deleteServiceResponse_serviceId,+ deleteServiceResponse_state,+ deleteServiceResponse_httpStatus,++ -- ** GetApplication+ getApplication_applicationIdentifier,+ getApplication_environmentIdentifier,+ getApplicationResponse_apiGatewayProxy,+ getApplicationResponse_applicationId,+ getApplicationResponse_arn,+ getApplicationResponse_createdByAccountId,+ getApplicationResponse_createdTime,+ getApplicationResponse_environmentId,+ getApplicationResponse_error,+ getApplicationResponse_lastUpdatedTime,+ getApplicationResponse_name,+ getApplicationResponse_ownerAccountId,+ getApplicationResponse_proxyType,+ getApplicationResponse_state,+ getApplicationResponse_tags,+ getApplicationResponse_vpcId,+ getApplicationResponse_httpStatus,++ -- ** GetEnvironment+ getEnvironment_environmentIdentifier,+ getEnvironmentResponse_arn,+ getEnvironmentResponse_createdTime,+ getEnvironmentResponse_description,+ getEnvironmentResponse_environmentId,+ getEnvironmentResponse_error,+ getEnvironmentResponse_lastUpdatedTime,+ getEnvironmentResponse_name,+ getEnvironmentResponse_networkFabricType,+ getEnvironmentResponse_ownerAccountId,+ getEnvironmentResponse_state,+ getEnvironmentResponse_tags,+ getEnvironmentResponse_transitGatewayId,+ getEnvironmentResponse_httpStatus,++ -- ** GetResourcePolicy+ getResourcePolicy_identifier,+ getResourcePolicyResponse_policy,+ getResourcePolicyResponse_httpStatus,++ -- ** GetRoute+ getRoute_applicationIdentifier,+ getRoute_environmentIdentifier,+ getRoute_routeIdentifier,+ getRouteResponse_applicationId,+ getRouteResponse_arn,+ getRouteResponse_createdByAccountId,+ getRouteResponse_createdTime,+ getRouteResponse_environmentId,+ getRouteResponse_error,+ getRouteResponse_includeChildPaths,+ getRouteResponse_lastUpdatedTime,+ getRouteResponse_methods,+ getRouteResponse_ownerAccountId,+ getRouteResponse_pathResourceToId,+ getRouteResponse_routeId,+ getRouteResponse_routeType,+ getRouteResponse_serviceId,+ getRouteResponse_sourcePath,+ getRouteResponse_state,+ getRouteResponse_tags,+ getRouteResponse_httpStatus,++ -- ** GetService+ getService_applicationIdentifier,+ getService_environmentIdentifier,+ getService_serviceIdentifier,+ getServiceResponse_applicationId,+ getServiceResponse_arn,+ getServiceResponse_createdByAccountId,+ getServiceResponse_createdTime,+ getServiceResponse_description,+ getServiceResponse_endpointType,+ getServiceResponse_environmentId,+ getServiceResponse_error,+ getServiceResponse_lambdaEndpoint,+ getServiceResponse_lastUpdatedTime,+ getServiceResponse_name,+ getServiceResponse_ownerAccountId,+ getServiceResponse_serviceId,+ getServiceResponse_state,+ getServiceResponse_tags,+ getServiceResponse_urlEndpoint,+ getServiceResponse_vpcId,+ getServiceResponse_httpStatus,++ -- ** ListApplications+ listApplications_maxResults,+ listApplications_nextToken,+ listApplications_environmentIdentifier,+ listApplicationsResponse_applicationSummaryList,+ listApplicationsResponse_nextToken,+ listApplicationsResponse_httpStatus,++ -- ** ListEnvironmentVpcs+ listEnvironmentVpcs_maxResults,+ listEnvironmentVpcs_nextToken,+ listEnvironmentVpcs_environmentIdentifier,+ listEnvironmentVpcsResponse_environmentVpcList,+ listEnvironmentVpcsResponse_nextToken,+ listEnvironmentVpcsResponse_httpStatus,++ -- ** ListEnvironments+ listEnvironments_maxResults,+ listEnvironments_nextToken,+ listEnvironmentsResponse_environmentSummaryList,+ listEnvironmentsResponse_nextToken,+ listEnvironmentsResponse_httpStatus,++ -- ** ListRoutes+ listRoutes_maxResults,+ listRoutes_nextToken,+ listRoutes_applicationIdentifier,+ listRoutes_environmentIdentifier,+ listRoutesResponse_nextToken,+ listRoutesResponse_routeSummaryList,+ listRoutesResponse_httpStatus,++ -- ** ListServices+ listServices_maxResults,+ listServices_nextToken,+ listServices_applicationIdentifier,+ listServices_environmentIdentifier,+ listServicesResponse_nextToken,+ listServicesResponse_serviceSummaryList,+ listServicesResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_resourceArn,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** PutResourcePolicy+ putResourcePolicy_policy,+ putResourcePolicy_resourceArn,+ putResourcePolicyResponse_httpStatus,++ -- ** TagResource+ tagResource_resourceArn,+ tagResource_tags,+ tagResourceResponse_httpStatus,++ -- ** UntagResource+ untagResource_resourceArn,+ untagResource_tagKeys,+ untagResourceResponse_httpStatus,++ -- ** UpdateRoute+ updateRoute_activationState,+ updateRoute_applicationIdentifier,+ updateRoute_environmentIdentifier,+ updateRoute_routeIdentifier,+ updateRouteResponse_applicationId,+ updateRouteResponse_arn,+ updateRouteResponse_lastUpdatedTime,+ updateRouteResponse_routeId,+ updateRouteResponse_serviceId,+ updateRouteResponse_state,+ updateRouteResponse_httpStatus,++ -- * Types++ -- ** ApiGatewayProxyConfig+ apiGatewayProxyConfig_apiGatewayId,+ apiGatewayProxyConfig_endpointType,+ apiGatewayProxyConfig_nlbArn,+ apiGatewayProxyConfig_nlbName,+ apiGatewayProxyConfig_proxyUrl,+ apiGatewayProxyConfig_stageName,+ apiGatewayProxyConfig_vpcLinkId,++ -- ** ApiGatewayProxyInput+ apiGatewayProxyInput_endpointType,+ apiGatewayProxyInput_stageName,++ -- ** ApiGatewayProxySummary+ apiGatewayProxySummary_apiGatewayId,+ apiGatewayProxySummary_endpointType,+ apiGatewayProxySummary_nlbArn,+ apiGatewayProxySummary_nlbName,+ apiGatewayProxySummary_proxyUrl,+ apiGatewayProxySummary_stageName,+ apiGatewayProxySummary_vpcLinkId,++ -- ** ApplicationSummary+ applicationSummary_apiGatewayProxy,+ applicationSummary_applicationId,+ applicationSummary_arn,+ applicationSummary_createdByAccountId,+ applicationSummary_createdTime,+ applicationSummary_environmentId,+ applicationSummary_error,+ applicationSummary_lastUpdatedTime,+ applicationSummary_name,+ applicationSummary_ownerAccountId,+ applicationSummary_proxyType,+ applicationSummary_state,+ applicationSummary_tags,+ applicationSummary_vpcId,++ -- ** DefaultRouteInput+ defaultRouteInput_activationState,++ -- ** EnvironmentSummary+ environmentSummary_arn,+ environmentSummary_createdTime,+ environmentSummary_description,+ environmentSummary_environmentId,+ environmentSummary_error,+ environmentSummary_lastUpdatedTime,+ environmentSummary_name,+ environmentSummary_networkFabricType,+ environmentSummary_ownerAccountId,+ environmentSummary_state,+ environmentSummary_tags,+ environmentSummary_transitGatewayId,++ -- ** EnvironmentVpc+ environmentVpc_accountId,+ environmentVpc_cidrBlocks,+ environmentVpc_createdTime,+ environmentVpc_environmentId,+ environmentVpc_lastUpdatedTime,+ environmentVpc_vpcId,+ environmentVpc_vpcName,++ -- ** ErrorResponse+ errorResponse_accountId,+ errorResponse_additionalDetails,+ errorResponse_code,+ errorResponse_message,+ errorResponse_resourceIdentifier,+ errorResponse_resourceType,++ -- ** LambdaEndpointConfig+ lambdaEndpointConfig_arn,++ -- ** LambdaEndpointInput+ lambdaEndpointInput_arn,++ -- ** LambdaEndpointSummary+ lambdaEndpointSummary_arn,++ -- ** RouteSummary+ routeSummary_applicationId,+ routeSummary_arn,+ routeSummary_createdByAccountId,+ routeSummary_createdTime,+ routeSummary_environmentId,+ routeSummary_error,+ routeSummary_includeChildPaths,+ routeSummary_lastUpdatedTime,+ routeSummary_methods,+ routeSummary_ownerAccountId,+ routeSummary_pathResourceToId,+ routeSummary_routeId,+ routeSummary_routeType,+ routeSummary_serviceId,+ routeSummary_sourcePath,+ routeSummary_state,+ routeSummary_tags,++ -- ** ServiceSummary+ serviceSummary_applicationId,+ serviceSummary_arn,+ serviceSummary_createdByAccountId,+ serviceSummary_createdTime,+ serviceSummary_description,+ serviceSummary_endpointType,+ serviceSummary_environmentId,+ serviceSummary_error,+ serviceSummary_lambdaEndpoint,+ serviceSummary_lastUpdatedTime,+ serviceSummary_name,+ serviceSummary_ownerAccountId,+ serviceSummary_serviceId,+ serviceSummary_state,+ serviceSummary_tags,+ serviceSummary_urlEndpoint,+ serviceSummary_vpcId,++ -- ** UriPathRouteInput+ uriPathRouteInput_includeChildPaths,+ uriPathRouteInput_methods,+ uriPathRouteInput_activationState,+ uriPathRouteInput_sourcePath,++ -- ** UrlEndpointConfig+ urlEndpointConfig_healthUrl,+ urlEndpointConfig_url,++ -- ** UrlEndpointInput+ urlEndpointInput_healthUrl,+ urlEndpointInput_url,++ -- ** UrlEndpointSummary+ urlEndpointSummary_healthUrl,+ urlEndpointSummary_url,+ )+where++import Amazonka.MigrationHubReFactorSpaces.CreateApplication+import Amazonka.MigrationHubReFactorSpaces.CreateEnvironment+import Amazonka.MigrationHubReFactorSpaces.CreateRoute+import Amazonka.MigrationHubReFactorSpaces.CreateService+import Amazonka.MigrationHubReFactorSpaces.DeleteApplication+import Amazonka.MigrationHubReFactorSpaces.DeleteEnvironment+import Amazonka.MigrationHubReFactorSpaces.DeleteResourcePolicy+import Amazonka.MigrationHubReFactorSpaces.DeleteRoute+import Amazonka.MigrationHubReFactorSpaces.DeleteService+import Amazonka.MigrationHubReFactorSpaces.GetApplication+import Amazonka.MigrationHubReFactorSpaces.GetEnvironment+import Amazonka.MigrationHubReFactorSpaces.GetResourcePolicy+import Amazonka.MigrationHubReFactorSpaces.GetRoute+import Amazonka.MigrationHubReFactorSpaces.GetService+import Amazonka.MigrationHubReFactorSpaces.ListApplications+import Amazonka.MigrationHubReFactorSpaces.ListEnvironmentVpcs+import Amazonka.MigrationHubReFactorSpaces.ListEnvironments+import Amazonka.MigrationHubReFactorSpaces.ListRoutes+import Amazonka.MigrationHubReFactorSpaces.ListServices+import Amazonka.MigrationHubReFactorSpaces.ListTagsForResource+import Amazonka.MigrationHubReFactorSpaces.PutResourcePolicy+import Amazonka.MigrationHubReFactorSpaces.TagResource+import Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxyConfig+import Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxyInput+import Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxySummary+import Amazonka.MigrationHubReFactorSpaces.Types.ApplicationSummary+import Amazonka.MigrationHubReFactorSpaces.Types.DefaultRouteInput+import Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentSummary+import Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentVpc+import Amazonka.MigrationHubReFactorSpaces.Types.ErrorResponse+import Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointConfig+import Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointInput+import Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointSummary+import Amazonka.MigrationHubReFactorSpaces.Types.RouteSummary+import Amazonka.MigrationHubReFactorSpaces.Types.ServiceSummary+import Amazonka.MigrationHubReFactorSpaces.Types.UriPathRouteInput+import Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointConfig+import Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointInput+import Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointSummary+import Amazonka.MigrationHubReFactorSpaces.UntagResource+import Amazonka.MigrationHubReFactorSpaces.UpdateRoute
+ gen/Amazonka/MigrationHubReFactorSpaces/ListApplications.hs view
@@ -0,0 +1,240 @@+{-# 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.MigrationHubReFactorSpaces.ListApplications+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all the Amazon Web Services Migration Hub Refactor Spaces+-- applications within an environment.+--+-- This operation returns paginated results.+module Amazonka.MigrationHubReFactorSpaces.ListApplications+ ( -- * Creating a Request+ ListApplications (..),+ newListApplications,++ -- * Request Lenses+ listApplications_maxResults,+ listApplications_nextToken,+ listApplications_environmentIdentifier,++ -- * Destructuring the Response+ ListApplicationsResponse (..),+ newListApplicationsResponse,++ -- * Response Lenses+ listApplicationsResponse_applicationSummaryList,+ listApplicationsResponse_nextToken,+ listApplicationsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListApplications' smart constructor.+data ListApplications = ListApplications'+ { -- | The maximum number of results to return with a single call. To retrieve+ -- the remaining results, make another call with the returned @nextToken@+ -- value.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token for the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ID of the environment.+ environmentIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListApplications' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listApplications_maxResults' - The maximum number of results to return with a single call. To retrieve+-- the remaining results, make another call with the returned @nextToken@+-- value.+--+-- 'nextToken', 'listApplications_nextToken' - The token for the next page of results.+--+-- 'environmentIdentifier', 'listApplications_environmentIdentifier' - The ID of the environment.+newListApplications ::+ -- | 'environmentIdentifier'+ Prelude.Text ->+ ListApplications+newListApplications pEnvironmentIdentifier_ =+ ListApplications'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ environmentIdentifier = pEnvironmentIdentifier_+ }++-- | The maximum number of results to return with a single call. To retrieve+-- the remaining results, make another call with the returned @nextToken@+-- value.+listApplications_maxResults :: Lens.Lens' ListApplications (Prelude.Maybe Prelude.Natural)+listApplications_maxResults = Lens.lens (\ListApplications' {maxResults} -> maxResults) (\s@ListApplications' {} a -> s {maxResults = a} :: ListApplications)++-- | The token for the next page of results.+listApplications_nextToken :: Lens.Lens' ListApplications (Prelude.Maybe Prelude.Text)+listApplications_nextToken = Lens.lens (\ListApplications' {nextToken} -> nextToken) (\s@ListApplications' {} a -> s {nextToken = a} :: ListApplications)++-- | The ID of the environment.+listApplications_environmentIdentifier :: Lens.Lens' ListApplications Prelude.Text+listApplications_environmentIdentifier = Lens.lens (\ListApplications' {environmentIdentifier} -> environmentIdentifier) (\s@ListApplications' {} a -> s {environmentIdentifier = a} :: ListApplications)++instance Core.AWSPager ListApplications where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listApplicationsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listApplicationsResponse_applicationSummaryList+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listApplications_nextToken+ Lens..~ rs+ Lens.^? listApplicationsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListApplications where+ type+ AWSResponse ListApplications =+ ListApplicationsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListApplicationsResponse'+ Prelude.<$> ( x+ Data..?> "ApplicationSummaryList"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListApplications where+ hashWithSalt _salt ListApplications' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` environmentIdentifier++instance Prelude.NFData ListApplications where+ rnf ListApplications' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf environmentIdentifier++instance Data.ToHeaders ListApplications where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListApplications where+ toPath ListApplications' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications"+ ]++instance Data.ToQuery ListApplications where+ toQuery ListApplications' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListApplicationsResponse' smart constructor.+data ListApplicationsResponse = ListApplicationsResponse'+ { -- | The list of @ApplicationSummary@ objects.+ applicationSummaryList :: Prelude.Maybe [ApplicationSummary],+ -- | The token for the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListApplicationsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationSummaryList', 'listApplicationsResponse_applicationSummaryList' - The list of @ApplicationSummary@ objects.+--+-- 'nextToken', 'listApplicationsResponse_nextToken' - The token for the next page of results.+--+-- 'httpStatus', 'listApplicationsResponse_httpStatus' - The response's http status code.+newListApplicationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListApplicationsResponse+newListApplicationsResponse pHttpStatus_ =+ ListApplicationsResponse'+ { applicationSummaryList =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The list of @ApplicationSummary@ objects.+listApplicationsResponse_applicationSummaryList :: Lens.Lens' ListApplicationsResponse (Prelude.Maybe [ApplicationSummary])+listApplicationsResponse_applicationSummaryList = Lens.lens (\ListApplicationsResponse' {applicationSummaryList} -> applicationSummaryList) (\s@ListApplicationsResponse' {} a -> s {applicationSummaryList = a} :: ListApplicationsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The token for the next page of results.+listApplicationsResponse_nextToken :: Lens.Lens' ListApplicationsResponse (Prelude.Maybe Prelude.Text)+listApplicationsResponse_nextToken = Lens.lens (\ListApplicationsResponse' {nextToken} -> nextToken) (\s@ListApplicationsResponse' {} a -> s {nextToken = a} :: ListApplicationsResponse)++-- | The response's http status code.+listApplicationsResponse_httpStatus :: Lens.Lens' ListApplicationsResponse Prelude.Int+listApplicationsResponse_httpStatus = Lens.lens (\ListApplicationsResponse' {httpStatus} -> httpStatus) (\s@ListApplicationsResponse' {} a -> s {httpStatus = a} :: ListApplicationsResponse)++instance Prelude.NFData ListApplicationsResponse where+ rnf ListApplicationsResponse' {..} =+ Prelude.rnf applicationSummaryList+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/ListEnvironmentVpcs.hs view
@@ -0,0 +1,240 @@+{-# 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.MigrationHubReFactorSpaces.ListEnvironmentVpcs+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all Amazon Web Services Migration Hub Refactor Spaces service+-- virtual private clouds (VPCs) that are part of the environment.+--+-- This operation returns paginated results.+module Amazonka.MigrationHubReFactorSpaces.ListEnvironmentVpcs+ ( -- * Creating a Request+ ListEnvironmentVpcs (..),+ newListEnvironmentVpcs,++ -- * Request Lenses+ listEnvironmentVpcs_maxResults,+ listEnvironmentVpcs_nextToken,+ listEnvironmentVpcs_environmentIdentifier,++ -- * Destructuring the Response+ ListEnvironmentVpcsResponse (..),+ newListEnvironmentVpcsResponse,++ -- * Response Lenses+ listEnvironmentVpcsResponse_environmentVpcList,+ listEnvironmentVpcsResponse_nextToken,+ listEnvironmentVpcsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListEnvironmentVpcs' smart constructor.+data ListEnvironmentVpcs = ListEnvironmentVpcs'+ { -- | The maximum number of results to return with a single call. To retrieve+ -- the remaining results, make another call with the returned @nextToken@+ -- value.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token for the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ID of the environment.+ environmentIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEnvironmentVpcs' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listEnvironmentVpcs_maxResults' - The maximum number of results to return with a single call. To retrieve+-- the remaining results, make another call with the returned @nextToken@+-- value.+--+-- 'nextToken', 'listEnvironmentVpcs_nextToken' - The token for the next page of results.+--+-- 'environmentIdentifier', 'listEnvironmentVpcs_environmentIdentifier' - The ID of the environment.+newListEnvironmentVpcs ::+ -- | 'environmentIdentifier'+ Prelude.Text ->+ ListEnvironmentVpcs+newListEnvironmentVpcs pEnvironmentIdentifier_ =+ ListEnvironmentVpcs'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ environmentIdentifier = pEnvironmentIdentifier_+ }++-- | The maximum number of results to return with a single call. To retrieve+-- the remaining results, make another call with the returned @nextToken@+-- value.+listEnvironmentVpcs_maxResults :: Lens.Lens' ListEnvironmentVpcs (Prelude.Maybe Prelude.Natural)+listEnvironmentVpcs_maxResults = Lens.lens (\ListEnvironmentVpcs' {maxResults} -> maxResults) (\s@ListEnvironmentVpcs' {} a -> s {maxResults = a} :: ListEnvironmentVpcs)++-- | The token for the next page of results.+listEnvironmentVpcs_nextToken :: Lens.Lens' ListEnvironmentVpcs (Prelude.Maybe Prelude.Text)+listEnvironmentVpcs_nextToken = Lens.lens (\ListEnvironmentVpcs' {nextToken} -> nextToken) (\s@ListEnvironmentVpcs' {} a -> s {nextToken = a} :: ListEnvironmentVpcs)++-- | The ID of the environment.+listEnvironmentVpcs_environmentIdentifier :: Lens.Lens' ListEnvironmentVpcs Prelude.Text+listEnvironmentVpcs_environmentIdentifier = Lens.lens (\ListEnvironmentVpcs' {environmentIdentifier} -> environmentIdentifier) (\s@ListEnvironmentVpcs' {} a -> s {environmentIdentifier = a} :: ListEnvironmentVpcs)++instance Core.AWSPager ListEnvironmentVpcs where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listEnvironmentVpcsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listEnvironmentVpcsResponse_environmentVpcList+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listEnvironmentVpcs_nextToken+ Lens..~ rs+ Lens.^? listEnvironmentVpcsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListEnvironmentVpcs where+ type+ AWSResponse ListEnvironmentVpcs =+ ListEnvironmentVpcsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListEnvironmentVpcsResponse'+ Prelude.<$> ( x+ Data..?> "EnvironmentVpcList"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListEnvironmentVpcs where+ hashWithSalt _salt ListEnvironmentVpcs' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` environmentIdentifier++instance Prelude.NFData ListEnvironmentVpcs where+ rnf ListEnvironmentVpcs' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf environmentIdentifier++instance Data.ToHeaders ListEnvironmentVpcs where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListEnvironmentVpcs where+ toPath ListEnvironmentVpcs' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/vpcs"+ ]++instance Data.ToQuery ListEnvironmentVpcs where+ toQuery ListEnvironmentVpcs' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListEnvironmentVpcsResponse' smart constructor.+data ListEnvironmentVpcsResponse = ListEnvironmentVpcsResponse'+ { -- | The list of @EnvironmentVpc@ objects.+ environmentVpcList :: Prelude.Maybe [EnvironmentVpc],+ -- | The token for the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEnvironmentVpcsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'environmentVpcList', 'listEnvironmentVpcsResponse_environmentVpcList' - The list of @EnvironmentVpc@ objects.+--+-- 'nextToken', 'listEnvironmentVpcsResponse_nextToken' - The token for the next page of results.+--+-- 'httpStatus', 'listEnvironmentVpcsResponse_httpStatus' - The response's http status code.+newListEnvironmentVpcsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListEnvironmentVpcsResponse+newListEnvironmentVpcsResponse pHttpStatus_ =+ ListEnvironmentVpcsResponse'+ { environmentVpcList =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The list of @EnvironmentVpc@ objects.+listEnvironmentVpcsResponse_environmentVpcList :: Lens.Lens' ListEnvironmentVpcsResponse (Prelude.Maybe [EnvironmentVpc])+listEnvironmentVpcsResponse_environmentVpcList = Lens.lens (\ListEnvironmentVpcsResponse' {environmentVpcList} -> environmentVpcList) (\s@ListEnvironmentVpcsResponse' {} a -> s {environmentVpcList = a} :: ListEnvironmentVpcsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The token for the next page of results.+listEnvironmentVpcsResponse_nextToken :: Lens.Lens' ListEnvironmentVpcsResponse (Prelude.Maybe Prelude.Text)+listEnvironmentVpcsResponse_nextToken = Lens.lens (\ListEnvironmentVpcsResponse' {nextToken} -> nextToken) (\s@ListEnvironmentVpcsResponse' {} a -> s {nextToken = a} :: ListEnvironmentVpcsResponse)++-- | The response's http status code.+listEnvironmentVpcsResponse_httpStatus :: Lens.Lens' ListEnvironmentVpcsResponse Prelude.Int+listEnvironmentVpcsResponse_httpStatus = Lens.lens (\ListEnvironmentVpcsResponse' {httpStatus} -> httpStatus) (\s@ListEnvironmentVpcsResponse' {} a -> s {httpStatus = a} :: ListEnvironmentVpcsResponse)++instance Prelude.NFData ListEnvironmentVpcsResponse where+ rnf ListEnvironmentVpcsResponse' {..} =+ Prelude.rnf environmentVpcList+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/ListEnvironments.hs view
@@ -0,0 +1,221 @@+{-# 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.MigrationHubReFactorSpaces.ListEnvironments+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists Amazon Web Services Migration Hub Refactor Spaces environments+-- owned by a caller account or shared with the caller account.+--+-- This operation returns paginated results.+module Amazonka.MigrationHubReFactorSpaces.ListEnvironments+ ( -- * Creating a Request+ ListEnvironments (..),+ newListEnvironments,++ -- * Request Lenses+ listEnvironments_maxResults,+ listEnvironments_nextToken,++ -- * Destructuring the Response+ ListEnvironmentsResponse (..),+ newListEnvironmentsResponse,++ -- * Response Lenses+ listEnvironmentsResponse_environmentSummaryList,+ listEnvironmentsResponse_nextToken,+ listEnvironmentsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListEnvironments' smart constructor.+data ListEnvironments = ListEnvironments'+ { -- | The maximum number of results to return with a single call. To retrieve+ -- the remaining results, make another call with the returned @nextToken@+ -- value.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token for the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEnvironments' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listEnvironments_maxResults' - The maximum number of results to return with a single call. To retrieve+-- the remaining results, make another call with the returned @nextToken@+-- value.+--+-- 'nextToken', 'listEnvironments_nextToken' - The token for the next page of results.+newListEnvironments ::+ ListEnvironments+newListEnvironments =+ ListEnvironments'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | The maximum number of results to return with a single call. To retrieve+-- the remaining results, make another call with the returned @nextToken@+-- value.+listEnvironments_maxResults :: Lens.Lens' ListEnvironments (Prelude.Maybe Prelude.Natural)+listEnvironments_maxResults = Lens.lens (\ListEnvironments' {maxResults} -> maxResults) (\s@ListEnvironments' {} a -> s {maxResults = a} :: ListEnvironments)++-- | The token for the next page of results.+listEnvironments_nextToken :: Lens.Lens' ListEnvironments (Prelude.Maybe Prelude.Text)+listEnvironments_nextToken = Lens.lens (\ListEnvironments' {nextToken} -> nextToken) (\s@ListEnvironments' {} a -> s {nextToken = a} :: ListEnvironments)++instance Core.AWSPager ListEnvironments where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listEnvironmentsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listEnvironmentsResponse_environmentSummaryList+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listEnvironments_nextToken+ Lens..~ rs+ Lens.^? listEnvironmentsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListEnvironments where+ type+ AWSResponse ListEnvironments =+ ListEnvironmentsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListEnvironmentsResponse'+ Prelude.<$> ( x+ Data..?> "EnvironmentSummaryList"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListEnvironments where+ hashWithSalt _salt ListEnvironments' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListEnvironments where+ rnf ListEnvironments' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListEnvironments where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListEnvironments where+ toPath = Prelude.const "/environments"++instance Data.ToQuery ListEnvironments where+ toQuery ListEnvironments' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListEnvironmentsResponse' smart constructor.+data ListEnvironmentsResponse = ListEnvironmentsResponse'+ { -- | The list of @EnvironmentSummary@ objects.+ environmentSummaryList :: Prelude.Maybe [EnvironmentSummary],+ -- | The token for the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEnvironmentsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'environmentSummaryList', 'listEnvironmentsResponse_environmentSummaryList' - The list of @EnvironmentSummary@ objects.+--+-- 'nextToken', 'listEnvironmentsResponse_nextToken' - The token for the next page of results.+--+-- 'httpStatus', 'listEnvironmentsResponse_httpStatus' - The response's http status code.+newListEnvironmentsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListEnvironmentsResponse+newListEnvironmentsResponse pHttpStatus_ =+ ListEnvironmentsResponse'+ { environmentSummaryList =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The list of @EnvironmentSummary@ objects.+listEnvironmentsResponse_environmentSummaryList :: Lens.Lens' ListEnvironmentsResponse (Prelude.Maybe [EnvironmentSummary])+listEnvironmentsResponse_environmentSummaryList = Lens.lens (\ListEnvironmentsResponse' {environmentSummaryList} -> environmentSummaryList) (\s@ListEnvironmentsResponse' {} a -> s {environmentSummaryList = a} :: ListEnvironmentsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The token for the next page of results.+listEnvironmentsResponse_nextToken :: Lens.Lens' ListEnvironmentsResponse (Prelude.Maybe Prelude.Text)+listEnvironmentsResponse_nextToken = Lens.lens (\ListEnvironmentsResponse' {nextToken} -> nextToken) (\s@ListEnvironmentsResponse' {} a -> s {nextToken = a} :: ListEnvironmentsResponse)++-- | The response's http status code.+listEnvironmentsResponse_httpStatus :: Lens.Lens' ListEnvironmentsResponse Prelude.Int+listEnvironmentsResponse_httpStatus = Lens.lens (\ListEnvironmentsResponse' {httpStatus} -> httpStatus) (\s@ListEnvironmentsResponse' {} a -> s {httpStatus = a} :: ListEnvironmentsResponse)++instance Prelude.NFData ListEnvironmentsResponse where+ rnf ListEnvironmentsResponse' {..} =+ Prelude.rnf environmentSummaryList+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/ListRoutes.hs view
@@ -0,0 +1,255 @@+{-# 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.MigrationHubReFactorSpaces.ListRoutes+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all the Amazon Web Services Migration Hub Refactor Spaces routes+-- within an application.+--+-- This operation returns paginated results.+module Amazonka.MigrationHubReFactorSpaces.ListRoutes+ ( -- * Creating a Request+ ListRoutes (..),+ newListRoutes,++ -- * Request Lenses+ listRoutes_maxResults,+ listRoutes_nextToken,+ listRoutes_applicationIdentifier,+ listRoutes_environmentIdentifier,++ -- * Destructuring the Response+ ListRoutesResponse (..),+ newListRoutesResponse,++ -- * Response Lenses+ listRoutesResponse_nextToken,+ listRoutesResponse_routeSummaryList,+ listRoutesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListRoutes' smart constructor.+data ListRoutes = ListRoutes'+ { -- | The maximum number of results to return with a single call. To retrieve+ -- the remaining results, make another call with the returned @nextToken@+ -- value.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token for the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ID of the application.+ applicationIdentifier :: Prelude.Text,+ -- | The ID of the environment.+ environmentIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRoutes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listRoutes_maxResults' - The maximum number of results to return with a single call. To retrieve+-- the remaining results, make another call with the returned @nextToken@+-- value.+--+-- 'nextToken', 'listRoutes_nextToken' - The token for the next page of results.+--+-- 'applicationIdentifier', 'listRoutes_applicationIdentifier' - The ID of the application.+--+-- 'environmentIdentifier', 'listRoutes_environmentIdentifier' - The ID of the environment.+newListRoutes ::+ -- | 'applicationIdentifier'+ Prelude.Text ->+ -- | 'environmentIdentifier'+ Prelude.Text ->+ ListRoutes+newListRoutes+ pApplicationIdentifier_+ pEnvironmentIdentifier_ =+ ListRoutes'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ applicationIdentifier = pApplicationIdentifier_,+ environmentIdentifier = pEnvironmentIdentifier_+ }++-- | The maximum number of results to return with a single call. To retrieve+-- the remaining results, make another call with the returned @nextToken@+-- value.+listRoutes_maxResults :: Lens.Lens' ListRoutes (Prelude.Maybe Prelude.Natural)+listRoutes_maxResults = Lens.lens (\ListRoutes' {maxResults} -> maxResults) (\s@ListRoutes' {} a -> s {maxResults = a} :: ListRoutes)++-- | The token for the next page of results.+listRoutes_nextToken :: Lens.Lens' ListRoutes (Prelude.Maybe Prelude.Text)+listRoutes_nextToken = Lens.lens (\ListRoutes' {nextToken} -> nextToken) (\s@ListRoutes' {} a -> s {nextToken = a} :: ListRoutes)++-- | The ID of the application.+listRoutes_applicationIdentifier :: Lens.Lens' ListRoutes Prelude.Text+listRoutes_applicationIdentifier = Lens.lens (\ListRoutes' {applicationIdentifier} -> applicationIdentifier) (\s@ListRoutes' {} a -> s {applicationIdentifier = a} :: ListRoutes)++-- | The ID of the environment.+listRoutes_environmentIdentifier :: Lens.Lens' ListRoutes Prelude.Text+listRoutes_environmentIdentifier = Lens.lens (\ListRoutes' {environmentIdentifier} -> environmentIdentifier) (\s@ListRoutes' {} a -> s {environmentIdentifier = a} :: ListRoutes)++instance Core.AWSPager ListRoutes where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listRoutesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listRoutesResponse_routeSummaryList+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listRoutes_nextToken+ Lens..~ rs+ Lens.^? listRoutesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListRoutes where+ type AWSResponse ListRoutes = ListRoutesResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListRoutesResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "RouteSummaryList"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListRoutes where+ hashWithSalt _salt ListRoutes' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` applicationIdentifier+ `Prelude.hashWithSalt` environmentIdentifier++instance Prelude.NFData ListRoutes where+ rnf ListRoutes' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf applicationIdentifier+ `Prelude.seq` Prelude.rnf environmentIdentifier++instance Data.ToHeaders ListRoutes where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListRoutes where+ toPath ListRoutes' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications/",+ Data.toBS applicationIdentifier,+ "/routes"+ ]++instance Data.ToQuery ListRoutes where+ toQuery ListRoutes' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListRoutesResponse' smart constructor.+data ListRoutesResponse = ListRoutesResponse'+ { -- | The token for the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The list of @RouteSummary@ objects.+ routeSummaryList :: Prelude.Maybe [RouteSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRoutesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listRoutesResponse_nextToken' - The token for the next page of results.+--+-- 'routeSummaryList', 'listRoutesResponse_routeSummaryList' - The list of @RouteSummary@ objects.+--+-- 'httpStatus', 'listRoutesResponse_httpStatus' - The response's http status code.+newListRoutesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListRoutesResponse+newListRoutesResponse pHttpStatus_ =+ ListRoutesResponse'+ { nextToken = Prelude.Nothing,+ routeSummaryList = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The token for the next page of results.+listRoutesResponse_nextToken :: Lens.Lens' ListRoutesResponse (Prelude.Maybe Prelude.Text)+listRoutesResponse_nextToken = Lens.lens (\ListRoutesResponse' {nextToken} -> nextToken) (\s@ListRoutesResponse' {} a -> s {nextToken = a} :: ListRoutesResponse)++-- | The list of @RouteSummary@ objects.+listRoutesResponse_routeSummaryList :: Lens.Lens' ListRoutesResponse (Prelude.Maybe [RouteSummary])+listRoutesResponse_routeSummaryList = Lens.lens (\ListRoutesResponse' {routeSummaryList} -> routeSummaryList) (\s@ListRoutesResponse' {} a -> s {routeSummaryList = a} :: ListRoutesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listRoutesResponse_httpStatus :: Lens.Lens' ListRoutesResponse Prelude.Int+listRoutesResponse_httpStatus = Lens.lens (\ListRoutesResponse' {httpStatus} -> httpStatus) (\s@ListRoutesResponse' {} a -> s {httpStatus = a} :: ListRoutesResponse)++instance Prelude.NFData ListRoutesResponse where+ rnf ListRoutesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf routeSummaryList+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/ListServices.hs view
@@ -0,0 +1,255 @@+{-# 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.MigrationHubReFactorSpaces.ListServices+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all the Amazon Web Services Migration Hub Refactor Spaces services+-- within an application.+--+-- This operation returns paginated results.+module Amazonka.MigrationHubReFactorSpaces.ListServices+ ( -- * Creating a Request+ ListServices (..),+ newListServices,++ -- * Request Lenses+ listServices_maxResults,+ listServices_nextToken,+ listServices_applicationIdentifier,+ listServices_environmentIdentifier,++ -- * Destructuring the Response+ ListServicesResponse (..),+ newListServicesResponse,++ -- * Response Lenses+ listServicesResponse_nextToken,+ listServicesResponse_serviceSummaryList,+ listServicesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListServices' smart constructor.+data ListServices = ListServices'+ { -- | The maximum number of results to return with a single call. To retrieve+ -- the remaining results, make another call with the returned @nextToken@+ -- value.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The token for the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ID of the application.+ applicationIdentifier :: Prelude.Text,+ -- | The ID of the environment.+ environmentIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListServices' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listServices_maxResults' - The maximum number of results to return with a single call. To retrieve+-- the remaining results, make another call with the returned @nextToken@+-- value.+--+-- 'nextToken', 'listServices_nextToken' - The token for the next page of results.+--+-- 'applicationIdentifier', 'listServices_applicationIdentifier' - The ID of the application.+--+-- 'environmentIdentifier', 'listServices_environmentIdentifier' - The ID of the environment.+newListServices ::+ -- | 'applicationIdentifier'+ Prelude.Text ->+ -- | 'environmentIdentifier'+ Prelude.Text ->+ ListServices+newListServices+ pApplicationIdentifier_+ pEnvironmentIdentifier_ =+ ListServices'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ applicationIdentifier = pApplicationIdentifier_,+ environmentIdentifier = pEnvironmentIdentifier_+ }++-- | The maximum number of results to return with a single call. To retrieve+-- the remaining results, make another call with the returned @nextToken@+-- value.+listServices_maxResults :: Lens.Lens' ListServices (Prelude.Maybe Prelude.Natural)+listServices_maxResults = Lens.lens (\ListServices' {maxResults} -> maxResults) (\s@ListServices' {} a -> s {maxResults = a} :: ListServices)++-- | The token for the next page of results.+listServices_nextToken :: Lens.Lens' ListServices (Prelude.Maybe Prelude.Text)+listServices_nextToken = Lens.lens (\ListServices' {nextToken} -> nextToken) (\s@ListServices' {} a -> s {nextToken = a} :: ListServices)++-- | The ID of the application.+listServices_applicationIdentifier :: Lens.Lens' ListServices Prelude.Text+listServices_applicationIdentifier = Lens.lens (\ListServices' {applicationIdentifier} -> applicationIdentifier) (\s@ListServices' {} a -> s {applicationIdentifier = a} :: ListServices)++-- | The ID of the environment.+listServices_environmentIdentifier :: Lens.Lens' ListServices Prelude.Text+listServices_environmentIdentifier = Lens.lens (\ListServices' {environmentIdentifier} -> environmentIdentifier) (\s@ListServices' {} a -> s {environmentIdentifier = a} :: ListServices)++instance Core.AWSPager ListServices where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listServicesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listServicesResponse_serviceSummaryList+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listServices_nextToken+ Lens..~ rs+ Lens.^? listServicesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListServices where+ type AWSResponse ListServices = ListServicesResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListServicesResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "ServiceSummaryList"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListServices where+ hashWithSalt _salt ListServices' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` applicationIdentifier+ `Prelude.hashWithSalt` environmentIdentifier++instance Prelude.NFData ListServices where+ rnf ListServices' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf applicationIdentifier+ `Prelude.seq` Prelude.rnf environmentIdentifier++instance Data.ToHeaders ListServices where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListServices where+ toPath ListServices' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications/",+ Data.toBS applicationIdentifier,+ "/services"+ ]++instance Data.ToQuery ListServices where+ toQuery ListServices' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListServicesResponse' smart constructor.+data ListServicesResponse = ListServicesResponse'+ { -- | The token for the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The list of @ServiceSummary@ objects.+ serviceSummaryList :: Prelude.Maybe [ServiceSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListServicesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listServicesResponse_nextToken' - The token for the next page of results.+--+-- 'serviceSummaryList', 'listServicesResponse_serviceSummaryList' - The list of @ServiceSummary@ objects.+--+-- 'httpStatus', 'listServicesResponse_httpStatus' - The response's http status code.+newListServicesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListServicesResponse+newListServicesResponse pHttpStatus_ =+ ListServicesResponse'+ { nextToken = Prelude.Nothing,+ serviceSummaryList = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The token for the next page of results.+listServicesResponse_nextToken :: Lens.Lens' ListServicesResponse (Prelude.Maybe Prelude.Text)+listServicesResponse_nextToken = Lens.lens (\ListServicesResponse' {nextToken} -> nextToken) (\s@ListServicesResponse' {} a -> s {nextToken = a} :: ListServicesResponse)++-- | The list of @ServiceSummary@ objects.+listServicesResponse_serviceSummaryList :: Lens.Lens' ListServicesResponse (Prelude.Maybe [ServiceSummary])+listServicesResponse_serviceSummaryList = Lens.lens (\ListServicesResponse' {serviceSummaryList} -> serviceSummaryList) (\s@ListServicesResponse' {} a -> s {serviceSummaryList = a} :: ListServicesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listServicesResponse_httpStatus :: Lens.Lens' ListServicesResponse Prelude.Int+listServicesResponse_httpStatus = Lens.lens (\ListServicesResponse' {httpStatus} -> httpStatus) (\s@ListServicesResponse' {} a -> s {httpStatus = a} :: ListServicesResponse)++instance Prelude.NFData ListServicesResponse where+ rnf ListServicesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf serviceSummaryList+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/ListTagsForResource.hs view
@@ -0,0 +1,161 @@+{-# 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.MigrationHubReFactorSpaces.ListTagsForResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the tags of a resource. The caller account must be the same as the+-- resource’s @OwnerAccountId@. Listing tags in other accounts is not+-- supported.+module Amazonka.MigrationHubReFactorSpaces.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_resourceArn,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+ { -- | The Amazon Resource Name (ARN) of the resource.+ resourceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'listTagsForResource_resourceArn' - The Amazon Resource Name (ARN) of the resource.+newListTagsForResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceArn_ =+ ListTagsForResource' {resourceArn = pResourceArn_}++-- | The Amazon Resource Name (ARN) of the resource.+listTagsForResource_resourceArn :: Lens.Lens' ListTagsForResource Prelude.Text+listTagsForResource_resourceArn = Lens.lens (\ListTagsForResource' {resourceArn} -> resourceArn) (\s@ListTagsForResource' {} a -> s {resourceArn = a} :: ListTagsForResource)++instance Core.AWSRequest ListTagsForResource where+ type+ AWSResponse ListTagsForResource =+ ListTagsForResourceResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListTagsForResourceResponse'+ Prelude.<$> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListTagsForResource where+ hashWithSalt _salt ListTagsForResource' {..} =+ _salt `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData ListTagsForResource where+ rnf ListTagsForResource' {..} =+ Prelude.rnf resourceArn++instance Data.ToHeaders ListTagsForResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListTagsForResource where+ toPath ListTagsForResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery ListTagsForResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+ { -- | The list of tags assigned to the resource.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'listTagsForResourceResponse_tags' - The list of tags assigned to the resource.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { tags =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The list of tags assigned to the resource.+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+listTagsForResourceResponse_tags = Lens.lens (\ListTagsForResourceResponse' {tags} -> tags) (\s@ListTagsForResourceResponse' {} a -> s {tags = a} :: ListTagsForResourceResponse) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The response's http status code.+listTagsForResourceResponse_httpStatus :: Lens.Lens' ListTagsForResourceResponse Prelude.Int+listTagsForResourceResponse_httpStatus = Lens.lens (\ListTagsForResourceResponse' {httpStatus} -> httpStatus) (\s@ListTagsForResourceResponse' {} a -> s {httpStatus = a} :: ListTagsForResourceResponse)++instance Prelude.NFData ListTagsForResourceResponse where+ rnf ListTagsForResourceResponse' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/PutResourcePolicy.hs view
@@ -0,0 +1,183 @@+{-# 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.MigrationHubReFactorSpaces.PutResourcePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Attaches a resource-based permission policy to the Amazon Web Services+-- Migration Hub Refactor Spaces environment. The policy must contain the+-- same actions and condition statements as the+-- @arn:aws:ram::aws:permission\/AWSRAMDefaultPermissionRefactorSpacesEnvironment@+-- permission in Resource Access Manager. The policy must not contain new+-- lines or blank lines.+module Amazonka.MigrationHubReFactorSpaces.PutResourcePolicy+ ( -- * Creating a Request+ PutResourcePolicy (..),+ newPutResourcePolicy,++ -- * Request Lenses+ putResourcePolicy_policy,+ putResourcePolicy_resourceArn,++ -- * Destructuring the Response+ PutResourcePolicyResponse (..),+ newPutResourcePolicyResponse,++ -- * Response Lenses+ putResourcePolicyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newPutResourcePolicy' smart constructor.+data PutResourcePolicy = PutResourcePolicy'+ { -- | A JSON-formatted string for an Amazon Web Services resource-based+ -- policy.+ policy :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the resource to which the policy is+ -- being attached.+ resourceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutResourcePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'putResourcePolicy_policy' - A JSON-formatted string for an Amazon Web Services resource-based+-- policy.+--+-- 'resourceArn', 'putResourcePolicy_resourceArn' - The Amazon Resource Name (ARN) of the resource to which the policy is+-- being attached.+newPutResourcePolicy ::+ -- | 'policy'+ Prelude.Text ->+ -- | 'resourceArn'+ Prelude.Text ->+ PutResourcePolicy+newPutResourcePolicy pPolicy_ pResourceArn_ =+ PutResourcePolicy'+ { policy = pPolicy_,+ resourceArn = pResourceArn_+ }++-- | A JSON-formatted string for an Amazon Web Services resource-based+-- policy.+putResourcePolicy_policy :: Lens.Lens' PutResourcePolicy Prelude.Text+putResourcePolicy_policy = Lens.lens (\PutResourcePolicy' {policy} -> policy) (\s@PutResourcePolicy' {} a -> s {policy = a} :: PutResourcePolicy)++-- | The Amazon Resource Name (ARN) of the resource to which the policy is+-- being attached.+putResourcePolicy_resourceArn :: Lens.Lens' PutResourcePolicy Prelude.Text+putResourcePolicy_resourceArn = Lens.lens (\PutResourcePolicy' {resourceArn} -> resourceArn) (\s@PutResourcePolicy' {} a -> s {resourceArn = a} :: PutResourcePolicy)++instance Core.AWSRequest PutResourcePolicy where+ type+ AWSResponse PutResourcePolicy =+ PutResourcePolicyResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ PutResourcePolicyResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable PutResourcePolicy where+ hashWithSalt _salt PutResourcePolicy' {..} =+ _salt+ `Prelude.hashWithSalt` policy+ `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData PutResourcePolicy where+ rnf PutResourcePolicy' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf resourceArn++instance Data.ToHeaders PutResourcePolicy where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON PutResourcePolicy where+ toJSON PutResourcePolicy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Policy" Data..= policy),+ Prelude.Just ("ResourceArn" Data..= resourceArn)+ ]+ )++instance Data.ToPath PutResourcePolicy where+ toPath = Prelude.const "/resourcepolicy"++instance Data.ToQuery PutResourcePolicy where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newPutResourcePolicyResponse' smart constructor.+data PutResourcePolicyResponse = PutResourcePolicyResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutResourcePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'putResourcePolicyResponse_httpStatus' - The response's http status code.+newPutResourcePolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ PutResourcePolicyResponse+newPutResourcePolicyResponse pHttpStatus_ =+ PutResourcePolicyResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+putResourcePolicyResponse_httpStatus :: Lens.Lens' PutResourcePolicyResponse Prelude.Int+putResourcePolicyResponse_httpStatus = Lens.lens (\PutResourcePolicyResponse' {httpStatus} -> httpStatus) (\s@PutResourcePolicyResponse' {} a -> s {httpStatus = a} :: PutResourcePolicyResponse)++instance Prelude.NFData PutResourcePolicyResponse where+ rnf PutResourcePolicyResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/TagResource.hs view
@@ -0,0 +1,170 @@+{-# 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.MigrationHubReFactorSpaces.TagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the tags of a given resource. Tags are metadata which can be+-- used to manage a resource. To tag a resource, the caller account must be+-- the same as the resource’s @OwnerAccountId@. Tagging resources in other+-- accounts is not supported.+--+-- Amazon Web Services Migration Hub Refactor Spaces does not propagate+-- tags to orchestrated resources, such as an environment’s transit+-- gateway.+module Amazonka.MigrationHubReFactorSpaces.TagResource+ ( -- * Creating a Request+ TagResource (..),+ newTagResource,++ -- * Request Lenses+ tagResource_resourceArn,+ tagResource_tags,++ -- * Destructuring the Response+ TagResourceResponse (..),+ newTagResourceResponse,++ -- * Response Lenses+ tagResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagResource' smart constructor.+data TagResource = TagResource'+ { -- | The Amazon Resource Name (ARN) of the resource.+ resourceArn :: Prelude.Text,+ -- | The new or modified tags for the resource.+ tags :: Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'tagResource_resourceArn' - The Amazon Resource Name (ARN) of the resource.+--+-- 'tags', 'tagResource_tags' - The new or modified tags for the resource.+newTagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ TagResource+newTagResource pResourceArn_ =+ TagResource'+ { resourceArn = pResourceArn_,+ tags = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the resource.+tagResource_resourceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceArn = Lens.lens (\TagResource' {resourceArn} -> resourceArn) (\s@TagResource' {} a -> s {resourceArn = a} :: TagResource)++-- | The new or modified tags for the resource.+tagResource_tags :: Lens.Lens' TagResource (Prelude.HashMap Prelude.Text Prelude.Text)+tagResource_tags = Lens.lens (\TagResource' {tags} -> tags) (\s@TagResource' {} a -> s {tags = a} :: TagResource) Prelude.. Data._Sensitive Prelude.. Lens.coerced++instance Core.AWSRequest TagResource where+ type AWSResponse TagResource = TagResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ TagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable TagResource where+ hashWithSalt _salt TagResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagResource where+ rnf TagResource' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON TagResource where+ toJSON TagResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("Tags" Data..= tags)]+ )++instance Data.ToPath TagResource where+ toPath TagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery TagResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newTagResourceResponse' smart constructor.+data TagResourceResponse = TagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'tagResourceResponse_httpStatus' - The response's http status code.+newTagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ TagResourceResponse+newTagResourceResponse pHttpStatus_ =+ TagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+tagResourceResponse_httpStatus :: Lens.Lens' TagResourceResponse Prelude.Int+tagResourceResponse_httpStatus = Lens.lens (\TagResourceResponse' {httpStatus} -> httpStatus) (\s@TagResourceResponse' {} a -> s {httpStatus = a} :: TagResourceResponse)++instance Prelude.NFData TagResourceResponse where+ rnf TagResourceResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/Types.hs view
@@ -0,0 +1,412 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AccessDeniedException,+ _ConflictException,+ _InternalServerException,+ _InvalidResourcePolicyException,+ _ResourceNotFoundException,+ _ServiceQuotaExceededException,+ _ThrottlingException,+ _ValidationException,++ -- * ApiGatewayEndpointType+ ApiGatewayEndpointType (..),++ -- * ApplicationState+ ApplicationState (..),++ -- * EnvironmentState+ EnvironmentState (..),++ -- * ErrorCode+ ErrorCode (..),++ -- * ErrorResourceType+ ErrorResourceType (..),++ -- * HttpMethod+ HttpMethod (..),++ -- * NetworkFabricType+ NetworkFabricType (..),++ -- * ProxyType+ ProxyType (..),++ -- * RouteActivationState+ RouteActivationState (..),++ -- * RouteState+ RouteState (..),++ -- * RouteType+ RouteType (..),++ -- * ServiceEndpointType+ ServiceEndpointType (..),++ -- * ServiceState+ ServiceState (..),++ -- * ApiGatewayProxyConfig+ ApiGatewayProxyConfig (..),+ newApiGatewayProxyConfig,+ apiGatewayProxyConfig_apiGatewayId,+ apiGatewayProxyConfig_endpointType,+ apiGatewayProxyConfig_nlbArn,+ apiGatewayProxyConfig_nlbName,+ apiGatewayProxyConfig_proxyUrl,+ apiGatewayProxyConfig_stageName,+ apiGatewayProxyConfig_vpcLinkId,++ -- * ApiGatewayProxyInput+ ApiGatewayProxyInput (..),+ newApiGatewayProxyInput,+ apiGatewayProxyInput_endpointType,+ apiGatewayProxyInput_stageName,++ -- * ApiGatewayProxySummary+ ApiGatewayProxySummary (..),+ newApiGatewayProxySummary,+ apiGatewayProxySummary_apiGatewayId,+ apiGatewayProxySummary_endpointType,+ apiGatewayProxySummary_nlbArn,+ apiGatewayProxySummary_nlbName,+ apiGatewayProxySummary_proxyUrl,+ apiGatewayProxySummary_stageName,+ apiGatewayProxySummary_vpcLinkId,++ -- * ApplicationSummary+ ApplicationSummary (..),+ newApplicationSummary,+ applicationSummary_apiGatewayProxy,+ applicationSummary_applicationId,+ applicationSummary_arn,+ applicationSummary_createdByAccountId,+ applicationSummary_createdTime,+ applicationSummary_environmentId,+ applicationSummary_error,+ applicationSummary_lastUpdatedTime,+ applicationSummary_name,+ applicationSummary_ownerAccountId,+ applicationSummary_proxyType,+ applicationSummary_state,+ applicationSummary_tags,+ applicationSummary_vpcId,++ -- * DefaultRouteInput+ DefaultRouteInput (..),+ newDefaultRouteInput,+ defaultRouteInput_activationState,++ -- * EnvironmentSummary+ EnvironmentSummary (..),+ newEnvironmentSummary,+ environmentSummary_arn,+ environmentSummary_createdTime,+ environmentSummary_description,+ environmentSummary_environmentId,+ environmentSummary_error,+ environmentSummary_lastUpdatedTime,+ environmentSummary_name,+ environmentSummary_networkFabricType,+ environmentSummary_ownerAccountId,+ environmentSummary_state,+ environmentSummary_tags,+ environmentSummary_transitGatewayId,++ -- * EnvironmentVpc+ EnvironmentVpc (..),+ newEnvironmentVpc,+ environmentVpc_accountId,+ environmentVpc_cidrBlocks,+ environmentVpc_createdTime,+ environmentVpc_environmentId,+ environmentVpc_lastUpdatedTime,+ environmentVpc_vpcId,+ environmentVpc_vpcName,++ -- * ErrorResponse+ ErrorResponse (..),+ newErrorResponse,+ errorResponse_accountId,+ errorResponse_additionalDetails,+ errorResponse_code,+ errorResponse_message,+ errorResponse_resourceIdentifier,+ errorResponse_resourceType,++ -- * LambdaEndpointConfig+ LambdaEndpointConfig (..),+ newLambdaEndpointConfig,+ lambdaEndpointConfig_arn,++ -- * LambdaEndpointInput+ LambdaEndpointInput (..),+ newLambdaEndpointInput,+ lambdaEndpointInput_arn,++ -- * LambdaEndpointSummary+ LambdaEndpointSummary (..),+ newLambdaEndpointSummary,+ lambdaEndpointSummary_arn,++ -- * RouteSummary+ RouteSummary (..),+ newRouteSummary,+ routeSummary_applicationId,+ routeSummary_arn,+ routeSummary_createdByAccountId,+ routeSummary_createdTime,+ routeSummary_environmentId,+ routeSummary_error,+ routeSummary_includeChildPaths,+ routeSummary_lastUpdatedTime,+ routeSummary_methods,+ routeSummary_ownerAccountId,+ routeSummary_pathResourceToId,+ routeSummary_routeId,+ routeSummary_routeType,+ routeSummary_serviceId,+ routeSummary_sourcePath,+ routeSummary_state,+ routeSummary_tags,++ -- * ServiceSummary+ ServiceSummary (..),+ newServiceSummary,+ serviceSummary_applicationId,+ serviceSummary_arn,+ serviceSummary_createdByAccountId,+ serviceSummary_createdTime,+ serviceSummary_description,+ serviceSummary_endpointType,+ serviceSummary_environmentId,+ serviceSummary_error,+ serviceSummary_lambdaEndpoint,+ serviceSummary_lastUpdatedTime,+ serviceSummary_name,+ serviceSummary_ownerAccountId,+ serviceSummary_serviceId,+ serviceSummary_state,+ serviceSummary_tags,+ serviceSummary_urlEndpoint,+ serviceSummary_vpcId,++ -- * UriPathRouteInput+ UriPathRouteInput (..),+ newUriPathRouteInput,+ uriPathRouteInput_includeChildPaths,+ uriPathRouteInput_methods,+ uriPathRouteInput_activationState,+ uriPathRouteInput_sourcePath,++ -- * UrlEndpointConfig+ UrlEndpointConfig (..),+ newUrlEndpointConfig,+ urlEndpointConfig_healthUrl,+ urlEndpointConfig_url,++ -- * UrlEndpointInput+ UrlEndpointInput (..),+ newUrlEndpointInput,+ urlEndpointInput_healthUrl,+ urlEndpointInput_url,++ -- * UrlEndpointSummary+ UrlEndpointSummary (..),+ newUrlEndpointSummary,+ urlEndpointSummary_healthUrl,+ urlEndpointSummary_url,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayEndpointType+import Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxyConfig+import Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxyInput+import Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxySummary+import Amazonka.MigrationHubReFactorSpaces.Types.ApplicationState+import Amazonka.MigrationHubReFactorSpaces.Types.ApplicationSummary+import Amazonka.MigrationHubReFactorSpaces.Types.DefaultRouteInput+import Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentState+import Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentSummary+import Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentVpc+import Amazonka.MigrationHubReFactorSpaces.Types.ErrorCode+import Amazonka.MigrationHubReFactorSpaces.Types.ErrorResourceType+import Amazonka.MigrationHubReFactorSpaces.Types.ErrorResponse+import Amazonka.MigrationHubReFactorSpaces.Types.HttpMethod+import Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointConfig+import Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointInput+import Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointSummary+import Amazonka.MigrationHubReFactorSpaces.Types.NetworkFabricType+import Amazonka.MigrationHubReFactorSpaces.Types.ProxyType+import Amazonka.MigrationHubReFactorSpaces.Types.RouteActivationState+import Amazonka.MigrationHubReFactorSpaces.Types.RouteState+import Amazonka.MigrationHubReFactorSpaces.Types.RouteSummary+import Amazonka.MigrationHubReFactorSpaces.Types.RouteType+import Amazonka.MigrationHubReFactorSpaces.Types.ServiceEndpointType+import Amazonka.MigrationHubReFactorSpaces.Types.ServiceState+import Amazonka.MigrationHubReFactorSpaces.Types.ServiceSummary+import Amazonka.MigrationHubReFactorSpaces.Types.UriPathRouteInput+import Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointConfig+import Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointInput+import Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointSummary+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2021-10-26@ of the Amazon Migration Hub Refactor Spaces SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev =+ "MigrationHubReFactorSpaces",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "refactor-spaces",+ Core.signingName = "refactor-spaces",+ Core.version = "2021-10-26",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error =+ Core.parseJSONError "MigrationHubReFactorSpaces",+ Core.retry = retry+ }+ where+ retry =+ Core.Exponential+ { Core.base = 5.0e-2,+ Core.growth = 2,+ Core.attempts = 5,+ Core.check = check+ }+ check e+ | Lens.has (Core.hasStatus 502) e =+ Prelude.Just "bad_gateway"+ | Lens.has (Core.hasStatus 504) e =+ Prelude.Just "gateway_timeout"+ | Lens.has (Core.hasStatus 500) e =+ Prelude.Just "general_server_error"+ | Lens.has (Core.hasStatus 509) e =+ Prelude.Just "limit_exceeded"+ | Lens.has+ ( Core.hasCode "RequestThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "request_throttled_exception"+ | Lens.has (Core.hasStatus 503) e =+ Prelude.Just "service_unavailable"+ | Lens.has+ ( Core.hasCode "ThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttled_exception"+ | Lens.has+ ( Core.hasCode "Throttling"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling"+ | Lens.has+ ( Core.hasCode "ThrottlingException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling_exception"+ | Lens.has+ ( Core.hasCode+ "ProvisionedThroughputExceededException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throughput_exceeded"+ | Lens.has (Core.hasStatus 429) e =+ Prelude.Just "too_many_requests"+ | Prelude.otherwise = Prelude.Nothing++-- | The user does not have sufficient access to perform this action.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+ Core._MatchServiceError+ defaultService+ "AccessDeniedException"+ Prelude.. Core.hasStatus 403++-- | Updating or deleting a resource can cause an inconsistent state.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"+ Prelude.. Core.hasStatus 409++-- | An unexpected error occurred while processing the request.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++-- | The resource policy is not valid.+_InvalidResourcePolicyException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidResourcePolicyException =+ Core._MatchServiceError+ defaultService+ "InvalidResourcePolicyException"+ Prelude.. Core.hasStatus 400++-- | The request references a resource that does not exist.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++-- | The request would cause a service quota to be exceeded.+_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceQuotaExceededException =+ Core._MatchServiceError+ defaultService+ "ServiceQuotaExceededException"+ Prelude.. Core.hasStatus 402++-- | Request was denied because the request was throttled.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+ Core._MatchServiceError+ defaultService+ "ThrottlingException"+ Prelude.. Core.hasStatus 429++-- | The input does not satisfy the constraints specified by an Amazon Web+-- Service.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ApiGatewayEndpointType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayEndpointType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayEndpointType+ ( ApiGatewayEndpointType+ ( ..,+ ApiGatewayEndpointType_PRIVATE,+ ApiGatewayEndpointType_REGIONAL+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApiGatewayEndpointType = ApiGatewayEndpointType'+ { fromApiGatewayEndpointType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ApiGatewayEndpointType_PRIVATE :: ApiGatewayEndpointType+pattern ApiGatewayEndpointType_PRIVATE = ApiGatewayEndpointType' "PRIVATE"++pattern ApiGatewayEndpointType_REGIONAL :: ApiGatewayEndpointType+pattern ApiGatewayEndpointType_REGIONAL = ApiGatewayEndpointType' "REGIONAL"++{-# COMPLETE+ ApiGatewayEndpointType_PRIVATE,+ ApiGatewayEndpointType_REGIONAL,+ ApiGatewayEndpointType'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ApiGatewayProxyConfig.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxyConfig+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxyConfig where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayEndpointType+import qualified Amazonka.Prelude as Prelude++-- | A wrapper object holding the Amazon API Gateway proxy configuration.+--+-- /See:/ 'newApiGatewayProxyConfig' smart constructor.+data ApiGatewayProxyConfig = ApiGatewayProxyConfig'+ { -- | The resource ID of the API Gateway for the proxy.+ apiGatewayId :: Prelude.Maybe Prelude.Text,+ -- | The type of API Gateway endpoint created.+ endpointType :: Prelude.Maybe ApiGatewayEndpointType,+ -- | The Amazon Resource Name (ARN) of the Network Load Balancer configured+ -- by the API Gateway proxy.+ nlbArn :: Prelude.Maybe Prelude.Text,+ -- | The name of the Network Load Balancer that is configured by the API+ -- Gateway proxy.+ nlbName :: Prelude.Maybe Prelude.Text,+ -- | The endpoint URL of the API Gateway proxy.+ proxyUrl :: Prelude.Maybe Prelude.Text,+ -- | The name of the API Gateway stage. The name defaults to @prod@.+ stageName :: Prelude.Maybe Prelude.Text,+ -- | The @VpcLink@ ID of the API Gateway proxy.+ vpcLinkId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApiGatewayProxyConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'apiGatewayId', 'apiGatewayProxyConfig_apiGatewayId' - The resource ID of the API Gateway for the proxy.+--+-- 'endpointType', 'apiGatewayProxyConfig_endpointType' - The type of API Gateway endpoint created.+--+-- 'nlbArn', 'apiGatewayProxyConfig_nlbArn' - The Amazon Resource Name (ARN) of the Network Load Balancer configured+-- by the API Gateway proxy.+--+-- 'nlbName', 'apiGatewayProxyConfig_nlbName' - The name of the Network Load Balancer that is configured by the API+-- Gateway proxy.+--+-- 'proxyUrl', 'apiGatewayProxyConfig_proxyUrl' - The endpoint URL of the API Gateway proxy.+--+-- 'stageName', 'apiGatewayProxyConfig_stageName' - The name of the API Gateway stage. The name defaults to @prod@.+--+-- 'vpcLinkId', 'apiGatewayProxyConfig_vpcLinkId' - The @VpcLink@ ID of the API Gateway proxy.+newApiGatewayProxyConfig ::+ ApiGatewayProxyConfig+newApiGatewayProxyConfig =+ ApiGatewayProxyConfig'+ { apiGatewayId =+ Prelude.Nothing,+ endpointType = Prelude.Nothing,+ nlbArn = Prelude.Nothing,+ nlbName = Prelude.Nothing,+ proxyUrl = Prelude.Nothing,+ stageName = Prelude.Nothing,+ vpcLinkId = Prelude.Nothing+ }++-- | The resource ID of the API Gateway for the proxy.+apiGatewayProxyConfig_apiGatewayId :: Lens.Lens' ApiGatewayProxyConfig (Prelude.Maybe Prelude.Text)+apiGatewayProxyConfig_apiGatewayId = Lens.lens (\ApiGatewayProxyConfig' {apiGatewayId} -> apiGatewayId) (\s@ApiGatewayProxyConfig' {} a -> s {apiGatewayId = a} :: ApiGatewayProxyConfig)++-- | The type of API Gateway endpoint created.+apiGatewayProxyConfig_endpointType :: Lens.Lens' ApiGatewayProxyConfig (Prelude.Maybe ApiGatewayEndpointType)+apiGatewayProxyConfig_endpointType = Lens.lens (\ApiGatewayProxyConfig' {endpointType} -> endpointType) (\s@ApiGatewayProxyConfig' {} a -> s {endpointType = a} :: ApiGatewayProxyConfig)++-- | The Amazon Resource Name (ARN) of the Network Load Balancer configured+-- by the API Gateway proxy.+apiGatewayProxyConfig_nlbArn :: Lens.Lens' ApiGatewayProxyConfig (Prelude.Maybe Prelude.Text)+apiGatewayProxyConfig_nlbArn = Lens.lens (\ApiGatewayProxyConfig' {nlbArn} -> nlbArn) (\s@ApiGatewayProxyConfig' {} a -> s {nlbArn = a} :: ApiGatewayProxyConfig)++-- | The name of the Network Load Balancer that is configured by the API+-- Gateway proxy.+apiGatewayProxyConfig_nlbName :: Lens.Lens' ApiGatewayProxyConfig (Prelude.Maybe Prelude.Text)+apiGatewayProxyConfig_nlbName = Lens.lens (\ApiGatewayProxyConfig' {nlbName} -> nlbName) (\s@ApiGatewayProxyConfig' {} a -> s {nlbName = a} :: ApiGatewayProxyConfig)++-- | The endpoint URL of the API Gateway proxy.+apiGatewayProxyConfig_proxyUrl :: Lens.Lens' ApiGatewayProxyConfig (Prelude.Maybe Prelude.Text)+apiGatewayProxyConfig_proxyUrl = Lens.lens (\ApiGatewayProxyConfig' {proxyUrl} -> proxyUrl) (\s@ApiGatewayProxyConfig' {} a -> s {proxyUrl = a} :: ApiGatewayProxyConfig)++-- | The name of the API Gateway stage. The name defaults to @prod@.+apiGatewayProxyConfig_stageName :: Lens.Lens' ApiGatewayProxyConfig (Prelude.Maybe Prelude.Text)+apiGatewayProxyConfig_stageName = Lens.lens (\ApiGatewayProxyConfig' {stageName} -> stageName) (\s@ApiGatewayProxyConfig' {} a -> s {stageName = a} :: ApiGatewayProxyConfig)++-- | The @VpcLink@ ID of the API Gateway proxy.+apiGatewayProxyConfig_vpcLinkId :: Lens.Lens' ApiGatewayProxyConfig (Prelude.Maybe Prelude.Text)+apiGatewayProxyConfig_vpcLinkId = Lens.lens (\ApiGatewayProxyConfig' {vpcLinkId} -> vpcLinkId) (\s@ApiGatewayProxyConfig' {} a -> s {vpcLinkId = a} :: ApiGatewayProxyConfig)++instance Data.FromJSON ApiGatewayProxyConfig where+ parseJSON =+ Data.withObject+ "ApiGatewayProxyConfig"+ ( \x ->+ ApiGatewayProxyConfig'+ Prelude.<$> (x Data..:? "ApiGatewayId")+ Prelude.<*> (x Data..:? "EndpointType")+ Prelude.<*> (x Data..:? "NlbArn")+ Prelude.<*> (x Data..:? "NlbName")+ Prelude.<*> (x Data..:? "ProxyUrl")+ Prelude.<*> (x Data..:? "StageName")+ Prelude.<*> (x Data..:? "VpcLinkId")+ )++instance Prelude.Hashable ApiGatewayProxyConfig where+ hashWithSalt _salt ApiGatewayProxyConfig' {..} =+ _salt+ `Prelude.hashWithSalt` apiGatewayId+ `Prelude.hashWithSalt` endpointType+ `Prelude.hashWithSalt` nlbArn+ `Prelude.hashWithSalt` nlbName+ `Prelude.hashWithSalt` proxyUrl+ `Prelude.hashWithSalt` stageName+ `Prelude.hashWithSalt` vpcLinkId++instance Prelude.NFData ApiGatewayProxyConfig where+ rnf ApiGatewayProxyConfig' {..} =+ Prelude.rnf apiGatewayId+ `Prelude.seq` Prelude.rnf endpointType+ `Prelude.seq` Prelude.rnf nlbArn+ `Prelude.seq` Prelude.rnf nlbName+ `Prelude.seq` Prelude.rnf proxyUrl+ `Prelude.seq` Prelude.rnf stageName+ `Prelude.seq` Prelude.rnf vpcLinkId
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ApiGatewayProxyInput.hs view
@@ -0,0 +1,116 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxyInput+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxyInput where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayEndpointType+import qualified Amazonka.Prelude as Prelude++-- | A wrapper object holding the Amazon API Gateway endpoint input.+--+-- /See:/ 'newApiGatewayProxyInput' smart constructor.+data ApiGatewayProxyInput = ApiGatewayProxyInput'+ { -- | The type of endpoint to use for the API Gateway proxy. If no value is+ -- specified in the request, the value is set to @REGIONAL@ by default.+ --+ -- If the value is set to @PRIVATE@ in the request, this creates a private+ -- API endpoint that is isolated from the public internet. The private+ -- endpoint can only be accessed by using Amazon Virtual Private Cloud+ -- (Amazon VPC) endpoints for Amazon API Gateway that have been granted+ -- access.+ endpointType :: Prelude.Maybe ApiGatewayEndpointType,+ -- | The name of the API Gateway stage. The name defaults to @prod@.+ stageName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApiGatewayProxyInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'endpointType', 'apiGatewayProxyInput_endpointType' - The type of endpoint to use for the API Gateway proxy. If no value is+-- specified in the request, the value is set to @REGIONAL@ by default.+--+-- If the value is set to @PRIVATE@ in the request, this creates a private+-- API endpoint that is isolated from the public internet. The private+-- endpoint can only be accessed by using Amazon Virtual Private Cloud+-- (Amazon VPC) endpoints for Amazon API Gateway that have been granted+-- access.+--+-- 'stageName', 'apiGatewayProxyInput_stageName' - The name of the API Gateway stage. The name defaults to @prod@.+newApiGatewayProxyInput ::+ ApiGatewayProxyInput+newApiGatewayProxyInput =+ ApiGatewayProxyInput'+ { endpointType =+ Prelude.Nothing,+ stageName = Prelude.Nothing+ }++-- | The type of endpoint to use for the API Gateway proxy. If no value is+-- specified in the request, the value is set to @REGIONAL@ by default.+--+-- If the value is set to @PRIVATE@ in the request, this creates a private+-- API endpoint that is isolated from the public internet. The private+-- endpoint can only be accessed by using Amazon Virtual Private Cloud+-- (Amazon VPC) endpoints for Amazon API Gateway that have been granted+-- access.+apiGatewayProxyInput_endpointType :: Lens.Lens' ApiGatewayProxyInput (Prelude.Maybe ApiGatewayEndpointType)+apiGatewayProxyInput_endpointType = Lens.lens (\ApiGatewayProxyInput' {endpointType} -> endpointType) (\s@ApiGatewayProxyInput' {} a -> s {endpointType = a} :: ApiGatewayProxyInput)++-- | The name of the API Gateway stage. The name defaults to @prod@.+apiGatewayProxyInput_stageName :: Lens.Lens' ApiGatewayProxyInput (Prelude.Maybe Prelude.Text)+apiGatewayProxyInput_stageName = Lens.lens (\ApiGatewayProxyInput' {stageName} -> stageName) (\s@ApiGatewayProxyInput' {} a -> s {stageName = a} :: ApiGatewayProxyInput)++instance Data.FromJSON ApiGatewayProxyInput where+ parseJSON =+ Data.withObject+ "ApiGatewayProxyInput"+ ( \x ->+ ApiGatewayProxyInput'+ Prelude.<$> (x Data..:? "EndpointType")+ Prelude.<*> (x Data..:? "StageName")+ )++instance Prelude.Hashable ApiGatewayProxyInput where+ hashWithSalt _salt ApiGatewayProxyInput' {..} =+ _salt+ `Prelude.hashWithSalt` endpointType+ `Prelude.hashWithSalt` stageName++instance Prelude.NFData ApiGatewayProxyInput where+ rnf ApiGatewayProxyInput' {..} =+ Prelude.rnf endpointType+ `Prelude.seq` Prelude.rnf stageName++instance Data.ToJSON ApiGatewayProxyInput where+ toJSON ApiGatewayProxyInput' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("EndpointType" Data..=) Prelude.<$> endpointType,+ ("StageName" Data..=) Prelude.<$> stageName+ ]+ )
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ApiGatewayProxySummary.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxySummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxySummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayEndpointType+import qualified Amazonka.Prelude as Prelude++-- | A wrapper object holding the Amazon API Gateway proxy summary.+--+-- /See:/ 'newApiGatewayProxySummary' smart constructor.+data ApiGatewayProxySummary = ApiGatewayProxySummary'+ { -- | The resource ID of the API Gateway for the proxy.+ apiGatewayId :: Prelude.Maybe Prelude.Text,+ -- | The type of API Gateway endpoint created.+ endpointType :: Prelude.Maybe ApiGatewayEndpointType,+ -- | The Amazon Resource Name (ARN) of the Network Load Balancer configured+ -- by the API Gateway proxy.+ nlbArn :: Prelude.Maybe Prelude.Text,+ -- | The name of the Network Load Balancer that is configured by the API+ -- Gateway proxy.+ nlbName :: Prelude.Maybe Prelude.Text,+ -- | The endpoint URL of the API Gateway proxy.+ proxyUrl :: Prelude.Maybe Prelude.Text,+ -- | The name of the API Gateway stage. The name defaults to @prod@.+ stageName :: Prelude.Maybe Prelude.Text,+ -- | The @VpcLink@ ID of the API Gateway proxy.+ vpcLinkId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApiGatewayProxySummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'apiGatewayId', 'apiGatewayProxySummary_apiGatewayId' - The resource ID of the API Gateway for the proxy.+--+-- 'endpointType', 'apiGatewayProxySummary_endpointType' - The type of API Gateway endpoint created.+--+-- 'nlbArn', 'apiGatewayProxySummary_nlbArn' - The Amazon Resource Name (ARN) of the Network Load Balancer configured+-- by the API Gateway proxy.+--+-- 'nlbName', 'apiGatewayProxySummary_nlbName' - The name of the Network Load Balancer that is configured by the API+-- Gateway proxy.+--+-- 'proxyUrl', 'apiGatewayProxySummary_proxyUrl' - The endpoint URL of the API Gateway proxy.+--+-- 'stageName', 'apiGatewayProxySummary_stageName' - The name of the API Gateway stage. The name defaults to @prod@.+--+-- 'vpcLinkId', 'apiGatewayProxySummary_vpcLinkId' - The @VpcLink@ ID of the API Gateway proxy.+newApiGatewayProxySummary ::+ ApiGatewayProxySummary+newApiGatewayProxySummary =+ ApiGatewayProxySummary'+ { apiGatewayId =+ Prelude.Nothing,+ endpointType = Prelude.Nothing,+ nlbArn = Prelude.Nothing,+ nlbName = Prelude.Nothing,+ proxyUrl = Prelude.Nothing,+ stageName = Prelude.Nothing,+ vpcLinkId = Prelude.Nothing+ }++-- | The resource ID of the API Gateway for the proxy.+apiGatewayProxySummary_apiGatewayId :: Lens.Lens' ApiGatewayProxySummary (Prelude.Maybe Prelude.Text)+apiGatewayProxySummary_apiGatewayId = Lens.lens (\ApiGatewayProxySummary' {apiGatewayId} -> apiGatewayId) (\s@ApiGatewayProxySummary' {} a -> s {apiGatewayId = a} :: ApiGatewayProxySummary)++-- | The type of API Gateway endpoint created.+apiGatewayProxySummary_endpointType :: Lens.Lens' ApiGatewayProxySummary (Prelude.Maybe ApiGatewayEndpointType)+apiGatewayProxySummary_endpointType = Lens.lens (\ApiGatewayProxySummary' {endpointType} -> endpointType) (\s@ApiGatewayProxySummary' {} a -> s {endpointType = a} :: ApiGatewayProxySummary)++-- | The Amazon Resource Name (ARN) of the Network Load Balancer configured+-- by the API Gateway proxy.+apiGatewayProxySummary_nlbArn :: Lens.Lens' ApiGatewayProxySummary (Prelude.Maybe Prelude.Text)+apiGatewayProxySummary_nlbArn = Lens.lens (\ApiGatewayProxySummary' {nlbArn} -> nlbArn) (\s@ApiGatewayProxySummary' {} a -> s {nlbArn = a} :: ApiGatewayProxySummary)++-- | The name of the Network Load Balancer that is configured by the API+-- Gateway proxy.+apiGatewayProxySummary_nlbName :: Lens.Lens' ApiGatewayProxySummary (Prelude.Maybe Prelude.Text)+apiGatewayProxySummary_nlbName = Lens.lens (\ApiGatewayProxySummary' {nlbName} -> nlbName) (\s@ApiGatewayProxySummary' {} a -> s {nlbName = a} :: ApiGatewayProxySummary)++-- | The endpoint URL of the API Gateway proxy.+apiGatewayProxySummary_proxyUrl :: Lens.Lens' ApiGatewayProxySummary (Prelude.Maybe Prelude.Text)+apiGatewayProxySummary_proxyUrl = Lens.lens (\ApiGatewayProxySummary' {proxyUrl} -> proxyUrl) (\s@ApiGatewayProxySummary' {} a -> s {proxyUrl = a} :: ApiGatewayProxySummary)++-- | The name of the API Gateway stage. The name defaults to @prod@.+apiGatewayProxySummary_stageName :: Lens.Lens' ApiGatewayProxySummary (Prelude.Maybe Prelude.Text)+apiGatewayProxySummary_stageName = Lens.lens (\ApiGatewayProxySummary' {stageName} -> stageName) (\s@ApiGatewayProxySummary' {} a -> s {stageName = a} :: ApiGatewayProxySummary)++-- | The @VpcLink@ ID of the API Gateway proxy.+apiGatewayProxySummary_vpcLinkId :: Lens.Lens' ApiGatewayProxySummary (Prelude.Maybe Prelude.Text)+apiGatewayProxySummary_vpcLinkId = Lens.lens (\ApiGatewayProxySummary' {vpcLinkId} -> vpcLinkId) (\s@ApiGatewayProxySummary' {} a -> s {vpcLinkId = a} :: ApiGatewayProxySummary)++instance Data.FromJSON ApiGatewayProxySummary where+ parseJSON =+ Data.withObject+ "ApiGatewayProxySummary"+ ( \x ->+ ApiGatewayProxySummary'+ Prelude.<$> (x Data..:? "ApiGatewayId")+ Prelude.<*> (x Data..:? "EndpointType")+ Prelude.<*> (x Data..:? "NlbArn")+ Prelude.<*> (x Data..:? "NlbName")+ Prelude.<*> (x Data..:? "ProxyUrl")+ Prelude.<*> (x Data..:? "StageName")+ Prelude.<*> (x Data..:? "VpcLinkId")+ )++instance Prelude.Hashable ApiGatewayProxySummary where+ hashWithSalt _salt ApiGatewayProxySummary' {..} =+ _salt+ `Prelude.hashWithSalt` apiGatewayId+ `Prelude.hashWithSalt` endpointType+ `Prelude.hashWithSalt` nlbArn+ `Prelude.hashWithSalt` nlbName+ `Prelude.hashWithSalt` proxyUrl+ `Prelude.hashWithSalt` stageName+ `Prelude.hashWithSalt` vpcLinkId++instance Prelude.NFData ApiGatewayProxySummary where+ rnf ApiGatewayProxySummary' {..} =+ Prelude.rnf apiGatewayId+ `Prelude.seq` Prelude.rnf endpointType+ `Prelude.seq` Prelude.rnf nlbArn+ `Prelude.seq` Prelude.rnf nlbName+ `Prelude.seq` Prelude.rnf proxyUrl+ `Prelude.seq` Prelude.rnf stageName+ `Prelude.seq` Prelude.rnf vpcLinkId
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ApplicationState.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ApplicationState+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ApplicationState+ ( ApplicationState+ ( ..,+ ApplicationState_ACTIVE,+ ApplicationState_CREATING,+ ApplicationState_DELETING,+ ApplicationState_FAILED,+ ApplicationState_UPDATING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApplicationState = ApplicationState'+ { fromApplicationState ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ApplicationState_ACTIVE :: ApplicationState+pattern ApplicationState_ACTIVE = ApplicationState' "ACTIVE"++pattern ApplicationState_CREATING :: ApplicationState+pattern ApplicationState_CREATING = ApplicationState' "CREATING"++pattern ApplicationState_DELETING :: ApplicationState+pattern ApplicationState_DELETING = ApplicationState' "DELETING"++pattern ApplicationState_FAILED :: ApplicationState+pattern ApplicationState_FAILED = ApplicationState' "FAILED"++pattern ApplicationState_UPDATING :: ApplicationState+pattern ApplicationState_UPDATING = ApplicationState' "UPDATING"++{-# COMPLETE+ ApplicationState_ACTIVE,+ ApplicationState_CREATING,+ ApplicationState_DELETING,+ ApplicationState_FAILED,+ ApplicationState_UPDATING,+ ApplicationState'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ApplicationSummary.hs view
@@ -0,0 +1,236 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ApplicationSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ApplicationSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types.ApiGatewayProxySummary+import Amazonka.MigrationHubReFactorSpaces.Types.ApplicationState+import Amazonka.MigrationHubReFactorSpaces.Types.ErrorResponse+import Amazonka.MigrationHubReFactorSpaces.Types.ProxyType+import qualified Amazonka.Prelude as Prelude++-- | The list of @ApplicationSummary@ objects.+--+-- /See:/ 'newApplicationSummary' smart constructor.+data ApplicationSummary = ApplicationSummary'+ { -- | The endpoint URL of the Amazon API Gateway proxy.+ apiGatewayProxy :: Prelude.Maybe ApiGatewayProxySummary,+ -- | The unique identifier of the application.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the application.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the application creator.+ createdByAccountId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the application is created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | The unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | Any error associated with the application resource.+ error :: Prelude.Maybe ErrorResponse,+ -- | A timestamp that indicates when the application was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The name of the application.+ name :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the application owner (which is+ -- always the same as the environment owner account ID).+ ownerAccountId :: Prelude.Maybe Prelude.Text,+ -- | The proxy type of the proxy created within the application.+ proxyType :: Prelude.Maybe ProxyType,+ -- | The current state of the application.+ state :: Prelude.Maybe ApplicationState,+ -- | The tags assigned to the application.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The ID of the virtual private cloud (VPC).+ vpcId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'apiGatewayProxy', 'applicationSummary_apiGatewayProxy' - The endpoint URL of the Amazon API Gateway proxy.+--+-- 'applicationId', 'applicationSummary_applicationId' - The unique identifier of the application.+--+-- 'arn', 'applicationSummary_arn' - The Amazon Resource Name (ARN) of the application.+--+-- 'createdByAccountId', 'applicationSummary_createdByAccountId' - The Amazon Web Services account ID of the application creator.+--+-- 'createdTime', 'applicationSummary_createdTime' - A timestamp that indicates when the application is created.+--+-- 'environmentId', 'applicationSummary_environmentId' - The unique identifier of the environment.+--+-- 'error', 'applicationSummary_error' - Any error associated with the application resource.+--+-- 'lastUpdatedTime', 'applicationSummary_lastUpdatedTime' - A timestamp that indicates when the application was last updated.+--+-- 'name', 'applicationSummary_name' - The name of the application.+--+-- 'ownerAccountId', 'applicationSummary_ownerAccountId' - The Amazon Web Services account ID of the application owner (which is+-- always the same as the environment owner account ID).+--+-- 'proxyType', 'applicationSummary_proxyType' - The proxy type of the proxy created within the application.+--+-- 'state', 'applicationSummary_state' - The current state of the application.+--+-- 'tags', 'applicationSummary_tags' - The tags assigned to the application.+--+-- 'vpcId', 'applicationSummary_vpcId' - The ID of the virtual private cloud (VPC).+newApplicationSummary ::+ ApplicationSummary+newApplicationSummary =+ ApplicationSummary'+ { apiGatewayProxy =+ Prelude.Nothing,+ applicationId = Prelude.Nothing,+ arn = Prelude.Nothing,+ createdByAccountId = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ error = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ name = Prelude.Nothing,+ ownerAccountId = Prelude.Nothing,+ proxyType = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing,+ vpcId = Prelude.Nothing+ }++-- | The endpoint URL of the Amazon API Gateway proxy.+applicationSummary_apiGatewayProxy :: Lens.Lens' ApplicationSummary (Prelude.Maybe ApiGatewayProxySummary)+applicationSummary_apiGatewayProxy = Lens.lens (\ApplicationSummary' {apiGatewayProxy} -> apiGatewayProxy) (\s@ApplicationSummary' {} a -> s {apiGatewayProxy = a} :: ApplicationSummary)++-- | The unique identifier of the application.+applicationSummary_applicationId :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.Text)+applicationSummary_applicationId = Lens.lens (\ApplicationSummary' {applicationId} -> applicationId) (\s@ApplicationSummary' {} a -> s {applicationId = a} :: ApplicationSummary)++-- | The Amazon Resource Name (ARN) of the application.+applicationSummary_arn :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.Text)+applicationSummary_arn = Lens.lens (\ApplicationSummary' {arn} -> arn) (\s@ApplicationSummary' {} a -> s {arn = a} :: ApplicationSummary)++-- | The Amazon Web Services account ID of the application creator.+applicationSummary_createdByAccountId :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.Text)+applicationSummary_createdByAccountId = Lens.lens (\ApplicationSummary' {createdByAccountId} -> createdByAccountId) (\s@ApplicationSummary' {} a -> s {createdByAccountId = a} :: ApplicationSummary)++-- | A timestamp that indicates when the application is created.+applicationSummary_createdTime :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.UTCTime)+applicationSummary_createdTime = Lens.lens (\ApplicationSummary' {createdTime} -> createdTime) (\s@ApplicationSummary' {} a -> s {createdTime = a} :: ApplicationSummary) Prelude.. Lens.mapping Data._Time++-- | The unique identifier of the environment.+applicationSummary_environmentId :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.Text)+applicationSummary_environmentId = Lens.lens (\ApplicationSummary' {environmentId} -> environmentId) (\s@ApplicationSummary' {} a -> s {environmentId = a} :: ApplicationSummary)++-- | Any error associated with the application resource.+applicationSummary_error :: Lens.Lens' ApplicationSummary (Prelude.Maybe ErrorResponse)+applicationSummary_error = Lens.lens (\ApplicationSummary' {error} -> error) (\s@ApplicationSummary' {} a -> s {error = a} :: ApplicationSummary)++-- | A timestamp that indicates when the application was last updated.+applicationSummary_lastUpdatedTime :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.UTCTime)+applicationSummary_lastUpdatedTime = Lens.lens (\ApplicationSummary' {lastUpdatedTime} -> lastUpdatedTime) (\s@ApplicationSummary' {} a -> s {lastUpdatedTime = a} :: ApplicationSummary) Prelude.. Lens.mapping Data._Time++-- | The name of the application.+applicationSummary_name :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.Text)+applicationSummary_name = Lens.lens (\ApplicationSummary' {name} -> name) (\s@ApplicationSummary' {} a -> s {name = a} :: ApplicationSummary)++-- | The Amazon Web Services account ID of the application owner (which is+-- always the same as the environment owner account ID).+applicationSummary_ownerAccountId :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.Text)+applicationSummary_ownerAccountId = Lens.lens (\ApplicationSummary' {ownerAccountId} -> ownerAccountId) (\s@ApplicationSummary' {} a -> s {ownerAccountId = a} :: ApplicationSummary)++-- | The proxy type of the proxy created within the application.+applicationSummary_proxyType :: Lens.Lens' ApplicationSummary (Prelude.Maybe ProxyType)+applicationSummary_proxyType = Lens.lens (\ApplicationSummary' {proxyType} -> proxyType) (\s@ApplicationSummary' {} a -> s {proxyType = a} :: ApplicationSummary)++-- | The current state of the application.+applicationSummary_state :: Lens.Lens' ApplicationSummary (Prelude.Maybe ApplicationState)+applicationSummary_state = Lens.lens (\ApplicationSummary' {state} -> state) (\s@ApplicationSummary' {} a -> s {state = a} :: ApplicationSummary)++-- | The tags assigned to the application.+applicationSummary_tags :: Lens.Lens' ApplicationSummary (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+applicationSummary_tags = Lens.lens (\ApplicationSummary' {tags} -> tags) (\s@ApplicationSummary' {} a -> s {tags = a} :: ApplicationSummary) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The ID of the virtual private cloud (VPC).+applicationSummary_vpcId :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.Text)+applicationSummary_vpcId = Lens.lens (\ApplicationSummary' {vpcId} -> vpcId) (\s@ApplicationSummary' {} a -> s {vpcId = a} :: ApplicationSummary)++instance Data.FromJSON ApplicationSummary where+ parseJSON =+ Data.withObject+ "ApplicationSummary"+ ( \x ->+ ApplicationSummary'+ Prelude.<$> (x Data..:? "ApiGatewayProxy")+ Prelude.<*> (x Data..:? "ApplicationId")+ Prelude.<*> (x Data..:? "Arn")+ Prelude.<*> (x Data..:? "CreatedByAccountId")+ Prelude.<*> (x Data..:? "CreatedTime")+ Prelude.<*> (x Data..:? "EnvironmentId")+ Prelude.<*> (x Data..:? "Error")+ Prelude.<*> (x Data..:? "LastUpdatedTime")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "OwnerAccountId")+ Prelude.<*> (x Data..:? "ProxyType")+ Prelude.<*> (x Data..:? "State")+ Prelude.<*> (x Data..:? "Tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "VpcId")+ )++instance Prelude.Hashable ApplicationSummary where+ hashWithSalt _salt ApplicationSummary' {..} =+ _salt+ `Prelude.hashWithSalt` apiGatewayProxy+ `Prelude.hashWithSalt` applicationId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdByAccountId+ `Prelude.hashWithSalt` createdTime+ `Prelude.hashWithSalt` environmentId+ `Prelude.hashWithSalt` error+ `Prelude.hashWithSalt` lastUpdatedTime+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` ownerAccountId+ `Prelude.hashWithSalt` proxyType+ `Prelude.hashWithSalt` state+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` vpcId++instance Prelude.NFData ApplicationSummary where+ rnf ApplicationSummary' {..} =+ Prelude.rnf apiGatewayProxy+ `Prelude.seq` Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdByAccountId+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf error+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf ownerAccountId+ `Prelude.seq` Prelude.rnf proxyType+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf vpcId
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/DefaultRouteInput.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.DefaultRouteInput+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.DefaultRouteInput where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types.RouteActivationState+import qualified Amazonka.Prelude as Prelude++-- | The configuration for the default route type.+--+-- /See:/ 'newDefaultRouteInput' smart constructor.+data DefaultRouteInput = DefaultRouteInput'+ { -- | If set to @ACTIVE@, traffic is forwarded to this route’s service after+ -- the route is created.+ activationState :: Prelude.Maybe RouteActivationState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DefaultRouteInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'activationState', 'defaultRouteInput_activationState' - If set to @ACTIVE@, traffic is forwarded to this route’s service after+-- the route is created.+newDefaultRouteInput ::+ DefaultRouteInput+newDefaultRouteInput =+ DefaultRouteInput'+ { activationState =+ Prelude.Nothing+ }++-- | If set to @ACTIVE@, traffic is forwarded to this route’s service after+-- the route is created.+defaultRouteInput_activationState :: Lens.Lens' DefaultRouteInput (Prelude.Maybe RouteActivationState)+defaultRouteInput_activationState = Lens.lens (\DefaultRouteInput' {activationState} -> activationState) (\s@DefaultRouteInput' {} a -> s {activationState = a} :: DefaultRouteInput)++instance Prelude.Hashable DefaultRouteInput where+ hashWithSalt _salt DefaultRouteInput' {..} =+ _salt `Prelude.hashWithSalt` activationState++instance Prelude.NFData DefaultRouteInput where+ rnf DefaultRouteInput' {..} =+ Prelude.rnf activationState++instance Data.ToJSON DefaultRouteInput where+ toJSON DefaultRouteInput' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ActivationState" Data..=)+ Prelude.<$> activationState+ ]+ )
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/EnvironmentState.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentState+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentState+ ( EnvironmentState+ ( ..,+ EnvironmentState_ACTIVE,+ EnvironmentState_CREATING,+ EnvironmentState_DELETING,+ EnvironmentState_FAILED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype EnvironmentState = EnvironmentState'+ { fromEnvironmentState ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern EnvironmentState_ACTIVE :: EnvironmentState+pattern EnvironmentState_ACTIVE = EnvironmentState' "ACTIVE"++pattern EnvironmentState_CREATING :: EnvironmentState+pattern EnvironmentState_CREATING = EnvironmentState' "CREATING"++pattern EnvironmentState_DELETING :: EnvironmentState+pattern EnvironmentState_DELETING = EnvironmentState' "DELETING"++pattern EnvironmentState_FAILED :: EnvironmentState+pattern EnvironmentState_FAILED = EnvironmentState' "FAILED"++{-# COMPLETE+ EnvironmentState_ACTIVE,+ EnvironmentState_CREATING,+ EnvironmentState_DELETING,+ EnvironmentState_FAILED,+ EnvironmentState'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/EnvironmentSummary.hs view
@@ -0,0 +1,208 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentState+import Amazonka.MigrationHubReFactorSpaces.Types.ErrorResponse+import Amazonka.MigrationHubReFactorSpaces.Types.NetworkFabricType+import qualified Amazonka.Prelude as Prelude++-- | The summary information for environments as a response to+-- @ListEnvironments@.+--+-- /See:/ 'newEnvironmentSummary' smart constructor.+data EnvironmentSummary = EnvironmentSummary'+ { -- | The Amazon Resource Name (ARN) of the environment.+ arn :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the environment is created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | A description of the environment.+ description :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | Any error associated with the environment resource.+ error :: Prelude.Maybe ErrorResponse,+ -- | A timestamp that indicates when the environment was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The name of the environment.+ name :: Prelude.Maybe Prelude.Text,+ -- | The network fabric type of the environment.+ networkFabricType :: Prelude.Maybe NetworkFabricType,+ -- | The Amazon Web Services account ID of the environment owner.+ ownerAccountId :: Prelude.Maybe Prelude.Text,+ -- | The current state of the environment.+ state :: Prelude.Maybe EnvironmentState,+ -- | The tags assigned to the environment.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The ID of the transit gateway set up by the environment.+ transitGatewayId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EnvironmentSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'environmentSummary_arn' - The Amazon Resource Name (ARN) of the environment.+--+-- 'createdTime', 'environmentSummary_createdTime' - A timestamp that indicates when the environment is created.+--+-- 'description', 'environmentSummary_description' - A description of the environment.+--+-- 'environmentId', 'environmentSummary_environmentId' - The unique identifier of the environment.+--+-- 'error', 'environmentSummary_error' - Any error associated with the environment resource.+--+-- 'lastUpdatedTime', 'environmentSummary_lastUpdatedTime' - A timestamp that indicates when the environment was last updated.+--+-- 'name', 'environmentSummary_name' - The name of the environment.+--+-- 'networkFabricType', 'environmentSummary_networkFabricType' - The network fabric type of the environment.+--+-- 'ownerAccountId', 'environmentSummary_ownerAccountId' - The Amazon Web Services account ID of the environment owner.+--+-- 'state', 'environmentSummary_state' - The current state of the environment.+--+-- 'tags', 'environmentSummary_tags' - The tags assigned to the environment.+--+-- 'transitGatewayId', 'environmentSummary_transitGatewayId' - The ID of the transit gateway set up by the environment.+newEnvironmentSummary ::+ EnvironmentSummary+newEnvironmentSummary =+ EnvironmentSummary'+ { arn = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ description = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ error = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ name = Prelude.Nothing,+ networkFabricType = Prelude.Nothing,+ ownerAccountId = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing,+ transitGatewayId = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the environment.+environmentSummary_arn :: Lens.Lens' EnvironmentSummary (Prelude.Maybe Prelude.Text)+environmentSummary_arn = Lens.lens (\EnvironmentSummary' {arn} -> arn) (\s@EnvironmentSummary' {} a -> s {arn = a} :: EnvironmentSummary)++-- | A timestamp that indicates when the environment is created.+environmentSummary_createdTime :: Lens.Lens' EnvironmentSummary (Prelude.Maybe Prelude.UTCTime)+environmentSummary_createdTime = Lens.lens (\EnvironmentSummary' {createdTime} -> createdTime) (\s@EnvironmentSummary' {} a -> s {createdTime = a} :: EnvironmentSummary) Prelude.. Lens.mapping Data._Time++-- | A description of the environment.+environmentSummary_description :: Lens.Lens' EnvironmentSummary (Prelude.Maybe Prelude.Text)+environmentSummary_description = Lens.lens (\EnvironmentSummary' {description} -> description) (\s@EnvironmentSummary' {} a -> s {description = a} :: EnvironmentSummary)++-- | The unique identifier of the environment.+environmentSummary_environmentId :: Lens.Lens' EnvironmentSummary (Prelude.Maybe Prelude.Text)+environmentSummary_environmentId = Lens.lens (\EnvironmentSummary' {environmentId} -> environmentId) (\s@EnvironmentSummary' {} a -> s {environmentId = a} :: EnvironmentSummary)++-- | Any error associated with the environment resource.+environmentSummary_error :: Lens.Lens' EnvironmentSummary (Prelude.Maybe ErrorResponse)+environmentSummary_error = Lens.lens (\EnvironmentSummary' {error} -> error) (\s@EnvironmentSummary' {} a -> s {error = a} :: EnvironmentSummary)++-- | A timestamp that indicates when the environment was last updated.+environmentSummary_lastUpdatedTime :: Lens.Lens' EnvironmentSummary (Prelude.Maybe Prelude.UTCTime)+environmentSummary_lastUpdatedTime = Lens.lens (\EnvironmentSummary' {lastUpdatedTime} -> lastUpdatedTime) (\s@EnvironmentSummary' {} a -> s {lastUpdatedTime = a} :: EnvironmentSummary) Prelude.. Lens.mapping Data._Time++-- | The name of the environment.+environmentSummary_name :: Lens.Lens' EnvironmentSummary (Prelude.Maybe Prelude.Text)+environmentSummary_name = Lens.lens (\EnvironmentSummary' {name} -> name) (\s@EnvironmentSummary' {} a -> s {name = a} :: EnvironmentSummary)++-- | The network fabric type of the environment.+environmentSummary_networkFabricType :: Lens.Lens' EnvironmentSummary (Prelude.Maybe NetworkFabricType)+environmentSummary_networkFabricType = Lens.lens (\EnvironmentSummary' {networkFabricType} -> networkFabricType) (\s@EnvironmentSummary' {} a -> s {networkFabricType = a} :: EnvironmentSummary)++-- | The Amazon Web Services account ID of the environment owner.+environmentSummary_ownerAccountId :: Lens.Lens' EnvironmentSummary (Prelude.Maybe Prelude.Text)+environmentSummary_ownerAccountId = Lens.lens (\EnvironmentSummary' {ownerAccountId} -> ownerAccountId) (\s@EnvironmentSummary' {} a -> s {ownerAccountId = a} :: EnvironmentSummary)++-- | The current state of the environment.+environmentSummary_state :: Lens.Lens' EnvironmentSummary (Prelude.Maybe EnvironmentState)+environmentSummary_state = Lens.lens (\EnvironmentSummary' {state} -> state) (\s@EnvironmentSummary' {} a -> s {state = a} :: EnvironmentSummary)++-- | The tags assigned to the environment.+environmentSummary_tags :: Lens.Lens' EnvironmentSummary (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+environmentSummary_tags = Lens.lens (\EnvironmentSummary' {tags} -> tags) (\s@EnvironmentSummary' {} a -> s {tags = a} :: EnvironmentSummary) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The ID of the transit gateway set up by the environment.+environmentSummary_transitGatewayId :: Lens.Lens' EnvironmentSummary (Prelude.Maybe Prelude.Text)+environmentSummary_transitGatewayId = Lens.lens (\EnvironmentSummary' {transitGatewayId} -> transitGatewayId) (\s@EnvironmentSummary' {} a -> s {transitGatewayId = a} :: EnvironmentSummary)++instance Data.FromJSON EnvironmentSummary where+ parseJSON =+ Data.withObject+ "EnvironmentSummary"+ ( \x ->+ EnvironmentSummary'+ Prelude.<$> (x Data..:? "Arn")+ Prelude.<*> (x Data..:? "CreatedTime")+ Prelude.<*> (x Data..:? "Description")+ Prelude.<*> (x Data..:? "EnvironmentId")+ Prelude.<*> (x Data..:? "Error")+ Prelude.<*> (x Data..:? "LastUpdatedTime")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "NetworkFabricType")+ Prelude.<*> (x Data..:? "OwnerAccountId")+ Prelude.<*> (x Data..:? "State")+ Prelude.<*> (x Data..:? "Tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "TransitGatewayId")+ )++instance Prelude.Hashable EnvironmentSummary where+ hashWithSalt _salt EnvironmentSummary' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdTime+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` environmentId+ `Prelude.hashWithSalt` error+ `Prelude.hashWithSalt` lastUpdatedTime+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` networkFabricType+ `Prelude.hashWithSalt` ownerAccountId+ `Prelude.hashWithSalt` state+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` transitGatewayId++instance Prelude.NFData EnvironmentSummary where+ rnf EnvironmentSummary' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf error+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf networkFabricType+ `Prelude.seq` Prelude.rnf ownerAccountId+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf transitGatewayId
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/EnvironmentVpc.hs view
@@ -0,0 +1,154 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentVpc+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.EnvironmentVpc 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++-- | Provides summary information for the @EnvironmentVpc@ resource as a+-- response to @ListEnvironmentVpc@.+--+-- /See:/ 'newEnvironmentVpc' smart constructor.+data EnvironmentVpc = EnvironmentVpc'+ { -- | The Amazon Web Services account ID of the virtual private cloud (VPC)+ -- owner.+ accountId :: Prelude.Maybe Prelude.Text,+ -- | The list of Amazon Virtual Private Cloud (Amazon VPC) CIDR blocks.+ cidrBlocks :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | A timestamp that indicates when the VPC is first added to the+ -- environment.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | The unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the VPC was last updated by the+ -- environment.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The ID of the VPC.+ vpcId :: Prelude.Maybe Prelude.Text,+ -- | The name of the VPC at the time it is added to the environment.+ vpcName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EnvironmentVpc' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountId', 'environmentVpc_accountId' - The Amazon Web Services account ID of the virtual private cloud (VPC)+-- owner.+--+-- 'cidrBlocks', 'environmentVpc_cidrBlocks' - The list of Amazon Virtual Private Cloud (Amazon VPC) CIDR blocks.+--+-- 'createdTime', 'environmentVpc_createdTime' - A timestamp that indicates when the VPC is first added to the+-- environment.+--+-- 'environmentId', 'environmentVpc_environmentId' - The unique identifier of the environment.+--+-- 'lastUpdatedTime', 'environmentVpc_lastUpdatedTime' - A timestamp that indicates when the VPC was last updated by the+-- environment.+--+-- 'vpcId', 'environmentVpc_vpcId' - The ID of the VPC.+--+-- 'vpcName', 'environmentVpc_vpcName' - The name of the VPC at the time it is added to the environment.+newEnvironmentVpc ::+ EnvironmentVpc+newEnvironmentVpc =+ EnvironmentVpc'+ { accountId = Prelude.Nothing,+ cidrBlocks = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ vpcId = Prelude.Nothing,+ vpcName = Prelude.Nothing+ }++-- | The Amazon Web Services account ID of the virtual private cloud (VPC)+-- owner.+environmentVpc_accountId :: Lens.Lens' EnvironmentVpc (Prelude.Maybe Prelude.Text)+environmentVpc_accountId = Lens.lens (\EnvironmentVpc' {accountId} -> accountId) (\s@EnvironmentVpc' {} a -> s {accountId = a} :: EnvironmentVpc)++-- | The list of Amazon Virtual Private Cloud (Amazon VPC) CIDR blocks.+environmentVpc_cidrBlocks :: Lens.Lens' EnvironmentVpc (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+environmentVpc_cidrBlocks = Lens.lens (\EnvironmentVpc' {cidrBlocks} -> cidrBlocks) (\s@EnvironmentVpc' {} a -> s {cidrBlocks = a} :: EnvironmentVpc) Prelude.. Lens.mapping Lens.coerced++-- | A timestamp that indicates when the VPC is first added to the+-- environment.+environmentVpc_createdTime :: Lens.Lens' EnvironmentVpc (Prelude.Maybe Prelude.UTCTime)+environmentVpc_createdTime = Lens.lens (\EnvironmentVpc' {createdTime} -> createdTime) (\s@EnvironmentVpc' {} a -> s {createdTime = a} :: EnvironmentVpc) Prelude.. Lens.mapping Data._Time++-- | The unique identifier of the environment.+environmentVpc_environmentId :: Lens.Lens' EnvironmentVpc (Prelude.Maybe Prelude.Text)+environmentVpc_environmentId = Lens.lens (\EnvironmentVpc' {environmentId} -> environmentId) (\s@EnvironmentVpc' {} a -> s {environmentId = a} :: EnvironmentVpc)++-- | A timestamp that indicates when the VPC was last updated by the+-- environment.+environmentVpc_lastUpdatedTime :: Lens.Lens' EnvironmentVpc (Prelude.Maybe Prelude.UTCTime)+environmentVpc_lastUpdatedTime = Lens.lens (\EnvironmentVpc' {lastUpdatedTime} -> lastUpdatedTime) (\s@EnvironmentVpc' {} a -> s {lastUpdatedTime = a} :: EnvironmentVpc) Prelude.. Lens.mapping Data._Time++-- | The ID of the VPC.+environmentVpc_vpcId :: Lens.Lens' EnvironmentVpc (Prelude.Maybe Prelude.Text)+environmentVpc_vpcId = Lens.lens (\EnvironmentVpc' {vpcId} -> vpcId) (\s@EnvironmentVpc' {} a -> s {vpcId = a} :: EnvironmentVpc)++-- | The name of the VPC at the time it is added to the environment.+environmentVpc_vpcName :: Lens.Lens' EnvironmentVpc (Prelude.Maybe Prelude.Text)+environmentVpc_vpcName = Lens.lens (\EnvironmentVpc' {vpcName} -> vpcName) (\s@EnvironmentVpc' {} a -> s {vpcName = a} :: EnvironmentVpc)++instance Data.FromJSON EnvironmentVpc where+ parseJSON =+ Data.withObject+ "EnvironmentVpc"+ ( \x ->+ EnvironmentVpc'+ Prelude.<$> (x Data..:? "AccountId")+ Prelude.<*> (x Data..:? "CidrBlocks")+ Prelude.<*> (x Data..:? "CreatedTime")+ Prelude.<*> (x Data..:? "EnvironmentId")+ Prelude.<*> (x Data..:? "LastUpdatedTime")+ Prelude.<*> (x Data..:? "VpcId")+ Prelude.<*> (x Data..:? "VpcName")+ )++instance Prelude.Hashable EnvironmentVpc where+ hashWithSalt _salt EnvironmentVpc' {..} =+ _salt+ `Prelude.hashWithSalt` accountId+ `Prelude.hashWithSalt` cidrBlocks+ `Prelude.hashWithSalt` createdTime+ `Prelude.hashWithSalt` environmentId+ `Prelude.hashWithSalt` lastUpdatedTime+ `Prelude.hashWithSalt` vpcId+ `Prelude.hashWithSalt` vpcName++instance Prelude.NFData EnvironmentVpc where+ rnf EnvironmentVpc' {..} =+ Prelude.rnf accountId+ `Prelude.seq` Prelude.rnf cidrBlocks+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf vpcId+ `Prelude.seq` Prelude.rnf vpcName
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ErrorCode.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ErrorCode+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ErrorCode+ ( ErrorCode+ ( ..,+ ErrorCode_INVALID_RESOURCE_STATE,+ ErrorCode_NOT_AUTHORIZED,+ ErrorCode_REQUEST_LIMIT_EXCEEDED,+ ErrorCode_RESOURCE_CREATION_FAILURE,+ ErrorCode_RESOURCE_DELETION_FAILURE,+ ErrorCode_RESOURCE_IN_USE,+ ErrorCode_RESOURCE_LIMIT_EXCEEDED,+ ErrorCode_RESOURCE_NOT_FOUND,+ ErrorCode_RESOURCE_RETRIEVAL_FAILURE,+ ErrorCode_RESOURCE_UPDATE_FAILURE,+ ErrorCode_SERVICE_ENDPOINT_HEALTH_CHECK_FAILURE,+ ErrorCode_STATE_TRANSITION_FAILURE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ErrorCode = ErrorCode'+ { fromErrorCode ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ErrorCode_INVALID_RESOURCE_STATE :: ErrorCode+pattern ErrorCode_INVALID_RESOURCE_STATE = ErrorCode' "INVALID_RESOURCE_STATE"++pattern ErrorCode_NOT_AUTHORIZED :: ErrorCode+pattern ErrorCode_NOT_AUTHORIZED = ErrorCode' "NOT_AUTHORIZED"++pattern ErrorCode_REQUEST_LIMIT_EXCEEDED :: ErrorCode+pattern ErrorCode_REQUEST_LIMIT_EXCEEDED = ErrorCode' "REQUEST_LIMIT_EXCEEDED"++pattern ErrorCode_RESOURCE_CREATION_FAILURE :: ErrorCode+pattern ErrorCode_RESOURCE_CREATION_FAILURE = ErrorCode' "RESOURCE_CREATION_FAILURE"++pattern ErrorCode_RESOURCE_DELETION_FAILURE :: ErrorCode+pattern ErrorCode_RESOURCE_DELETION_FAILURE = ErrorCode' "RESOURCE_DELETION_FAILURE"++pattern ErrorCode_RESOURCE_IN_USE :: ErrorCode+pattern ErrorCode_RESOURCE_IN_USE = ErrorCode' "RESOURCE_IN_USE"++pattern ErrorCode_RESOURCE_LIMIT_EXCEEDED :: ErrorCode+pattern ErrorCode_RESOURCE_LIMIT_EXCEEDED = ErrorCode' "RESOURCE_LIMIT_EXCEEDED"++pattern ErrorCode_RESOURCE_NOT_FOUND :: ErrorCode+pattern ErrorCode_RESOURCE_NOT_FOUND = ErrorCode' "RESOURCE_NOT_FOUND"++pattern ErrorCode_RESOURCE_RETRIEVAL_FAILURE :: ErrorCode+pattern ErrorCode_RESOURCE_RETRIEVAL_FAILURE = ErrorCode' "RESOURCE_RETRIEVAL_FAILURE"++pattern ErrorCode_RESOURCE_UPDATE_FAILURE :: ErrorCode+pattern ErrorCode_RESOURCE_UPDATE_FAILURE = ErrorCode' "RESOURCE_UPDATE_FAILURE"++pattern ErrorCode_SERVICE_ENDPOINT_HEALTH_CHECK_FAILURE :: ErrorCode+pattern ErrorCode_SERVICE_ENDPOINT_HEALTH_CHECK_FAILURE = ErrorCode' "SERVICE_ENDPOINT_HEALTH_CHECK_FAILURE"++pattern ErrorCode_STATE_TRANSITION_FAILURE :: ErrorCode+pattern ErrorCode_STATE_TRANSITION_FAILURE = ErrorCode' "STATE_TRANSITION_FAILURE"++{-# COMPLETE+ ErrorCode_INVALID_RESOURCE_STATE,+ ErrorCode_NOT_AUTHORIZED,+ ErrorCode_REQUEST_LIMIT_EXCEEDED,+ ErrorCode_RESOURCE_CREATION_FAILURE,+ ErrorCode_RESOURCE_DELETION_FAILURE,+ ErrorCode_RESOURCE_IN_USE,+ ErrorCode_RESOURCE_LIMIT_EXCEEDED,+ ErrorCode_RESOURCE_NOT_FOUND,+ ErrorCode_RESOURCE_RETRIEVAL_FAILURE,+ ErrorCode_RESOURCE_UPDATE_FAILURE,+ ErrorCode_SERVICE_ENDPOINT_HEALTH_CHECK_FAILURE,+ ErrorCode_STATE_TRANSITION_FAILURE,+ ErrorCode'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ErrorResourceType.hs view
@@ -0,0 +1,156 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ErrorResourceType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ErrorResourceType+ ( ErrorResourceType+ ( ..,+ ErrorResourceType_API_GATEWAY,+ ErrorResourceType_APPLICATION,+ ErrorResourceType_ENVIRONMENT,+ ErrorResourceType_IAM_ROLE,+ ErrorResourceType_LAMBDA,+ ErrorResourceType_LOAD_BALANCER_LISTENER,+ ErrorResourceType_NLB,+ ErrorResourceType_RESOURCE_SHARE,+ ErrorResourceType_ROUTE,+ ErrorResourceType_ROUTE_TABLE,+ ErrorResourceType_SECURITY_GROUP,+ ErrorResourceType_SERVICE,+ ErrorResourceType_SUBNET,+ ErrorResourceType_TARGET_GROUP,+ ErrorResourceType_TRANSIT_GATEWAY,+ ErrorResourceType_TRANSIT_GATEWAY_ATTACHMENT,+ ErrorResourceType_VPC,+ ErrorResourceType_VPC_ENDPOINT_SERVICE_CONFIGURATION,+ ErrorResourceType_VPC_LINK+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ErrorResourceType = ErrorResourceType'+ { fromErrorResourceType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ErrorResourceType_API_GATEWAY :: ErrorResourceType+pattern ErrorResourceType_API_GATEWAY = ErrorResourceType' "API_GATEWAY"++pattern ErrorResourceType_APPLICATION :: ErrorResourceType+pattern ErrorResourceType_APPLICATION = ErrorResourceType' "APPLICATION"++pattern ErrorResourceType_ENVIRONMENT :: ErrorResourceType+pattern ErrorResourceType_ENVIRONMENT = ErrorResourceType' "ENVIRONMENT"++pattern ErrorResourceType_IAM_ROLE :: ErrorResourceType+pattern ErrorResourceType_IAM_ROLE = ErrorResourceType' "IAM_ROLE"++pattern ErrorResourceType_LAMBDA :: ErrorResourceType+pattern ErrorResourceType_LAMBDA = ErrorResourceType' "LAMBDA"++pattern ErrorResourceType_LOAD_BALANCER_LISTENER :: ErrorResourceType+pattern ErrorResourceType_LOAD_BALANCER_LISTENER = ErrorResourceType' "LOAD_BALANCER_LISTENER"++pattern ErrorResourceType_NLB :: ErrorResourceType+pattern ErrorResourceType_NLB = ErrorResourceType' "NLB"++pattern ErrorResourceType_RESOURCE_SHARE :: ErrorResourceType+pattern ErrorResourceType_RESOURCE_SHARE = ErrorResourceType' "RESOURCE_SHARE"++pattern ErrorResourceType_ROUTE :: ErrorResourceType+pattern ErrorResourceType_ROUTE = ErrorResourceType' "ROUTE"++pattern ErrorResourceType_ROUTE_TABLE :: ErrorResourceType+pattern ErrorResourceType_ROUTE_TABLE = ErrorResourceType' "ROUTE_TABLE"++pattern ErrorResourceType_SECURITY_GROUP :: ErrorResourceType+pattern ErrorResourceType_SECURITY_GROUP = ErrorResourceType' "SECURITY_GROUP"++pattern ErrorResourceType_SERVICE :: ErrorResourceType+pattern ErrorResourceType_SERVICE = ErrorResourceType' "SERVICE"++pattern ErrorResourceType_SUBNET :: ErrorResourceType+pattern ErrorResourceType_SUBNET = ErrorResourceType' "SUBNET"++pattern ErrorResourceType_TARGET_GROUP :: ErrorResourceType+pattern ErrorResourceType_TARGET_GROUP = ErrorResourceType' "TARGET_GROUP"++pattern ErrorResourceType_TRANSIT_GATEWAY :: ErrorResourceType+pattern ErrorResourceType_TRANSIT_GATEWAY = ErrorResourceType' "TRANSIT_GATEWAY"++pattern ErrorResourceType_TRANSIT_GATEWAY_ATTACHMENT :: ErrorResourceType+pattern ErrorResourceType_TRANSIT_GATEWAY_ATTACHMENT = ErrorResourceType' "TRANSIT_GATEWAY_ATTACHMENT"++pattern ErrorResourceType_VPC :: ErrorResourceType+pattern ErrorResourceType_VPC = ErrorResourceType' "VPC"++pattern ErrorResourceType_VPC_ENDPOINT_SERVICE_CONFIGURATION :: ErrorResourceType+pattern ErrorResourceType_VPC_ENDPOINT_SERVICE_CONFIGURATION = ErrorResourceType' "VPC_ENDPOINT_SERVICE_CONFIGURATION"++pattern ErrorResourceType_VPC_LINK :: ErrorResourceType+pattern ErrorResourceType_VPC_LINK = ErrorResourceType' "VPC_LINK"++{-# COMPLETE+ ErrorResourceType_API_GATEWAY,+ ErrorResourceType_APPLICATION,+ ErrorResourceType_ENVIRONMENT,+ ErrorResourceType_IAM_ROLE,+ ErrorResourceType_LAMBDA,+ ErrorResourceType_LOAD_BALANCER_LISTENER,+ ErrorResourceType_NLB,+ ErrorResourceType_RESOURCE_SHARE,+ ErrorResourceType_ROUTE,+ ErrorResourceType_ROUTE_TABLE,+ ErrorResourceType_SECURITY_GROUP,+ ErrorResourceType_SERVICE,+ ErrorResourceType_SUBNET,+ ErrorResourceType_TARGET_GROUP,+ ErrorResourceType_TRANSIT_GATEWAY,+ ErrorResourceType_TRANSIT_GATEWAY_ATTACHMENT,+ ErrorResourceType_VPC,+ ErrorResourceType_VPC_ENDPOINT_SERVICE_CONFIGURATION,+ ErrorResourceType_VPC_LINK,+ ErrorResourceType'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ErrorResponse.hs view
@@ -0,0 +1,138 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ErrorResponse+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ErrorResponse where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types.ErrorCode+import Amazonka.MigrationHubReFactorSpaces.Types.ErrorResourceType+import qualified Amazonka.Prelude as Prelude++-- | Error associated with a resource returned for a Get or List resource+-- response.+--+-- /See:/ 'newErrorResponse' smart constructor.+data ErrorResponse = ErrorResponse'+ { -- | The Amazon Web Services account ID of the resource owner.+ accountId :: Prelude.Maybe Prelude.Text,+ -- | Additional details about the error.+ additionalDetails :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The error code associated with the error.+ code :: Prelude.Maybe ErrorCode,+ -- | The message associated with the error.+ message :: Prelude.Maybe Prelude.Text,+ -- | The ID of the resource.+ resourceIdentifier :: Prelude.Maybe Prelude.Text,+ -- | The type of resource.+ resourceType :: Prelude.Maybe ErrorResourceType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ErrorResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountId', 'errorResponse_accountId' - The Amazon Web Services account ID of the resource owner.+--+-- 'additionalDetails', 'errorResponse_additionalDetails' - Additional details about the error.+--+-- 'code', 'errorResponse_code' - The error code associated with the error.+--+-- 'message', 'errorResponse_message' - The message associated with the error.+--+-- 'resourceIdentifier', 'errorResponse_resourceIdentifier' - The ID of the resource.+--+-- 'resourceType', 'errorResponse_resourceType' - The type of resource.+newErrorResponse ::+ ErrorResponse+newErrorResponse =+ ErrorResponse'+ { accountId = Prelude.Nothing,+ additionalDetails = Prelude.Nothing,+ code = Prelude.Nothing,+ message = Prelude.Nothing,+ resourceIdentifier = Prelude.Nothing,+ resourceType = Prelude.Nothing+ }++-- | The Amazon Web Services account ID of the resource owner.+errorResponse_accountId :: Lens.Lens' ErrorResponse (Prelude.Maybe Prelude.Text)+errorResponse_accountId = Lens.lens (\ErrorResponse' {accountId} -> accountId) (\s@ErrorResponse' {} a -> s {accountId = a} :: ErrorResponse)++-- | Additional details about the error.+errorResponse_additionalDetails :: Lens.Lens' ErrorResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+errorResponse_additionalDetails = Lens.lens (\ErrorResponse' {additionalDetails} -> additionalDetails) (\s@ErrorResponse' {} a -> s {additionalDetails = a} :: ErrorResponse) Prelude.. Lens.mapping Lens.coerced++-- | The error code associated with the error.+errorResponse_code :: Lens.Lens' ErrorResponse (Prelude.Maybe ErrorCode)+errorResponse_code = Lens.lens (\ErrorResponse' {code} -> code) (\s@ErrorResponse' {} a -> s {code = a} :: ErrorResponse)++-- | The message associated with the error.+errorResponse_message :: Lens.Lens' ErrorResponse (Prelude.Maybe Prelude.Text)+errorResponse_message = Lens.lens (\ErrorResponse' {message} -> message) (\s@ErrorResponse' {} a -> s {message = a} :: ErrorResponse)++-- | The ID of the resource.+errorResponse_resourceIdentifier :: Lens.Lens' ErrorResponse (Prelude.Maybe Prelude.Text)+errorResponse_resourceIdentifier = Lens.lens (\ErrorResponse' {resourceIdentifier} -> resourceIdentifier) (\s@ErrorResponse' {} a -> s {resourceIdentifier = a} :: ErrorResponse)++-- | The type of resource.+errorResponse_resourceType :: Lens.Lens' ErrorResponse (Prelude.Maybe ErrorResourceType)+errorResponse_resourceType = Lens.lens (\ErrorResponse' {resourceType} -> resourceType) (\s@ErrorResponse' {} a -> s {resourceType = a} :: ErrorResponse)++instance Data.FromJSON ErrorResponse where+ parseJSON =+ Data.withObject+ "ErrorResponse"+ ( \x ->+ ErrorResponse'+ Prelude.<$> (x Data..:? "AccountId")+ Prelude.<*> ( x+ Data..:? "AdditionalDetails"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "Code")+ Prelude.<*> (x Data..:? "Message")+ Prelude.<*> (x Data..:? "ResourceIdentifier")+ Prelude.<*> (x Data..:? "ResourceType")+ )++instance Prelude.Hashable ErrorResponse where+ hashWithSalt _salt ErrorResponse' {..} =+ _salt+ `Prelude.hashWithSalt` accountId+ `Prelude.hashWithSalt` additionalDetails+ `Prelude.hashWithSalt` code+ `Prelude.hashWithSalt` message+ `Prelude.hashWithSalt` resourceIdentifier+ `Prelude.hashWithSalt` resourceType++instance Prelude.NFData ErrorResponse where+ rnf ErrorResponse' {..} =+ Prelude.rnf accountId+ `Prelude.seq` Prelude.rnf additionalDetails+ `Prelude.seq` Prelude.rnf code+ `Prelude.seq` Prelude.rnf message+ `Prelude.seq` Prelude.rnf resourceIdentifier+ `Prelude.seq` Prelude.rnf resourceType
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/HttpMethod.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.HttpMethod+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.HttpMethod+ ( HttpMethod+ ( ..,+ HttpMethod_DELETE,+ HttpMethod_GET,+ HttpMethod_HEAD,+ HttpMethod_OPTIONS,+ HttpMethod_PATCH,+ HttpMethod_POST,+ HttpMethod_PUT+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype HttpMethod = HttpMethod'+ { fromHttpMethod ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern HttpMethod_DELETE :: HttpMethod+pattern HttpMethod_DELETE = HttpMethod' "DELETE"++pattern HttpMethod_GET :: HttpMethod+pattern HttpMethod_GET = HttpMethod' "GET"++pattern HttpMethod_HEAD :: HttpMethod+pattern HttpMethod_HEAD = HttpMethod' "HEAD"++pattern HttpMethod_OPTIONS :: HttpMethod+pattern HttpMethod_OPTIONS = HttpMethod' "OPTIONS"++pattern HttpMethod_PATCH :: HttpMethod+pattern HttpMethod_PATCH = HttpMethod' "PATCH"++pattern HttpMethod_POST :: HttpMethod+pattern HttpMethod_POST = HttpMethod' "POST"++pattern HttpMethod_PUT :: HttpMethod+pattern HttpMethod_PUT = HttpMethod' "PUT"++{-# COMPLETE+ HttpMethod_DELETE,+ HttpMethod_GET,+ HttpMethod_HEAD,+ HttpMethod_OPTIONS,+ HttpMethod_PATCH,+ HttpMethod_POST,+ HttpMethod_PUT,+ HttpMethod'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/LambdaEndpointConfig.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointConfig+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointConfig 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++-- | The configuration for the Lambda endpoint type.+--+-- /See:/ 'newLambdaEndpointConfig' smart constructor.+data LambdaEndpointConfig = LambdaEndpointConfig'+ { -- | The Amazon Resource Name (ARN) of the Lambda endpoint.+ arn :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LambdaEndpointConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'lambdaEndpointConfig_arn' - The Amazon Resource Name (ARN) of the Lambda endpoint.+newLambdaEndpointConfig ::+ LambdaEndpointConfig+newLambdaEndpointConfig =+ LambdaEndpointConfig' {arn = Prelude.Nothing}++-- | The Amazon Resource Name (ARN) of the Lambda endpoint.+lambdaEndpointConfig_arn :: Lens.Lens' LambdaEndpointConfig (Prelude.Maybe Prelude.Text)+lambdaEndpointConfig_arn = Lens.lens (\LambdaEndpointConfig' {arn} -> arn) (\s@LambdaEndpointConfig' {} a -> s {arn = a} :: LambdaEndpointConfig)++instance Data.FromJSON LambdaEndpointConfig where+ parseJSON =+ Data.withObject+ "LambdaEndpointConfig"+ ( \x ->+ LambdaEndpointConfig' Prelude.<$> (x Data..:? "Arn")+ )++instance Prelude.Hashable LambdaEndpointConfig where+ hashWithSalt _salt LambdaEndpointConfig' {..} =+ _salt `Prelude.hashWithSalt` arn++instance Prelude.NFData LambdaEndpointConfig where+ rnf LambdaEndpointConfig' {..} = Prelude.rnf arn
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/LambdaEndpointInput.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointInput+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointInput 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++-- | The input for the Lambda endpoint type.+--+-- /See:/ 'newLambdaEndpointInput' smart constructor.+data LambdaEndpointInput = LambdaEndpointInput'+ { -- | The Amazon Resource Name (ARN) of the Lambda function or alias.+ arn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LambdaEndpointInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'lambdaEndpointInput_arn' - The Amazon Resource Name (ARN) of the Lambda function or alias.+newLambdaEndpointInput ::+ -- | 'arn'+ Prelude.Text ->+ LambdaEndpointInput+newLambdaEndpointInput pArn_ =+ LambdaEndpointInput' {arn = pArn_}++-- | The Amazon Resource Name (ARN) of the Lambda function or alias.+lambdaEndpointInput_arn :: Lens.Lens' LambdaEndpointInput Prelude.Text+lambdaEndpointInput_arn = Lens.lens (\LambdaEndpointInput' {arn} -> arn) (\s@LambdaEndpointInput' {} a -> s {arn = a} :: LambdaEndpointInput)++instance Data.FromJSON LambdaEndpointInput where+ parseJSON =+ Data.withObject+ "LambdaEndpointInput"+ ( \x ->+ LambdaEndpointInput' Prelude.<$> (x Data..: "Arn")+ )++instance Prelude.Hashable LambdaEndpointInput where+ hashWithSalt _salt LambdaEndpointInput' {..} =+ _salt `Prelude.hashWithSalt` arn++instance Prelude.NFData LambdaEndpointInput where+ rnf LambdaEndpointInput' {..} = Prelude.rnf arn++instance Data.ToJSON LambdaEndpointInput where+ toJSON LambdaEndpointInput' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("Arn" Data..= arn)]+ )
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/LambdaEndpointSummary.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointSummary 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++-- | The summary for the Lambda endpoint type.+--+-- /See:/ 'newLambdaEndpointSummary' smart constructor.+data LambdaEndpointSummary = LambdaEndpointSummary'+ { -- | The Amazon Resource Name (ARN) of the Lambda endpoint.+ arn :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LambdaEndpointSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'lambdaEndpointSummary_arn' - The Amazon Resource Name (ARN) of the Lambda endpoint.+newLambdaEndpointSummary ::+ LambdaEndpointSummary+newLambdaEndpointSummary =+ LambdaEndpointSummary' {arn = Prelude.Nothing}++-- | The Amazon Resource Name (ARN) of the Lambda endpoint.+lambdaEndpointSummary_arn :: Lens.Lens' LambdaEndpointSummary (Prelude.Maybe Prelude.Text)+lambdaEndpointSummary_arn = Lens.lens (\LambdaEndpointSummary' {arn} -> arn) (\s@LambdaEndpointSummary' {} a -> s {arn = a} :: LambdaEndpointSummary)++instance Data.FromJSON LambdaEndpointSummary where+ parseJSON =+ Data.withObject+ "LambdaEndpointSummary"+ ( \x ->+ LambdaEndpointSummary'+ Prelude.<$> (x Data..:? "Arn")+ )++instance Prelude.Hashable LambdaEndpointSummary where+ hashWithSalt _salt LambdaEndpointSummary' {..} =+ _salt `Prelude.hashWithSalt` arn++instance Prelude.NFData LambdaEndpointSummary where+ rnf LambdaEndpointSummary' {..} = Prelude.rnf arn
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/NetworkFabricType.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.NetworkFabricType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.NetworkFabricType+ ( NetworkFabricType+ ( ..,+ NetworkFabricType_TRANSIT_GATEWAY+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype NetworkFabricType = NetworkFabricType'+ { fromNetworkFabricType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern NetworkFabricType_TRANSIT_GATEWAY :: NetworkFabricType+pattern NetworkFabricType_TRANSIT_GATEWAY = NetworkFabricType' "TRANSIT_GATEWAY"++{-# COMPLETE+ NetworkFabricType_TRANSIT_GATEWAY,+ NetworkFabricType'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ProxyType.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ProxyType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ProxyType+ ( ProxyType+ ( ..,+ ProxyType_API_GATEWAY+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ProxyType = ProxyType'+ { fromProxyType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ProxyType_API_GATEWAY :: ProxyType+pattern ProxyType_API_GATEWAY = ProxyType' "API_GATEWAY"++{-# COMPLETE+ ProxyType_API_GATEWAY,+ ProxyType'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/RouteActivationState.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.RouteActivationState+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.RouteActivationState+ ( RouteActivationState+ ( ..,+ RouteActivationState_ACTIVE,+ RouteActivationState_INACTIVE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype RouteActivationState = RouteActivationState'+ { fromRouteActivationState ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern RouteActivationState_ACTIVE :: RouteActivationState+pattern RouteActivationState_ACTIVE = RouteActivationState' "ACTIVE"++pattern RouteActivationState_INACTIVE :: RouteActivationState+pattern RouteActivationState_INACTIVE = RouteActivationState' "INACTIVE"++{-# COMPLETE+ RouteActivationState_ACTIVE,+ RouteActivationState_INACTIVE,+ RouteActivationState'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/RouteState.hs view
@@ -0,0 +1,91 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.RouteState+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.RouteState+ ( RouteState+ ( ..,+ RouteState_ACTIVE,+ RouteState_CREATING,+ RouteState_DELETING,+ RouteState_FAILED,+ RouteState_INACTIVE,+ RouteState_UPDATING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype RouteState = RouteState'+ { fromRouteState ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern RouteState_ACTIVE :: RouteState+pattern RouteState_ACTIVE = RouteState' "ACTIVE"++pattern RouteState_CREATING :: RouteState+pattern RouteState_CREATING = RouteState' "CREATING"++pattern RouteState_DELETING :: RouteState+pattern RouteState_DELETING = RouteState' "DELETING"++pattern RouteState_FAILED :: RouteState+pattern RouteState_FAILED = RouteState' "FAILED"++pattern RouteState_INACTIVE :: RouteState+pattern RouteState_INACTIVE = RouteState' "INACTIVE"++pattern RouteState_UPDATING :: RouteState+pattern RouteState_UPDATING = RouteState' "UPDATING"++{-# COMPLETE+ RouteState_ACTIVE,+ RouteState_CREATING,+ RouteState_DELETING,+ RouteState_FAILED,+ RouteState_INACTIVE,+ RouteState_UPDATING,+ RouteState'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/RouteSummary.hs view
@@ -0,0 +1,286 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.RouteSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.RouteSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types.ErrorResponse+import Amazonka.MigrationHubReFactorSpaces.Types.HttpMethod+import Amazonka.MigrationHubReFactorSpaces.Types.RouteState+import Amazonka.MigrationHubReFactorSpaces.Types.RouteType+import qualified Amazonka.Prelude as Prelude++-- | The summary information for the routes as a response to @ListRoutes@.+--+-- /See:/ 'newRouteSummary' smart constructor.+data RouteSummary = RouteSummary'+ { -- | The unique identifier of the application.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the route.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the route creator.+ createdByAccountId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the route is created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | The unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | Any error associated with the route resource.+ error :: Prelude.Maybe ErrorResponse,+ -- | Indicates whether to match all subpaths of the given source path. If+ -- this value is @false@, requests must match the source path exactly+ -- before they are forwarded to this route\'s service.+ includeChildPaths :: Prelude.Maybe Prelude.Bool,+ -- | A timestamp that indicates when the route was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | A list of HTTP methods to match. An empty list matches all values. If a+ -- method is present, only HTTP requests using that method are forwarded to+ -- this route’s service.+ methods :: Prelude.Maybe [HttpMethod],+ -- | The Amazon Web Services account ID of the route owner.+ ownerAccountId :: Prelude.Maybe Prelude.Text,+ -- | A mapping of Amazon API Gateway path resources to resource IDs.+ pathResourceToId :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The unique identifier of the route.+ routeId :: Prelude.Maybe Prelude.Text,+ -- | The route type of the route.+ routeType :: Prelude.Maybe RouteType,+ -- | The unique identifier of the service.+ serviceId :: Prelude.Maybe Prelude.Text,+ -- | The path to use to match traffic. Paths must start with @\/@ and are+ -- relative to the base of the application.+ sourcePath :: Prelude.Maybe Prelude.Text,+ -- | The current state of the route.+ state :: Prelude.Maybe RouteState,+ -- | The tags assigned to the route.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text))+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RouteSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'routeSummary_applicationId' - The unique identifier of the application.+--+-- 'arn', 'routeSummary_arn' - The Amazon Resource Name (ARN) of the route.+--+-- 'createdByAccountId', 'routeSummary_createdByAccountId' - The Amazon Web Services account ID of the route creator.+--+-- 'createdTime', 'routeSummary_createdTime' - A timestamp that indicates when the route is created.+--+-- 'environmentId', 'routeSummary_environmentId' - The unique identifier of the environment.+--+-- 'error', 'routeSummary_error' - Any error associated with the route resource.+--+-- 'includeChildPaths', 'routeSummary_includeChildPaths' - Indicates whether to match all subpaths of the given source path. If+-- this value is @false@, requests must match the source path exactly+-- before they are forwarded to this route\'s service.+--+-- 'lastUpdatedTime', 'routeSummary_lastUpdatedTime' - A timestamp that indicates when the route was last updated.+--+-- 'methods', 'routeSummary_methods' - A list of HTTP methods to match. An empty list matches all values. If a+-- method is present, only HTTP requests using that method are forwarded to+-- this route’s service.+--+-- 'ownerAccountId', 'routeSummary_ownerAccountId' - The Amazon Web Services account ID of the route owner.+--+-- 'pathResourceToId', 'routeSummary_pathResourceToId' - A mapping of Amazon API Gateway path resources to resource IDs.+--+-- 'routeId', 'routeSummary_routeId' - The unique identifier of the route.+--+-- 'routeType', 'routeSummary_routeType' - The route type of the route.+--+-- 'serviceId', 'routeSummary_serviceId' - The unique identifier of the service.+--+-- 'sourcePath', 'routeSummary_sourcePath' - The path to use to match traffic. Paths must start with @\/@ and are+-- relative to the base of the application.+--+-- 'state', 'routeSummary_state' - The current state of the route.+--+-- 'tags', 'routeSummary_tags' - The tags assigned to the route.+newRouteSummary ::+ RouteSummary+newRouteSummary =+ RouteSummary'+ { applicationId = Prelude.Nothing,+ arn = Prelude.Nothing,+ createdByAccountId = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ error = Prelude.Nothing,+ includeChildPaths = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ methods = Prelude.Nothing,+ ownerAccountId = Prelude.Nothing,+ pathResourceToId = Prelude.Nothing,+ routeId = Prelude.Nothing,+ routeType = Prelude.Nothing,+ serviceId = Prelude.Nothing,+ sourcePath = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing+ }++-- | The unique identifier of the application.+routeSummary_applicationId :: Lens.Lens' RouteSummary (Prelude.Maybe Prelude.Text)+routeSummary_applicationId = Lens.lens (\RouteSummary' {applicationId} -> applicationId) (\s@RouteSummary' {} a -> s {applicationId = a} :: RouteSummary)++-- | The Amazon Resource Name (ARN) of the route.+routeSummary_arn :: Lens.Lens' RouteSummary (Prelude.Maybe Prelude.Text)+routeSummary_arn = Lens.lens (\RouteSummary' {arn} -> arn) (\s@RouteSummary' {} a -> s {arn = a} :: RouteSummary)++-- | The Amazon Web Services account ID of the route creator.+routeSummary_createdByAccountId :: Lens.Lens' RouteSummary (Prelude.Maybe Prelude.Text)+routeSummary_createdByAccountId = Lens.lens (\RouteSummary' {createdByAccountId} -> createdByAccountId) (\s@RouteSummary' {} a -> s {createdByAccountId = a} :: RouteSummary)++-- | A timestamp that indicates when the route is created.+routeSummary_createdTime :: Lens.Lens' RouteSummary (Prelude.Maybe Prelude.UTCTime)+routeSummary_createdTime = Lens.lens (\RouteSummary' {createdTime} -> createdTime) (\s@RouteSummary' {} a -> s {createdTime = a} :: RouteSummary) Prelude.. Lens.mapping Data._Time++-- | The unique identifier of the environment.+routeSummary_environmentId :: Lens.Lens' RouteSummary (Prelude.Maybe Prelude.Text)+routeSummary_environmentId = Lens.lens (\RouteSummary' {environmentId} -> environmentId) (\s@RouteSummary' {} a -> s {environmentId = a} :: RouteSummary)++-- | Any error associated with the route resource.+routeSummary_error :: Lens.Lens' RouteSummary (Prelude.Maybe ErrorResponse)+routeSummary_error = Lens.lens (\RouteSummary' {error} -> error) (\s@RouteSummary' {} a -> s {error = a} :: RouteSummary)++-- | Indicates whether to match all subpaths of the given source path. If+-- this value is @false@, requests must match the source path exactly+-- before they are forwarded to this route\'s service.+routeSummary_includeChildPaths :: Lens.Lens' RouteSummary (Prelude.Maybe Prelude.Bool)+routeSummary_includeChildPaths = Lens.lens (\RouteSummary' {includeChildPaths} -> includeChildPaths) (\s@RouteSummary' {} a -> s {includeChildPaths = a} :: RouteSummary)++-- | A timestamp that indicates when the route was last updated.+routeSummary_lastUpdatedTime :: Lens.Lens' RouteSummary (Prelude.Maybe Prelude.UTCTime)+routeSummary_lastUpdatedTime = Lens.lens (\RouteSummary' {lastUpdatedTime} -> lastUpdatedTime) (\s@RouteSummary' {} a -> s {lastUpdatedTime = a} :: RouteSummary) Prelude.. Lens.mapping Data._Time++-- | A list of HTTP methods to match. An empty list matches all values. If a+-- method is present, only HTTP requests using that method are forwarded to+-- this route’s service.+routeSummary_methods :: Lens.Lens' RouteSummary (Prelude.Maybe [HttpMethod])+routeSummary_methods = Lens.lens (\RouteSummary' {methods} -> methods) (\s@RouteSummary' {} a -> s {methods = a} :: RouteSummary) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Web Services account ID of the route owner.+routeSummary_ownerAccountId :: Lens.Lens' RouteSummary (Prelude.Maybe Prelude.Text)+routeSummary_ownerAccountId = Lens.lens (\RouteSummary' {ownerAccountId} -> ownerAccountId) (\s@RouteSummary' {} a -> s {ownerAccountId = a} :: RouteSummary)++-- | A mapping of Amazon API Gateway path resources to resource IDs.+routeSummary_pathResourceToId :: Lens.Lens' RouteSummary (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+routeSummary_pathResourceToId = Lens.lens (\RouteSummary' {pathResourceToId} -> pathResourceToId) (\s@RouteSummary' {} a -> s {pathResourceToId = a} :: RouteSummary) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier of the route.+routeSummary_routeId :: Lens.Lens' RouteSummary (Prelude.Maybe Prelude.Text)+routeSummary_routeId = Lens.lens (\RouteSummary' {routeId} -> routeId) (\s@RouteSummary' {} a -> s {routeId = a} :: RouteSummary)++-- | The route type of the route.+routeSummary_routeType :: Lens.Lens' RouteSummary (Prelude.Maybe RouteType)+routeSummary_routeType = Lens.lens (\RouteSummary' {routeType} -> routeType) (\s@RouteSummary' {} a -> s {routeType = a} :: RouteSummary)++-- | The unique identifier of the service.+routeSummary_serviceId :: Lens.Lens' RouteSummary (Prelude.Maybe Prelude.Text)+routeSummary_serviceId = Lens.lens (\RouteSummary' {serviceId} -> serviceId) (\s@RouteSummary' {} a -> s {serviceId = a} :: RouteSummary)++-- | The path to use to match traffic. Paths must start with @\/@ and are+-- relative to the base of the application.+routeSummary_sourcePath :: Lens.Lens' RouteSummary (Prelude.Maybe Prelude.Text)+routeSummary_sourcePath = Lens.lens (\RouteSummary' {sourcePath} -> sourcePath) (\s@RouteSummary' {} a -> s {sourcePath = a} :: RouteSummary)++-- | The current state of the route.+routeSummary_state :: Lens.Lens' RouteSummary (Prelude.Maybe RouteState)+routeSummary_state = Lens.lens (\RouteSummary' {state} -> state) (\s@RouteSummary' {} a -> s {state = a} :: RouteSummary)++-- | The tags assigned to the route.+routeSummary_tags :: Lens.Lens' RouteSummary (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+routeSummary_tags = Lens.lens (\RouteSummary' {tags} -> tags) (\s@RouteSummary' {} a -> s {tags = a} :: RouteSummary) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++instance Data.FromJSON RouteSummary where+ parseJSON =+ Data.withObject+ "RouteSummary"+ ( \x ->+ RouteSummary'+ Prelude.<$> (x Data..:? "ApplicationId")+ Prelude.<*> (x Data..:? "Arn")+ Prelude.<*> (x Data..:? "CreatedByAccountId")+ Prelude.<*> (x Data..:? "CreatedTime")+ Prelude.<*> (x Data..:? "EnvironmentId")+ Prelude.<*> (x Data..:? "Error")+ Prelude.<*> (x Data..:? "IncludeChildPaths")+ Prelude.<*> (x Data..:? "LastUpdatedTime")+ Prelude.<*> (x Data..:? "Methods" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "OwnerAccountId")+ Prelude.<*> ( x+ Data..:? "PathResourceToId"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "RouteId")+ Prelude.<*> (x Data..:? "RouteType")+ Prelude.<*> (x Data..:? "ServiceId")+ Prelude.<*> (x Data..:? "SourcePath")+ Prelude.<*> (x Data..:? "State")+ Prelude.<*> (x Data..:? "Tags" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable RouteSummary where+ hashWithSalt _salt RouteSummary' {..} =+ _salt+ `Prelude.hashWithSalt` applicationId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdByAccountId+ `Prelude.hashWithSalt` createdTime+ `Prelude.hashWithSalt` environmentId+ `Prelude.hashWithSalt` error+ `Prelude.hashWithSalt` includeChildPaths+ `Prelude.hashWithSalt` lastUpdatedTime+ `Prelude.hashWithSalt` methods+ `Prelude.hashWithSalt` ownerAccountId+ `Prelude.hashWithSalt` pathResourceToId+ `Prelude.hashWithSalt` routeId+ `Prelude.hashWithSalt` routeType+ `Prelude.hashWithSalt` serviceId+ `Prelude.hashWithSalt` sourcePath+ `Prelude.hashWithSalt` state+ `Prelude.hashWithSalt` tags++instance Prelude.NFData RouteSummary where+ rnf RouteSummary' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdByAccountId+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf error+ `Prelude.seq` Prelude.rnf includeChildPaths+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf methods+ `Prelude.seq` Prelude.rnf ownerAccountId+ `Prelude.seq` Prelude.rnf pathResourceToId+ `Prelude.seq` Prelude.rnf routeId+ `Prelude.seq` Prelude.rnf routeType+ `Prelude.seq` Prelude.rnf serviceId+ `Prelude.seq` Prelude.rnf sourcePath+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/RouteType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.RouteType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.RouteType+ ( RouteType+ ( ..,+ RouteType_DEFAULT,+ RouteType_URI_PATH+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype RouteType = RouteType'+ { fromRouteType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern RouteType_DEFAULT :: RouteType+pattern RouteType_DEFAULT = RouteType' "DEFAULT"++pattern RouteType_URI_PATH :: RouteType+pattern RouteType_URI_PATH = RouteType' "URI_PATH"++{-# COMPLETE+ RouteType_DEFAULT,+ RouteType_URI_PATH,+ RouteType'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ServiceEndpointType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ServiceEndpointType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ServiceEndpointType+ ( ServiceEndpointType+ ( ..,+ ServiceEndpointType_LAMBDA,+ ServiceEndpointType_URL+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ServiceEndpointType = ServiceEndpointType'+ { fromServiceEndpointType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ServiceEndpointType_LAMBDA :: ServiceEndpointType+pattern ServiceEndpointType_LAMBDA = ServiceEndpointType' "LAMBDA"++pattern ServiceEndpointType_URL :: ServiceEndpointType+pattern ServiceEndpointType_URL = ServiceEndpointType' "URL"++{-# COMPLETE+ ServiceEndpointType_LAMBDA,+ ServiceEndpointType_URL,+ ServiceEndpointType'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ServiceState.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ServiceState+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ServiceState+ ( ServiceState+ ( ..,+ ServiceState_ACTIVE,+ ServiceState_CREATING,+ ServiceState_DELETING,+ ServiceState_FAILED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ServiceState = ServiceState'+ { fromServiceState ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ServiceState_ACTIVE :: ServiceState+pattern ServiceState_ACTIVE = ServiceState' "ACTIVE"++pattern ServiceState_CREATING :: ServiceState+pattern ServiceState_CREATING = ServiceState' "CREATING"++pattern ServiceState_DELETING :: ServiceState+pattern ServiceState_DELETING = ServiceState' "DELETING"++pattern ServiceState_FAILED :: ServiceState+pattern ServiceState_FAILED = ServiceState' "FAILED"++{-# COMPLETE+ ServiceState_ACTIVE,+ ServiceState_CREATING,+ ServiceState_DELETING,+ ServiceState_FAILED,+ ServiceState'+ #-}
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/ServiceSummary.hs view
@@ -0,0 +1,269 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.ServiceSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.ServiceSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types.ErrorResponse+import Amazonka.MigrationHubReFactorSpaces.Types.LambdaEndpointSummary+import Amazonka.MigrationHubReFactorSpaces.Types.ServiceEndpointType+import Amazonka.MigrationHubReFactorSpaces.Types.ServiceState+import Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointSummary+import qualified Amazonka.Prelude as Prelude++-- | A summary for the service as a response to @ListServices@.+--+-- /See:/ 'newServiceSummary' smart constructor.+data ServiceSummary = ServiceSummary'+ { -- | The unique identifier of the application.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the service.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the service creator.+ createdByAccountId :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the service is created.+ createdTime :: Prelude.Maybe Data.POSIX,+ -- | A description of the service.+ description :: Prelude.Maybe Prelude.Text,+ -- | The endpoint type of the service.+ endpointType :: Prelude.Maybe ServiceEndpointType,+ -- | The unique identifier of the environment.+ environmentId :: Prelude.Maybe Prelude.Text,+ -- | Any error associated with the service resource.+ error :: Prelude.Maybe ErrorResponse,+ -- | A summary of the configuration for the Lambda endpoint type.+ lambdaEndpoint :: Prelude.Maybe LambdaEndpointSummary,+ -- | A timestamp that indicates when the service was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The name of the service.+ name :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services account ID of the service owner.+ ownerAccountId :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the service.+ serviceId :: Prelude.Maybe Prelude.Text,+ -- | The current state of the service.+ state :: Prelude.Maybe ServiceState,+ -- | The tags assigned to the service.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The summary of the configuration for the URL endpoint type.+ urlEndpoint :: Prelude.Maybe UrlEndpointSummary,+ -- | The ID of the virtual private cloud (VPC).+ vpcId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ServiceSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'serviceSummary_applicationId' - The unique identifier of the application.+--+-- 'arn', 'serviceSummary_arn' - The Amazon Resource Name (ARN) of the service.+--+-- 'createdByAccountId', 'serviceSummary_createdByAccountId' - The Amazon Web Services account ID of the service creator.+--+-- 'createdTime', 'serviceSummary_createdTime' - A timestamp that indicates when the service is created.+--+-- 'description', 'serviceSummary_description' - A description of the service.+--+-- 'endpointType', 'serviceSummary_endpointType' - The endpoint type of the service.+--+-- 'environmentId', 'serviceSummary_environmentId' - The unique identifier of the environment.+--+-- 'error', 'serviceSummary_error' - Any error associated with the service resource.+--+-- 'lambdaEndpoint', 'serviceSummary_lambdaEndpoint' - A summary of the configuration for the Lambda endpoint type.+--+-- 'lastUpdatedTime', 'serviceSummary_lastUpdatedTime' - A timestamp that indicates when the service was last updated.+--+-- 'name', 'serviceSummary_name' - The name of the service.+--+-- 'ownerAccountId', 'serviceSummary_ownerAccountId' - The Amazon Web Services account ID of the service owner.+--+-- 'serviceId', 'serviceSummary_serviceId' - The unique identifier of the service.+--+-- 'state', 'serviceSummary_state' - The current state of the service.+--+-- 'tags', 'serviceSummary_tags' - The tags assigned to the service.+--+-- 'urlEndpoint', 'serviceSummary_urlEndpoint' - The summary of the configuration for the URL endpoint type.+--+-- 'vpcId', 'serviceSummary_vpcId' - The ID of the virtual private cloud (VPC).+newServiceSummary ::+ ServiceSummary+newServiceSummary =+ ServiceSummary'+ { applicationId = Prelude.Nothing,+ arn = Prelude.Nothing,+ createdByAccountId = Prelude.Nothing,+ createdTime = Prelude.Nothing,+ description = Prelude.Nothing,+ endpointType = Prelude.Nothing,+ environmentId = Prelude.Nothing,+ error = Prelude.Nothing,+ lambdaEndpoint = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ name = Prelude.Nothing,+ ownerAccountId = Prelude.Nothing,+ serviceId = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing,+ urlEndpoint = Prelude.Nothing,+ vpcId = Prelude.Nothing+ }++-- | The unique identifier of the application.+serviceSummary_applicationId :: Lens.Lens' ServiceSummary (Prelude.Maybe Prelude.Text)+serviceSummary_applicationId = Lens.lens (\ServiceSummary' {applicationId} -> applicationId) (\s@ServiceSummary' {} a -> s {applicationId = a} :: ServiceSummary)++-- | The Amazon Resource Name (ARN) of the service.+serviceSummary_arn :: Lens.Lens' ServiceSummary (Prelude.Maybe Prelude.Text)+serviceSummary_arn = Lens.lens (\ServiceSummary' {arn} -> arn) (\s@ServiceSummary' {} a -> s {arn = a} :: ServiceSummary)++-- | The Amazon Web Services account ID of the service creator.+serviceSummary_createdByAccountId :: Lens.Lens' ServiceSummary (Prelude.Maybe Prelude.Text)+serviceSummary_createdByAccountId = Lens.lens (\ServiceSummary' {createdByAccountId} -> createdByAccountId) (\s@ServiceSummary' {} a -> s {createdByAccountId = a} :: ServiceSummary)++-- | A timestamp that indicates when the service is created.+serviceSummary_createdTime :: Lens.Lens' ServiceSummary (Prelude.Maybe Prelude.UTCTime)+serviceSummary_createdTime = Lens.lens (\ServiceSummary' {createdTime} -> createdTime) (\s@ServiceSummary' {} a -> s {createdTime = a} :: ServiceSummary) Prelude.. Lens.mapping Data._Time++-- | A description of the service.+serviceSummary_description :: Lens.Lens' ServiceSummary (Prelude.Maybe Prelude.Text)+serviceSummary_description = Lens.lens (\ServiceSummary' {description} -> description) (\s@ServiceSummary' {} a -> s {description = a} :: ServiceSummary)++-- | The endpoint type of the service.+serviceSummary_endpointType :: Lens.Lens' ServiceSummary (Prelude.Maybe ServiceEndpointType)+serviceSummary_endpointType = Lens.lens (\ServiceSummary' {endpointType} -> endpointType) (\s@ServiceSummary' {} a -> s {endpointType = a} :: ServiceSummary)++-- | The unique identifier of the environment.+serviceSummary_environmentId :: Lens.Lens' ServiceSummary (Prelude.Maybe Prelude.Text)+serviceSummary_environmentId = Lens.lens (\ServiceSummary' {environmentId} -> environmentId) (\s@ServiceSummary' {} a -> s {environmentId = a} :: ServiceSummary)++-- | Any error associated with the service resource.+serviceSummary_error :: Lens.Lens' ServiceSummary (Prelude.Maybe ErrorResponse)+serviceSummary_error = Lens.lens (\ServiceSummary' {error} -> error) (\s@ServiceSummary' {} a -> s {error = a} :: ServiceSummary)++-- | A summary of the configuration for the Lambda endpoint type.+serviceSummary_lambdaEndpoint :: Lens.Lens' ServiceSummary (Prelude.Maybe LambdaEndpointSummary)+serviceSummary_lambdaEndpoint = Lens.lens (\ServiceSummary' {lambdaEndpoint} -> lambdaEndpoint) (\s@ServiceSummary' {} a -> s {lambdaEndpoint = a} :: ServiceSummary)++-- | A timestamp that indicates when the service was last updated.+serviceSummary_lastUpdatedTime :: Lens.Lens' ServiceSummary (Prelude.Maybe Prelude.UTCTime)+serviceSummary_lastUpdatedTime = Lens.lens (\ServiceSummary' {lastUpdatedTime} -> lastUpdatedTime) (\s@ServiceSummary' {} a -> s {lastUpdatedTime = a} :: ServiceSummary) Prelude.. Lens.mapping Data._Time++-- | The name of the service.+serviceSummary_name :: Lens.Lens' ServiceSummary (Prelude.Maybe Prelude.Text)+serviceSummary_name = Lens.lens (\ServiceSummary' {name} -> name) (\s@ServiceSummary' {} a -> s {name = a} :: ServiceSummary)++-- | The Amazon Web Services account ID of the service owner.+serviceSummary_ownerAccountId :: Lens.Lens' ServiceSummary (Prelude.Maybe Prelude.Text)+serviceSummary_ownerAccountId = Lens.lens (\ServiceSummary' {ownerAccountId} -> ownerAccountId) (\s@ServiceSummary' {} a -> s {ownerAccountId = a} :: ServiceSummary)++-- | The unique identifier of the service.+serviceSummary_serviceId :: Lens.Lens' ServiceSummary (Prelude.Maybe Prelude.Text)+serviceSummary_serviceId = Lens.lens (\ServiceSummary' {serviceId} -> serviceId) (\s@ServiceSummary' {} a -> s {serviceId = a} :: ServiceSummary)++-- | The current state of the service.+serviceSummary_state :: Lens.Lens' ServiceSummary (Prelude.Maybe ServiceState)+serviceSummary_state = Lens.lens (\ServiceSummary' {state} -> state) (\s@ServiceSummary' {} a -> s {state = a} :: ServiceSummary)++-- | The tags assigned to the service.+serviceSummary_tags :: Lens.Lens' ServiceSummary (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+serviceSummary_tags = Lens.lens (\ServiceSummary' {tags} -> tags) (\s@ServiceSummary' {} a -> s {tags = a} :: ServiceSummary) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The summary of the configuration for the URL endpoint type.+serviceSummary_urlEndpoint :: Lens.Lens' ServiceSummary (Prelude.Maybe UrlEndpointSummary)+serviceSummary_urlEndpoint = Lens.lens (\ServiceSummary' {urlEndpoint} -> urlEndpoint) (\s@ServiceSummary' {} a -> s {urlEndpoint = a} :: ServiceSummary)++-- | The ID of the virtual private cloud (VPC).+serviceSummary_vpcId :: Lens.Lens' ServiceSummary (Prelude.Maybe Prelude.Text)+serviceSummary_vpcId = Lens.lens (\ServiceSummary' {vpcId} -> vpcId) (\s@ServiceSummary' {} a -> s {vpcId = a} :: ServiceSummary)++instance Data.FromJSON ServiceSummary where+ parseJSON =+ Data.withObject+ "ServiceSummary"+ ( \x ->+ ServiceSummary'+ Prelude.<$> (x Data..:? "ApplicationId")+ Prelude.<*> (x Data..:? "Arn")+ Prelude.<*> (x Data..:? "CreatedByAccountId")+ Prelude.<*> (x Data..:? "CreatedTime")+ Prelude.<*> (x Data..:? "Description")+ Prelude.<*> (x Data..:? "EndpointType")+ Prelude.<*> (x Data..:? "EnvironmentId")+ Prelude.<*> (x Data..:? "Error")+ Prelude.<*> (x Data..:? "LambdaEndpoint")+ Prelude.<*> (x Data..:? "LastUpdatedTime")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "OwnerAccountId")+ Prelude.<*> (x Data..:? "ServiceId")+ Prelude.<*> (x Data..:? "State")+ Prelude.<*> (x Data..:? "Tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "UrlEndpoint")+ Prelude.<*> (x Data..:? "VpcId")+ )++instance Prelude.Hashable ServiceSummary where+ hashWithSalt _salt ServiceSummary' {..} =+ _salt+ `Prelude.hashWithSalt` applicationId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdByAccountId+ `Prelude.hashWithSalt` createdTime+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` endpointType+ `Prelude.hashWithSalt` environmentId+ `Prelude.hashWithSalt` error+ `Prelude.hashWithSalt` lambdaEndpoint+ `Prelude.hashWithSalt` lastUpdatedTime+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` ownerAccountId+ `Prelude.hashWithSalt` serviceId+ `Prelude.hashWithSalt` state+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` urlEndpoint+ `Prelude.hashWithSalt` vpcId++instance Prelude.NFData ServiceSummary where+ rnf ServiceSummary' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdByAccountId+ `Prelude.seq` Prelude.rnf createdTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf endpointType+ `Prelude.seq` Prelude.rnf environmentId+ `Prelude.seq` Prelude.rnf error+ `Prelude.seq` Prelude.rnf lambdaEndpoint+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf ownerAccountId+ `Prelude.seq` Prelude.rnf serviceId+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf urlEndpoint+ `Prelude.seq` Prelude.rnf vpcId
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/UriPathRouteInput.hs view
@@ -0,0 +1,146 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.UriPathRouteInput+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.UriPathRouteInput where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types.HttpMethod+import Amazonka.MigrationHubReFactorSpaces.Types.RouteActivationState+import qualified Amazonka.Prelude as Prelude++-- | The configuration for the URI path route type.+--+-- /See:/ 'newUriPathRouteInput' smart constructor.+data UriPathRouteInput = UriPathRouteInput'+ { -- | Indicates whether to match all subpaths of the given source path. If+ -- this value is @false@, requests must match the source path exactly+ -- before they are forwarded to this route\'s service.+ includeChildPaths :: Prelude.Maybe Prelude.Bool,+ -- | A list of HTTP methods to match. An empty list matches all values. If a+ -- method is present, only HTTP requests using that method are forwarded to+ -- this route’s service.+ methods :: Prelude.Maybe [HttpMethod],+ -- | If set to @ACTIVE@, traffic is forwarded to this route’s service after+ -- the route is created.+ activationState :: RouteActivationState,+ -- | The path to use to match traffic. Paths must start with @\/@ and are+ -- relative to the base of the application.+ sourcePath :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UriPathRouteInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'includeChildPaths', 'uriPathRouteInput_includeChildPaths' - Indicates whether to match all subpaths of the given source path. If+-- this value is @false@, requests must match the source path exactly+-- before they are forwarded to this route\'s service.+--+-- 'methods', 'uriPathRouteInput_methods' - A list of HTTP methods to match. An empty list matches all values. If a+-- method is present, only HTTP requests using that method are forwarded to+-- this route’s service.+--+-- 'activationState', 'uriPathRouteInput_activationState' - If set to @ACTIVE@, traffic is forwarded to this route’s service after+-- the route is created.+--+-- 'sourcePath', 'uriPathRouteInput_sourcePath' - The path to use to match traffic. Paths must start with @\/@ and are+-- relative to the base of the application.+newUriPathRouteInput ::+ -- | 'activationState'+ RouteActivationState ->+ -- | 'sourcePath'+ Prelude.Text ->+ UriPathRouteInput+newUriPathRouteInput pActivationState_ pSourcePath_ =+ UriPathRouteInput'+ { includeChildPaths =+ Prelude.Nothing,+ methods = Prelude.Nothing,+ activationState = pActivationState_,+ sourcePath = pSourcePath_+ }++-- | Indicates whether to match all subpaths of the given source path. If+-- this value is @false@, requests must match the source path exactly+-- before they are forwarded to this route\'s service.+uriPathRouteInput_includeChildPaths :: Lens.Lens' UriPathRouteInput (Prelude.Maybe Prelude.Bool)+uriPathRouteInput_includeChildPaths = Lens.lens (\UriPathRouteInput' {includeChildPaths} -> includeChildPaths) (\s@UriPathRouteInput' {} a -> s {includeChildPaths = a} :: UriPathRouteInput)++-- | A list of HTTP methods to match. An empty list matches all values. If a+-- method is present, only HTTP requests using that method are forwarded to+-- this route’s service.+uriPathRouteInput_methods :: Lens.Lens' UriPathRouteInput (Prelude.Maybe [HttpMethod])+uriPathRouteInput_methods = Lens.lens (\UriPathRouteInput' {methods} -> methods) (\s@UriPathRouteInput' {} a -> s {methods = a} :: UriPathRouteInput) Prelude.. Lens.mapping Lens.coerced++-- | If set to @ACTIVE@, traffic is forwarded to this route’s service after+-- the route is created.+uriPathRouteInput_activationState :: Lens.Lens' UriPathRouteInput RouteActivationState+uriPathRouteInput_activationState = Lens.lens (\UriPathRouteInput' {activationState} -> activationState) (\s@UriPathRouteInput' {} a -> s {activationState = a} :: UriPathRouteInput)++-- | The path to use to match traffic. Paths must start with @\/@ and are+-- relative to the base of the application.+uriPathRouteInput_sourcePath :: Lens.Lens' UriPathRouteInput Prelude.Text+uriPathRouteInput_sourcePath = Lens.lens (\UriPathRouteInput' {sourcePath} -> sourcePath) (\s@UriPathRouteInput' {} a -> s {sourcePath = a} :: UriPathRouteInput)++instance Data.FromJSON UriPathRouteInput where+ parseJSON =+ Data.withObject+ "UriPathRouteInput"+ ( \x ->+ UriPathRouteInput'+ Prelude.<$> (x Data..:? "IncludeChildPaths")+ Prelude.<*> (x Data..:? "Methods" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "ActivationState")+ Prelude.<*> (x Data..: "SourcePath")+ )++instance Prelude.Hashable UriPathRouteInput where+ hashWithSalt _salt UriPathRouteInput' {..} =+ _salt+ `Prelude.hashWithSalt` includeChildPaths+ `Prelude.hashWithSalt` methods+ `Prelude.hashWithSalt` activationState+ `Prelude.hashWithSalt` sourcePath++instance Prelude.NFData UriPathRouteInput where+ rnf UriPathRouteInput' {..} =+ Prelude.rnf includeChildPaths+ `Prelude.seq` Prelude.rnf methods+ `Prelude.seq` Prelude.rnf activationState+ `Prelude.seq` Prelude.rnf sourcePath++instance Data.ToJSON UriPathRouteInput where+ toJSON UriPathRouteInput' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("IncludeChildPaths" Data..=)+ Prelude.<$> includeChildPaths,+ ("Methods" Data..=) Prelude.<$> methods,+ Prelude.Just+ ("ActivationState" Data..= activationState),+ Prelude.Just ("SourcePath" Data..= sourcePath)+ ]+ )
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/UrlEndpointConfig.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointConfig+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointConfig 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++-- | The configuration for the URL endpoint type.+--+-- /See:/ 'newUrlEndpointConfig' smart constructor.+data UrlEndpointConfig = UrlEndpointConfig'+ { -- | The health check URL of the URL endpoint type.+ healthUrl :: Prelude.Maybe Prelude.Text,+ -- | The HTTP URL endpoint.+ url :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UrlEndpointConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'healthUrl', 'urlEndpointConfig_healthUrl' - The health check URL of the URL endpoint type.+--+-- 'url', 'urlEndpointConfig_url' - The HTTP URL endpoint.+newUrlEndpointConfig ::+ UrlEndpointConfig+newUrlEndpointConfig =+ UrlEndpointConfig'+ { healthUrl = Prelude.Nothing,+ url = Prelude.Nothing+ }++-- | The health check URL of the URL endpoint type.+urlEndpointConfig_healthUrl :: Lens.Lens' UrlEndpointConfig (Prelude.Maybe Prelude.Text)+urlEndpointConfig_healthUrl = Lens.lens (\UrlEndpointConfig' {healthUrl} -> healthUrl) (\s@UrlEndpointConfig' {} a -> s {healthUrl = a} :: UrlEndpointConfig)++-- | The HTTP URL endpoint.+urlEndpointConfig_url :: Lens.Lens' UrlEndpointConfig (Prelude.Maybe Prelude.Text)+urlEndpointConfig_url = Lens.lens (\UrlEndpointConfig' {url} -> url) (\s@UrlEndpointConfig' {} a -> s {url = a} :: UrlEndpointConfig)++instance Data.FromJSON UrlEndpointConfig where+ parseJSON =+ Data.withObject+ "UrlEndpointConfig"+ ( \x ->+ UrlEndpointConfig'+ Prelude.<$> (x Data..:? "HealthUrl")+ Prelude.<*> (x Data..:? "Url")+ )++instance Prelude.Hashable UrlEndpointConfig where+ hashWithSalt _salt UrlEndpointConfig' {..} =+ _salt+ `Prelude.hashWithSalt` healthUrl+ `Prelude.hashWithSalt` url++instance Prelude.NFData UrlEndpointConfig where+ rnf UrlEndpointConfig' {..} =+ Prelude.rnf healthUrl `Prelude.seq` Prelude.rnf url
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/UrlEndpointInput.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointInput+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointInput 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++-- | The configuration for the URL endpoint type.+--+-- /See:/ 'newUrlEndpointInput' smart constructor.+data UrlEndpointInput = UrlEndpointInput'+ { -- | The health check URL of the URL endpoint type. If the URL is a public+ -- endpoint, the @HealthUrl@ must also be a public endpoint. If the URL is+ -- a private endpoint inside a virtual private cloud (VPC), the health URL+ -- must also be a private endpoint, and the host must be the same as the+ -- URL.+ healthUrl :: Prelude.Maybe Prelude.Text,+ -- | The URL to route traffic to. The URL must be an+ -- <https://datatracker.ietf.org/doc/html/rfc3986 rfc3986-formatted URL>.+ -- If the host is a domain name, the name must be resolvable over the+ -- public internet. If the scheme is @https@, the top level domain of the+ -- host must be listed in the+ -- <https://www.iana.org/domains/root/db IANA root zone database>.+ url :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UrlEndpointInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'healthUrl', 'urlEndpointInput_healthUrl' - The health check URL of the URL endpoint type. If the URL is a public+-- endpoint, the @HealthUrl@ must also be a public endpoint. If the URL is+-- a private endpoint inside a virtual private cloud (VPC), the health URL+-- must also be a private endpoint, and the host must be the same as the+-- URL.+--+-- 'url', 'urlEndpointInput_url' - The URL to route traffic to. The URL must be an+-- <https://datatracker.ietf.org/doc/html/rfc3986 rfc3986-formatted URL>.+-- If the host is a domain name, the name must be resolvable over the+-- public internet. If the scheme is @https@, the top level domain of the+-- host must be listed in the+-- <https://www.iana.org/domains/root/db IANA root zone database>.+newUrlEndpointInput ::+ -- | 'url'+ Prelude.Text ->+ UrlEndpointInput+newUrlEndpointInput pUrl_ =+ UrlEndpointInput'+ { healthUrl = Prelude.Nothing,+ url = pUrl_+ }++-- | The health check URL of the URL endpoint type. If the URL is a public+-- endpoint, the @HealthUrl@ must also be a public endpoint. If the URL is+-- a private endpoint inside a virtual private cloud (VPC), the health URL+-- must also be a private endpoint, and the host must be the same as the+-- URL.+urlEndpointInput_healthUrl :: Lens.Lens' UrlEndpointInput (Prelude.Maybe Prelude.Text)+urlEndpointInput_healthUrl = Lens.lens (\UrlEndpointInput' {healthUrl} -> healthUrl) (\s@UrlEndpointInput' {} a -> s {healthUrl = a} :: UrlEndpointInput)++-- | The URL to route traffic to. The URL must be an+-- <https://datatracker.ietf.org/doc/html/rfc3986 rfc3986-formatted URL>.+-- If the host is a domain name, the name must be resolvable over the+-- public internet. If the scheme is @https@, the top level domain of the+-- host must be listed in the+-- <https://www.iana.org/domains/root/db IANA root zone database>.+urlEndpointInput_url :: Lens.Lens' UrlEndpointInput Prelude.Text+urlEndpointInput_url = Lens.lens (\UrlEndpointInput' {url} -> url) (\s@UrlEndpointInput' {} a -> s {url = a} :: UrlEndpointInput)++instance Data.FromJSON UrlEndpointInput where+ parseJSON =+ Data.withObject+ "UrlEndpointInput"+ ( \x ->+ UrlEndpointInput'+ Prelude.<$> (x Data..:? "HealthUrl")+ Prelude.<*> (x Data..: "Url")+ )++instance Prelude.Hashable UrlEndpointInput where+ hashWithSalt _salt UrlEndpointInput' {..} =+ _salt+ `Prelude.hashWithSalt` healthUrl+ `Prelude.hashWithSalt` url++instance Prelude.NFData UrlEndpointInput where+ rnf UrlEndpointInput' {..} =+ Prelude.rnf healthUrl `Prelude.seq` Prelude.rnf url++instance Data.ToJSON UrlEndpointInput where+ toJSON UrlEndpointInput' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("HealthUrl" Data..=) Prelude.<$> healthUrl,+ Prelude.Just ("Url" Data..= url)+ ]+ )
+ gen/Amazonka/MigrationHubReFactorSpaces/Types/UrlEndpointSummary.hs view
@@ -0,0 +1,110 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Types.UrlEndpointSummary 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++-- | The summary of the configuration for the URL endpoint type.+--+-- /See:/ 'newUrlEndpointSummary' smart constructor.+data UrlEndpointSummary = UrlEndpointSummary'+ { -- | The health check URL of the URL endpoint type. If the URL is a public+ -- endpoint, the @HealthUrl@ must also be a public endpoint. If the URL is+ -- a private endpoint inside a virtual private cloud (VPC), the health URL+ -- must also be a private endpoint, and the host must be the same as the+ -- URL.+ healthUrl :: Prelude.Maybe Prelude.Text,+ -- | The URL to route traffic to. The URL must be an+ -- <https://datatracker.ietf.org/doc/html/rfc3986 rfc3986-formatted URL>.+ -- If the host is a domain name, the name must be resolvable over the+ -- public internet. If the scheme is @https@, the top level domain of the+ -- host must be listed in the+ -- <https://www.iana.org/domains/root/db IANA root zone database>.+ url :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UrlEndpointSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'healthUrl', 'urlEndpointSummary_healthUrl' - The health check URL of the URL endpoint type. If the URL is a public+-- endpoint, the @HealthUrl@ must also be a public endpoint. If the URL is+-- a private endpoint inside a virtual private cloud (VPC), the health URL+-- must also be a private endpoint, and the host must be the same as the+-- URL.+--+-- 'url', 'urlEndpointSummary_url' - The URL to route traffic to. The URL must be an+-- <https://datatracker.ietf.org/doc/html/rfc3986 rfc3986-formatted URL>.+-- If the host is a domain name, the name must be resolvable over the+-- public internet. If the scheme is @https@, the top level domain of the+-- host must be listed in the+-- <https://www.iana.org/domains/root/db IANA root zone database>.+newUrlEndpointSummary ::+ UrlEndpointSummary+newUrlEndpointSummary =+ UrlEndpointSummary'+ { healthUrl = Prelude.Nothing,+ url = Prelude.Nothing+ }++-- | The health check URL of the URL endpoint type. If the URL is a public+-- endpoint, the @HealthUrl@ must also be a public endpoint. If the URL is+-- a private endpoint inside a virtual private cloud (VPC), the health URL+-- must also be a private endpoint, and the host must be the same as the+-- URL.+urlEndpointSummary_healthUrl :: Lens.Lens' UrlEndpointSummary (Prelude.Maybe Prelude.Text)+urlEndpointSummary_healthUrl = Lens.lens (\UrlEndpointSummary' {healthUrl} -> healthUrl) (\s@UrlEndpointSummary' {} a -> s {healthUrl = a} :: UrlEndpointSummary)++-- | The URL to route traffic to. The URL must be an+-- <https://datatracker.ietf.org/doc/html/rfc3986 rfc3986-formatted URL>.+-- If the host is a domain name, the name must be resolvable over the+-- public internet. If the scheme is @https@, the top level domain of the+-- host must be listed in the+-- <https://www.iana.org/domains/root/db IANA root zone database>.+urlEndpointSummary_url :: Lens.Lens' UrlEndpointSummary (Prelude.Maybe Prelude.Text)+urlEndpointSummary_url = Lens.lens (\UrlEndpointSummary' {url} -> url) (\s@UrlEndpointSummary' {} a -> s {url = a} :: UrlEndpointSummary)++instance Data.FromJSON UrlEndpointSummary where+ parseJSON =+ Data.withObject+ "UrlEndpointSummary"+ ( \x ->+ UrlEndpointSummary'+ Prelude.<$> (x Data..:? "HealthUrl")+ Prelude.<*> (x Data..:? "Url")+ )++instance Prelude.Hashable UrlEndpointSummary where+ hashWithSalt _salt UrlEndpointSummary' {..} =+ _salt+ `Prelude.hashWithSalt` healthUrl+ `Prelude.hashWithSalt` url++instance Prelude.NFData UrlEndpointSummary where+ rnf UrlEndpointSummary' {..} =+ Prelude.rnf healthUrl `Prelude.seq` Prelude.rnf url
+ gen/Amazonka/MigrationHubReFactorSpaces/UntagResource.hs view
@@ -0,0 +1,164 @@+{-# 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.MigrationHubReFactorSpaces.UntagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds to or modifies the tags of the given resource. Tags are metadata+-- which can be used to manage a resource. To untag a resource, the caller+-- account must be the same as the resource’s @OwnerAccountId@. Untagging+-- resources across accounts is not supported.+module Amazonka.MigrationHubReFactorSpaces.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_resourceArn,+ untagResource_tagKeys,++ -- * Destructuring the Response+ UntagResourceResponse (..),+ newUntagResourceResponse,++ -- * Response Lenses+ untagResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagResource' smart constructor.+data UntagResource = UntagResource'+ { -- | The Amazon Resource Name (ARN) of the resource.+ resourceArn :: Prelude.Text,+ -- | The list of keys of the tags to be removed from the resource.+ tagKeys :: Data.Sensitive [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'untagResource_resourceArn' - The Amazon Resource Name (ARN) of the resource.+--+-- 'tagKeys', 'untagResource_tagKeys' - The list of keys of the tags to be removed from the resource.+newUntagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ UntagResource+newUntagResource pResourceArn_ =+ UntagResource'+ { resourceArn = pResourceArn_,+ tagKeys = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the resource.+untagResource_resourceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceArn = Lens.lens (\UntagResource' {resourceArn} -> resourceArn) (\s@UntagResource' {} a -> s {resourceArn = a} :: UntagResource)++-- | The list of keys of the tags to be removed from the resource.+untagResource_tagKeys :: Lens.Lens' UntagResource [Prelude.Text]+untagResource_tagKeys = Lens.lens (\UntagResource' {tagKeys} -> tagKeys) (\s@UntagResource' {} a -> s {tagKeys = a} :: UntagResource) Prelude.. Data._Sensitive Prelude.. Lens.coerced++instance Core.AWSRequest UntagResource where+ type+ AWSResponse UntagResource =+ UntagResourceResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ UntagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UntagResource where+ hashWithSalt _salt UntagResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagResource where+ rnf UntagResource' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath UntagResource where+ toPath UntagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery UntagResource where+ toQuery UntagResource' {..} =+ Prelude.mconcat+ ["tagKeys" Data.=: Data.toQueryList "member" tagKeys]++-- | /See:/ 'newUntagResourceResponse' smart constructor.+data UntagResourceResponse = UntagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'untagResourceResponse_httpStatus' - The response's http status code.+newUntagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UntagResourceResponse+newUntagResourceResponse pHttpStatus_ =+ UntagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+untagResourceResponse_httpStatus :: Lens.Lens' UntagResourceResponse Prelude.Int+untagResourceResponse_httpStatus = Lens.lens (\UntagResourceResponse' {httpStatus} -> httpStatus) (\s@UntagResourceResponse' {} a -> s {httpStatus = a} :: UntagResourceResponse)++instance Prelude.NFData UntagResourceResponse where+ rnf UntagResourceResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/UpdateRoute.hs view
@@ -0,0 +1,300 @@+{-# 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.MigrationHubReFactorSpaces.UpdateRoute+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates an Amazon Web Services Migration Hub Refactor Spaces route.+module Amazonka.MigrationHubReFactorSpaces.UpdateRoute+ ( -- * Creating a Request+ UpdateRoute (..),+ newUpdateRoute,++ -- * Request Lenses+ updateRoute_activationState,+ updateRoute_applicationIdentifier,+ updateRoute_environmentIdentifier,+ updateRoute_routeIdentifier,++ -- * Destructuring the Response+ UpdateRouteResponse (..),+ newUpdateRouteResponse,++ -- * Response Lenses+ updateRouteResponse_applicationId,+ updateRouteResponse_arn,+ updateRouteResponse_lastUpdatedTime,+ updateRouteResponse_routeId,+ updateRouteResponse_serviceId,+ updateRouteResponse_state,+ updateRouteResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateRoute' smart constructor.+data UpdateRoute = UpdateRoute'+ { -- | If set to @ACTIVE@, traffic is forwarded to this route’s service after+ -- the route is updated.+ activationState :: RouteActivationState,+ -- | The ID of the application within which the route is being updated.+ applicationIdentifier :: Prelude.Text,+ -- | The ID of the environment in which the route is being updated.+ environmentIdentifier :: Prelude.Text,+ -- | The unique identifier of the route to update.+ routeIdentifier :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateRoute' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'activationState', 'updateRoute_activationState' - If set to @ACTIVE@, traffic is forwarded to this route’s service after+-- the route is updated.+--+-- 'applicationIdentifier', 'updateRoute_applicationIdentifier' - The ID of the application within which the route is being updated.+--+-- 'environmentIdentifier', 'updateRoute_environmentIdentifier' - The ID of the environment in which the route is being updated.+--+-- 'routeIdentifier', 'updateRoute_routeIdentifier' - The unique identifier of the route to update.+newUpdateRoute ::+ -- | 'activationState'+ RouteActivationState ->+ -- | 'applicationIdentifier'+ Prelude.Text ->+ -- | 'environmentIdentifier'+ Prelude.Text ->+ -- | 'routeIdentifier'+ Prelude.Text ->+ UpdateRoute+newUpdateRoute+ pActivationState_+ pApplicationIdentifier_+ pEnvironmentIdentifier_+ pRouteIdentifier_ =+ UpdateRoute'+ { activationState = pActivationState_,+ applicationIdentifier = pApplicationIdentifier_,+ environmentIdentifier = pEnvironmentIdentifier_,+ routeIdentifier = pRouteIdentifier_+ }++-- | If set to @ACTIVE@, traffic is forwarded to this route’s service after+-- the route is updated.+updateRoute_activationState :: Lens.Lens' UpdateRoute RouteActivationState+updateRoute_activationState = Lens.lens (\UpdateRoute' {activationState} -> activationState) (\s@UpdateRoute' {} a -> s {activationState = a} :: UpdateRoute)++-- | The ID of the application within which the route is being updated.+updateRoute_applicationIdentifier :: Lens.Lens' UpdateRoute Prelude.Text+updateRoute_applicationIdentifier = Lens.lens (\UpdateRoute' {applicationIdentifier} -> applicationIdentifier) (\s@UpdateRoute' {} a -> s {applicationIdentifier = a} :: UpdateRoute)++-- | The ID of the environment in which the route is being updated.+updateRoute_environmentIdentifier :: Lens.Lens' UpdateRoute Prelude.Text+updateRoute_environmentIdentifier = Lens.lens (\UpdateRoute' {environmentIdentifier} -> environmentIdentifier) (\s@UpdateRoute' {} a -> s {environmentIdentifier = a} :: UpdateRoute)++-- | The unique identifier of the route to update.+updateRoute_routeIdentifier :: Lens.Lens' UpdateRoute Prelude.Text+updateRoute_routeIdentifier = Lens.lens (\UpdateRoute' {routeIdentifier} -> routeIdentifier) (\s@UpdateRoute' {} a -> s {routeIdentifier = a} :: UpdateRoute)++instance Core.AWSRequest UpdateRoute where+ type AWSResponse UpdateRoute = UpdateRouteResponse+ request overrides =+ Request.patchJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateRouteResponse'+ Prelude.<$> (x Data..?> "ApplicationId")+ Prelude.<*> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "LastUpdatedTime")+ Prelude.<*> (x Data..?> "RouteId")+ Prelude.<*> (x Data..?> "ServiceId")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateRoute where+ hashWithSalt _salt UpdateRoute' {..} =+ _salt+ `Prelude.hashWithSalt` activationState+ `Prelude.hashWithSalt` applicationIdentifier+ `Prelude.hashWithSalt` environmentIdentifier+ `Prelude.hashWithSalt` routeIdentifier++instance Prelude.NFData UpdateRoute where+ rnf UpdateRoute' {..} =+ Prelude.rnf activationState+ `Prelude.seq` Prelude.rnf applicationIdentifier+ `Prelude.seq` Prelude.rnf environmentIdentifier+ `Prelude.seq` Prelude.rnf routeIdentifier++instance Data.ToHeaders UpdateRoute where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateRoute where+ toJSON UpdateRoute' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("ActivationState" Data..= activationState)+ ]+ )++instance Data.ToPath UpdateRoute where+ toPath UpdateRoute' {..} =+ Prelude.mconcat+ [ "/environments/",+ Data.toBS environmentIdentifier,+ "/applications/",+ Data.toBS applicationIdentifier,+ "/routes/",+ Data.toBS routeIdentifier+ ]++instance Data.ToQuery UpdateRoute where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateRouteResponse' smart constructor.+data UpdateRouteResponse = UpdateRouteResponse'+ { -- | The ID of the application in which the route is being updated.+ applicationId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the route. The format for this ARN is+ -- @arn:aws:refactor-spaces:@/@region@/@:@/@account-id@/@:@/@resource-type\/resource-id@/@ @.+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ arn :: Prelude.Maybe Prelude.Text,+ -- | A timestamp that indicates when the route was last updated.+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ -- | The unique identifier of the route.+ routeId :: Prelude.Maybe Prelude.Text,+ -- | The ID of service in which the route was created. Traffic that matches+ -- this route is forwarded to this service.+ serviceId :: Prelude.Maybe Prelude.Text,+ -- | The current state of the route.+ state :: Prelude.Maybe RouteState,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateRouteResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'updateRouteResponse_applicationId' - The ID of the application in which the route is being updated.+--+-- 'arn', 'updateRouteResponse_arn' - The Amazon Resource Name (ARN) of the route. The format for this ARN is+-- @arn:aws:refactor-spaces:@/@region@/@:@/@account-id@/@:@/@resource-type\/resource-id@/@ @.+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'lastUpdatedTime', 'updateRouteResponse_lastUpdatedTime' - A timestamp that indicates when the route was last updated.+--+-- 'routeId', 'updateRouteResponse_routeId' - The unique identifier of the route.+--+-- 'serviceId', 'updateRouteResponse_serviceId' - The ID of service in which the route was created. Traffic that matches+-- this route is forwarded to this service.+--+-- 'state', 'updateRouteResponse_state' - The current state of the route.+--+-- 'httpStatus', 'updateRouteResponse_httpStatus' - The response's http status code.+newUpdateRouteResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateRouteResponse+newUpdateRouteResponse pHttpStatus_ =+ UpdateRouteResponse'+ { applicationId =+ Prelude.Nothing,+ arn = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ routeId = Prelude.Nothing,+ serviceId = Prelude.Nothing,+ state = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ID of the application in which the route is being updated.+updateRouteResponse_applicationId :: Lens.Lens' UpdateRouteResponse (Prelude.Maybe Prelude.Text)+updateRouteResponse_applicationId = Lens.lens (\UpdateRouteResponse' {applicationId} -> applicationId) (\s@UpdateRouteResponse' {} a -> s {applicationId = a} :: UpdateRouteResponse)++-- | The Amazon Resource Name (ARN) of the route. The format for this ARN is+-- @arn:aws:refactor-spaces:@/@region@/@:@/@account-id@/@:@/@resource-type\/resource-id@/@ @.+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+updateRouteResponse_arn :: Lens.Lens' UpdateRouteResponse (Prelude.Maybe Prelude.Text)+updateRouteResponse_arn = Lens.lens (\UpdateRouteResponse' {arn} -> arn) (\s@UpdateRouteResponse' {} a -> s {arn = a} :: UpdateRouteResponse)++-- | A timestamp that indicates when the route was last updated.+updateRouteResponse_lastUpdatedTime :: Lens.Lens' UpdateRouteResponse (Prelude.Maybe Prelude.UTCTime)+updateRouteResponse_lastUpdatedTime = Lens.lens (\UpdateRouteResponse' {lastUpdatedTime} -> lastUpdatedTime) (\s@UpdateRouteResponse' {} a -> s {lastUpdatedTime = a} :: UpdateRouteResponse) Prelude.. Lens.mapping Data._Time++-- | The unique identifier of the route.+updateRouteResponse_routeId :: Lens.Lens' UpdateRouteResponse (Prelude.Maybe Prelude.Text)+updateRouteResponse_routeId = Lens.lens (\UpdateRouteResponse' {routeId} -> routeId) (\s@UpdateRouteResponse' {} a -> s {routeId = a} :: UpdateRouteResponse)++-- | The ID of service in which the route was created. Traffic that matches+-- this route is forwarded to this service.+updateRouteResponse_serviceId :: Lens.Lens' UpdateRouteResponse (Prelude.Maybe Prelude.Text)+updateRouteResponse_serviceId = Lens.lens (\UpdateRouteResponse' {serviceId} -> serviceId) (\s@UpdateRouteResponse' {} a -> s {serviceId = a} :: UpdateRouteResponse)++-- | The current state of the route.+updateRouteResponse_state :: Lens.Lens' UpdateRouteResponse (Prelude.Maybe RouteState)+updateRouteResponse_state = Lens.lens (\UpdateRouteResponse' {state} -> state) (\s@UpdateRouteResponse' {} a -> s {state = a} :: UpdateRouteResponse)++-- | The response's http status code.+updateRouteResponse_httpStatus :: Lens.Lens' UpdateRouteResponse Prelude.Int+updateRouteResponse_httpStatus = Lens.lens (\UpdateRouteResponse' {httpStatus} -> httpStatus) (\s@UpdateRouteResponse' {} a -> s {httpStatus = a} :: UpdateRouteResponse)++instance Prelude.NFData UpdateRouteResponse where+ rnf UpdateRouteResponse' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf routeId+ `Prelude.seq` Prelude.rnf serviceId+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MigrationHubReFactorSpaces/Waiters.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MigrationHubReFactorSpaces.Waiters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.MigrationHubReFactorSpaces.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MigrationHubReFactorSpaces.Lens+import Amazonka.MigrationHubReFactorSpaces.Types+import qualified Amazonka.Prelude as Prelude
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Main (main) where++import Test.Amazonka.MigrationHubReFactorSpaces+import Test.Amazonka.MigrationHubReFactorSpaces.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "MigrationHubReFactorSpaces"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/MigrationHubReFactorSpaces.hs view
@@ -0,0 +1,518 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Test.Amazonka.Gen.MigrationHubReFactorSpaces+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.Gen.MigrationHubReFactorSpaces where++import Amazonka.MigrationHubReFactorSpaces+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.MigrationHubReFactorSpaces.Internal+import Test.Amazonka.Prelude+import Test.Tasty++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ requestCreateApplication $+-- newCreateApplication+--+-- , requestCreateEnvironment $+-- newCreateEnvironment+--+-- , requestCreateRoute $+-- newCreateRoute+--+-- , requestCreateService $+-- newCreateService+--+-- , requestDeleteApplication $+-- newDeleteApplication+--+-- , requestDeleteEnvironment $+-- newDeleteEnvironment+--+-- , requestDeleteResourcePolicy $+-- newDeleteResourcePolicy+--+-- , requestDeleteRoute $+-- newDeleteRoute+--+-- , requestDeleteService $+-- newDeleteService+--+-- , requestGetApplication $+-- newGetApplication+--+-- , requestGetEnvironment $+-- newGetEnvironment+--+-- , requestGetResourcePolicy $+-- newGetResourcePolicy+--+-- , requestGetRoute $+-- newGetRoute+--+-- , requestGetService $+-- newGetService+--+-- , requestListApplications $+-- newListApplications+--+-- , requestListEnvironmentVpcs $+-- newListEnvironmentVpcs+--+-- , requestListEnvironments $+-- newListEnvironments+--+-- , requestListRoutes $+-- newListRoutes+--+-- , requestListServices $+-- newListServices+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestPutResourcePolicy $+-- newPutResourcePolicy+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdateRoute $+-- newUpdateRoute+--+-- ]++-- , testGroup "response"+-- [ responseCreateApplication $+-- newCreateApplicationResponse+--+-- , responseCreateEnvironment $+-- newCreateEnvironmentResponse+--+-- , responseCreateRoute $+-- newCreateRouteResponse+--+-- , responseCreateService $+-- newCreateServiceResponse+--+-- , responseDeleteApplication $+-- newDeleteApplicationResponse+--+-- , responseDeleteEnvironment $+-- newDeleteEnvironmentResponse+--+-- , responseDeleteResourcePolicy $+-- newDeleteResourcePolicyResponse+--+-- , responseDeleteRoute $+-- newDeleteRouteResponse+--+-- , responseDeleteService $+-- newDeleteServiceResponse+--+-- , responseGetApplication $+-- newGetApplicationResponse+--+-- , responseGetEnvironment $+-- newGetEnvironmentResponse+--+-- , responseGetResourcePolicy $+-- newGetResourcePolicyResponse+--+-- , responseGetRoute $+-- newGetRouteResponse+--+-- , responseGetService $+-- newGetServiceResponse+--+-- , responseListApplications $+-- newListApplicationsResponse+--+-- , responseListEnvironmentVpcs $+-- newListEnvironmentVpcsResponse+--+-- , responseListEnvironments $+-- newListEnvironmentsResponse+--+-- , responseListRoutes $+-- newListRoutesResponse+--+-- , responseListServices $+-- newListServicesResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responsePutResourcePolicy $+-- newPutResourcePolicyResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdateRoute $+-- newUpdateRouteResponse+--+-- ]+-- ]++-- Requests++requestCreateApplication :: CreateApplication -> TestTree+requestCreateApplication =+ req+ "CreateApplication"+ "fixture/CreateApplication.yaml"++requestCreateEnvironment :: CreateEnvironment -> TestTree+requestCreateEnvironment =+ req+ "CreateEnvironment"+ "fixture/CreateEnvironment.yaml"++requestCreateRoute :: CreateRoute -> TestTree+requestCreateRoute =+ req+ "CreateRoute"+ "fixture/CreateRoute.yaml"++requestCreateService :: CreateService -> TestTree+requestCreateService =+ req+ "CreateService"+ "fixture/CreateService.yaml"++requestDeleteApplication :: DeleteApplication -> TestTree+requestDeleteApplication =+ req+ "DeleteApplication"+ "fixture/DeleteApplication.yaml"++requestDeleteEnvironment :: DeleteEnvironment -> TestTree+requestDeleteEnvironment =+ req+ "DeleteEnvironment"+ "fixture/DeleteEnvironment.yaml"++requestDeleteResourcePolicy :: DeleteResourcePolicy -> TestTree+requestDeleteResourcePolicy =+ req+ "DeleteResourcePolicy"+ "fixture/DeleteResourcePolicy.yaml"++requestDeleteRoute :: DeleteRoute -> TestTree+requestDeleteRoute =+ req+ "DeleteRoute"+ "fixture/DeleteRoute.yaml"++requestDeleteService :: DeleteService -> TestTree+requestDeleteService =+ req+ "DeleteService"+ "fixture/DeleteService.yaml"++requestGetApplication :: GetApplication -> TestTree+requestGetApplication =+ req+ "GetApplication"+ "fixture/GetApplication.yaml"++requestGetEnvironment :: GetEnvironment -> TestTree+requestGetEnvironment =+ req+ "GetEnvironment"+ "fixture/GetEnvironment.yaml"++requestGetResourcePolicy :: GetResourcePolicy -> TestTree+requestGetResourcePolicy =+ req+ "GetResourcePolicy"+ "fixture/GetResourcePolicy.yaml"++requestGetRoute :: GetRoute -> TestTree+requestGetRoute =+ req+ "GetRoute"+ "fixture/GetRoute.yaml"++requestGetService :: GetService -> TestTree+requestGetService =+ req+ "GetService"+ "fixture/GetService.yaml"++requestListApplications :: ListApplications -> TestTree+requestListApplications =+ req+ "ListApplications"+ "fixture/ListApplications.yaml"++requestListEnvironmentVpcs :: ListEnvironmentVpcs -> TestTree+requestListEnvironmentVpcs =+ req+ "ListEnvironmentVpcs"+ "fixture/ListEnvironmentVpcs.yaml"++requestListEnvironments :: ListEnvironments -> TestTree+requestListEnvironments =+ req+ "ListEnvironments"+ "fixture/ListEnvironments.yaml"++requestListRoutes :: ListRoutes -> TestTree+requestListRoutes =+ req+ "ListRoutes"+ "fixture/ListRoutes.yaml"++requestListServices :: ListServices -> TestTree+requestListServices =+ req+ "ListServices"+ "fixture/ListServices.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestPutResourcePolicy :: PutResourcePolicy -> TestTree+requestPutResourcePolicy =+ req+ "PutResourcePolicy"+ "fixture/PutResourcePolicy.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdateRoute :: UpdateRoute -> TestTree+requestUpdateRoute =+ req+ "UpdateRoute"+ "fixture/UpdateRoute.yaml"++-- Responses++responseCreateApplication :: CreateApplicationResponse -> TestTree+responseCreateApplication =+ res+ "CreateApplicationResponse"+ "fixture/CreateApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateApplication)++responseCreateEnvironment :: CreateEnvironmentResponse -> TestTree+responseCreateEnvironment =+ res+ "CreateEnvironmentResponse"+ "fixture/CreateEnvironmentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateEnvironment)++responseCreateRoute :: CreateRouteResponse -> TestTree+responseCreateRoute =+ res+ "CreateRouteResponse"+ "fixture/CreateRouteResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateRoute)++responseCreateService :: CreateServiceResponse -> TestTree+responseCreateService =+ res+ "CreateServiceResponse"+ "fixture/CreateServiceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateService)++responseDeleteApplication :: DeleteApplicationResponse -> TestTree+responseDeleteApplication =+ res+ "DeleteApplicationResponse"+ "fixture/DeleteApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteApplication)++responseDeleteEnvironment :: DeleteEnvironmentResponse -> TestTree+responseDeleteEnvironment =+ res+ "DeleteEnvironmentResponse"+ "fixture/DeleteEnvironmentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteEnvironment)++responseDeleteResourcePolicy :: DeleteResourcePolicyResponse -> TestTree+responseDeleteResourcePolicy =+ res+ "DeleteResourcePolicyResponse"+ "fixture/DeleteResourcePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteResourcePolicy)++responseDeleteRoute :: DeleteRouteResponse -> TestTree+responseDeleteRoute =+ res+ "DeleteRouteResponse"+ "fixture/DeleteRouteResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteRoute)++responseDeleteService :: DeleteServiceResponse -> TestTree+responseDeleteService =+ res+ "DeleteServiceResponse"+ "fixture/DeleteServiceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteService)++responseGetApplication :: GetApplicationResponse -> TestTree+responseGetApplication =+ res+ "GetApplicationResponse"+ "fixture/GetApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetApplication)++responseGetEnvironment :: GetEnvironmentResponse -> TestTree+responseGetEnvironment =+ res+ "GetEnvironmentResponse"+ "fixture/GetEnvironmentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetEnvironment)++responseGetResourcePolicy :: GetResourcePolicyResponse -> TestTree+responseGetResourcePolicy =+ res+ "GetResourcePolicyResponse"+ "fixture/GetResourcePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetResourcePolicy)++responseGetRoute :: GetRouteResponse -> TestTree+responseGetRoute =+ res+ "GetRouteResponse"+ "fixture/GetRouteResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetRoute)++responseGetService :: GetServiceResponse -> TestTree+responseGetService =+ res+ "GetServiceResponse"+ "fixture/GetServiceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetService)++responseListApplications :: ListApplicationsResponse -> TestTree+responseListApplications =+ res+ "ListApplicationsResponse"+ "fixture/ListApplicationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListApplications)++responseListEnvironmentVpcs :: ListEnvironmentVpcsResponse -> TestTree+responseListEnvironmentVpcs =+ res+ "ListEnvironmentVpcsResponse"+ "fixture/ListEnvironmentVpcsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListEnvironmentVpcs)++responseListEnvironments :: ListEnvironmentsResponse -> TestTree+responseListEnvironments =+ res+ "ListEnvironmentsResponse"+ "fixture/ListEnvironmentsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListEnvironments)++responseListRoutes :: ListRoutesResponse -> TestTree+responseListRoutes =+ res+ "ListRoutesResponse"+ "fixture/ListRoutesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListRoutes)++responseListServices :: ListServicesResponse -> TestTree+responseListServices =+ res+ "ListServicesResponse"+ "fixture/ListServicesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListServices)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responsePutResourcePolicy :: PutResourcePolicyResponse -> TestTree+responsePutResourcePolicy =+ res+ "PutResourcePolicyResponse"+ "fixture/PutResourcePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutResourcePolicy)++responseTagResource :: TagResourceResponse -> TestTree+responseTagResource =+ res+ "TagResourceResponse"+ "fixture/TagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagResource)++responseUntagResource :: UntagResourceResponse -> TestTree+responseUntagResource =+ res+ "UntagResourceResponse"+ "fixture/UntagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagResource)++responseUpdateRoute :: UpdateRouteResponse -> TestTree+responseUpdateRoute =+ res+ "UpdateRouteResponse"+ "fixture/UpdateRouteResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateRoute)
+ test/Test/Amazonka/MigrationHubReFactorSpaces.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.MigrationHubReFactorSpaces+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.MigrationHubReFactorSpaces+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/MigrationHubReFactorSpaces/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.MigrationHubReFactorSpaces.Internal+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.MigrationHubReFactorSpaces.Internal where